================ @@ -0,0 +1,47 @@ +// RUN: %clang_cc1 -triple %itanium_abi_triple -Wunused -x c -verify %s +// RUN: %clang_cc1 -triple %itanium_abi_triple -Wunused -x c++ -verify=expected,cxx %s + +#ifdef __cplusplus +extern "C" { +#endif +static int f(void) { return 42; } +int g(void) __attribute__((alias("f"))); ---------------- nickdesaulniers wrote:
This seems wrong to me, a false negative. FWICT, for C++ mode, even in an `extern "C"` block, it seems that functions with static linkage get mangled. Or... Oh, look, more behavioral differences from GCC: https://godbolt.org/z/sa4e7aYqj We mangle, they do not. That's going to lead to further compatibility issues when trying to use this function attribute. --- Ah! right you pointed this out in your note. Perhaps we should fix/change that first in clang? https://github.com/llvm/llvm-project/pull/87130 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits