Commit 46be1d06 authored by Thomas Van Lenten's avatar Thomas Van Lenten

Merge pull request #1034 from thomasvl/static_assert_fix

Use compiler provided static assert and avoid tripping unused-local-typedef warnings.
parents 9bd74b7f 52b8d3fe
......@@ -55,10 +55,15 @@ NSString *const GPBExceptionMessageKey =
static NSString *const kGPBDataCoderKey = @"GPBData";
#ifndef _GPBCompileAssert
#define _GPBCompileAssertSymbolInner(line, msg) _GPBCompileAssert ## line ## __ ## msg
#define _GPBCompileAssertSymbol(line, msg) _GPBCompileAssertSymbolInner(line, msg)
#define _GPBCompileAssert(test, msg) \
typedef char _GPBCompileAssertSymbol(__LINE__, msg) [ ((test) ? 1 : -1) ]
#if __has_feature(c_static_assert) || __has_extension(c_static_assert)
#define _GPBCompileAssert(test, msg) _Static_assert((test), #msg)
#else
// Pre-Xcode 7 support.
#define _GPBCompileAssertSymbolInner(line, msg) _GPBCompileAssert ## line ## __ ## msg
#define _GPBCompileAssertSymbol(line, msg) _GPBCompileAssertSymbolInner(line, msg)
#define _GPBCompileAssert(test, msg) \
typedef char _GPBCompileAssertSymbol(__LINE__, msg) [ ((test) ? 1 : -1) ]
#endif // __has_feature(c_static_assert) || __has_extension(c_static_assert)
#endif // _GPBCompileAssert
//
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment