CUDA breaks CCTK_BUILTIN_UNREACHABLE

Issue #1634 closed
Steven R. Brandt created an issue

Code containing CCTK_BUILTIN_UNREACHABLE does not compile with CUDA. In fact, there seems to be problems with calling abort() from CUDA as well. The attached patch allows compilation to proceed, but I suspect it will be hated.

Keyword:

Comments (6)

  1. Erik Schnetter
    • removed comment

    (1) In the long run, CUDA should become its own language, and should stop pretending to be C or C++. In the short run, testing CUDACC is fine.

    (2) Isn't CUDA like C++? If so, do you need to change the behaviour of C code?

    (3) If asm("trap;") works always, then the macro should be always defined, and not only if C++ supports it.

  2. Steven R. Brandt reporter
    • removed comment

    So, in answer to (1). I'm sorry for what CUDA is doing. :)

    In answer to (3), I realized I had that wrong shortly after I submitted the patch. The new patch corrects both (2) and (3).

  3. Log in to comment