[clang] [clang] Instantiate attributes on other decl types (PR #115924)

Eric Astor via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 12 14:54:08 PST 2024


================
@@ -9,7 +9,7 @@ void CheckEnumerations() {
   // Check that non-vector 'mode' attribute is OK with enumeration types.
   typedef T __attribute__((mode(QI))) T1;
   typedef T T2 __attribute__((mode(HI)));
-  typedef T __attribute__((mode(V8SI))) T3; // expected-error{{mode 'V8SI' is not supported for enumeration types}}
+  typedef T __attribute__((mode(V8SI))) T3; // expected-error2{{mode 'V8SI' is not supported for enumeration types}}
----------------
ericastor wrote:

Yeah, unfortunately the way `InstantiateAttrs` is implemented seems to cause it to copy attributes even if they errored previously. You can see this used elsewhere in the same file for much the same reason... this is a case where we're just having a pre-existing problem show up in a new scenario.

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


More information about the cfe-commits mailing list