#pragma clang attribute push (__attribute__((annotate("subRuleContradictions"))), apply_to = any(variable, variable(is_parameter), function(is_member), variable(is_global)))
int testRecoverSubRuleContradiction = 0;
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((annotate("negatedSubRuleContradictions2"))), apply_to = any(variable(unless(is_parameter)), variable(is_thread_local), function, variable(is_global)))
int testRecoverNegatedContradiction = 0;
void testRecoverNegatedContradictionFunc(void);
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(function))
int testRecoverStrictnessVar = 0;
void testRecoverStrictnessFunc(void);
struct testRecoverStrictnessStruct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(function, record(unless(is_union)), variable, enum))
int testRecoverExtraVar = 0;
void testRecoverExtraFunc(void);
struct testRecoverExtraStruct { };
enum testNoEnumAbiTag { CaseCase };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(function))
int testSubset1Var;
void testSubset1Func(void);
struct testSubset1Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = variable)
int testSubset2Var;
void testSubset2Func(void);
struct testSubset2Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(record(unless(is_union))))
int testSubset3Var;
void testSubset3Func(void);
struct testSubset3Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(function, variable))
int testSubset4Var;
void testSubset4Func(void);
struct testSubset4Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(variable, record(unless(is_union))))
int testSubset5Var;
void testSubset5Func(void);
struct testSubset5Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(record(unless(is_union)), function))
int testSubset6Var;
void testSubset6Func(void);
struct testSubset6Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(record(unless(is_union)), function, variable))
int testSubset7Var;
void testSubset7Func(void);
struct testSubset7Struct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = any(record(unless(is_union)), function, variable, enum, enum_constant))
int testSubsetRecoverVar;
void testSubsetRecoverFunc(void);
struct testSubsetRecoverStruct { };
#pragma clang attribute pop
#pragma clang attribute push (__attribute__((abi_tag("a"))), apply_to = enum)
int testSubsetNoVar;
void testSubsetNoFunc(void);
struct testSubsetNoStruct { };
#pragma clang attribute pop