Example: ```s .text start: nop end: .if (end - start) == 0 .err .endif ``` compiles when saved as a `.s` file. But when the same is put into a `.c` file as: ```c __asm( ".text\n" "start:\n" " nop\n" "end:\n" ".if (end - start) == 0\n" ".err\n" ".endif\n" ); ``` it fails with `error: expected absolute expression`. GCC succeeds with both examples. https://github.com/llvm/llvm-project/issues/53728 is probably related.