extern FILE *myFile;
-#define SOME_MACRO_GETTING_UNDEFINED 1
-#undef SOME_MACRO_GETTING_UNDEFINED
+#define SOME_MACRO_ATTR_GETTING_UNDEFINED __attribute__((objc_method_family(none)))
+#undef SOME_MACRO_ATTR_GETTING_UNDEFINED
#endif // MODULE_H
__attribute__((objc_root_class))
@interface Test
// rdar://19904648
+// The diagnostic will try to find a suitable macro name to use (instead of raw __attribute__).
+// While iterating through the macros it would dereference a null pointer if the macro was undefined in the same module as it was originally defined in.
@property (assign) id newFile; // expected-error {{property follows Cocoa naming convention for returning 'owned' objects}} \
- // expected-note {{explicitly declare getter}}
+ // expected-note {{explicitly declare getter '-newFile' with '__attribute__((objc_method_family(none)))' to return an 'unowned' object}}
@end
@implementation Test