The Nvidia compilers do not produce separate lines for each asm
use.
The error can be easily reproduced using just a single two line source code test.c
:
__asm__(".symver foo,foo@VER_1");
__asm__(".symver bar,bar@VER_2");
$ nvc -S test.c
:1:33: error: unknown token in expression
.symver foo,foo@VER_1.symver bar,bar@VER_2
The same source code compiles fine with gcc/clang. The workaround it to add a new line in each of the `__asm__` declarations