[clang] [clang] Differentiate between identifier and string EnumArgument (PR #68550)

Alexander Richardson via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 20 14:43:00 PST 2023


================
@@ -886,7 +893,7 @@ def ARMInterrupt : InheritableAttr, TargetSpecificAttr<TargetARM> {
   // MSP430Interrupt's, MipsInterrupt's and AnyX86Interrupt's spellings
   // must match.
   let Spellings = [GCC<"interrupt">];
-  let Args = [EnumArgument<"Interrupt", "InterruptType",
+  let Args = [EnumArgument<"Interrupt", "InterruptType", /*is_string=*/true,
----------------
arichardson wrote:

That makes sense - silent downstream breakage is not nice. I guess the other option would be to also use named arguments for `values` and/or `enums` but that will make the diff a bit larger.

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


More information about the cfe-commits mailing list