Ostrzeżenie „Korzystanie z rozszerzenia wyrażenia instrukcji GNU”
Mam tę instrukcję celu:
NSRange range = NSMakeRange(i, MIN(a, b));
gdziea
ib
sąNSUInteger
s.
MIN()
jest makro zdefiniowane w standardzieNSObjCRuntime.h
plik nagłówkowy jako:
#if !defined(MIN)
#define MIN(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __a : __b; })
#endif
Podczas kompilacji LLVM Compiler 4.1 podkreśla moją instrukcję pokazującą ostrzeżenie: „Korzystanie z rozszerzenia wyrażenia instrukcji GNU”.
Co to znaczy? To moja wina? Jeśli tak, jak mogę to naprawić? Jeśli nie, jak mogę usunąć ostrzeżenie kompilatora?