Skip to content

Instantly share code, notes, and snippets.

@kyleve
Created May 2, 2014 07:38
Show Gist options
  • Save kyleve/373d7951baf9cea69584 to your computer and use it in GitHub Desktop.
Save kyleve/373d7951baf9cea69584 to your computer and use it in GitHub Desktop.
/**
Allows easier pushing and popping of clang warnings.
Example (Ignoring undeclared selectors):
SQClangDiagnosticPushIgnored(-Wundeclared-selector);
SEL undeclaredSelector = @selector(thisSelectorDoesNotExist:::);
SQClangDiagnosticPop;
*/
#define SQClangDiagnosticPush _Pragma("clang diagnostic push")
#define __SQStringifyMacro__(__String__) #__String__
#define SQClangDiagnosticPushIgnored(IgnoredFlag) \
SQClangDiagnosticPush \
_Pragma(__SQStringifyMacro__(clang diagnostic ignored #IgnoredFlag))
#define SQClangDiagnosticPop _Pragma("clang diagnostic pop")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment