[clang] [clang][bytecode] Use tailcalls via `[[clang::musttail]]` (PR #173756)

Martin Storsjö via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 24 05:16:01 PDT 2026


mstorsjo wrote:

FWIW, I see that this was reverted already, but for the future: This produced warnings when building for i386 - reproducible like this:
```c++
#if __has_cpp_attribute(clang::preserve_none)
#define PRESERVE_NONE [[clang::preserve_none]]
#else
#define PRESERVE_NONE
#endif

PRESERVE_NONE void func(void) {
}
```
```console
$ clang -target i686-linux-gnu -c preserve-none.cpp 
preserve-none.cpp:7:1: warning: 'clang::preserve_none' calling convention is not
      supported for this target [-Wignored-attributes]
    7 | PRESERVE_NONE void func(void) {
      | ^
preserve-none.cpp:2:25: note: expanded from macro 'PRESERVE_NONE'
    2 | #define PRESERVE_NONE [[clang::preserve_none]]
      |                         ^
1 warning generated.
```
This warning seems to be produced for any `i386` target.

https://github.com/llvm/llvm-project/pull/173756


More information about the cfe-commits mailing list