const-cfstring-1.c

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 27 行

C
27
字号
/* APPLE LOCAL file constant cfstrings *//* Test whether the __builtin__CFStringMakeConstantString    "function" fails gracefully when handed a non-constant   argument.  This will only work on MacOS X 10.1.2 and later.  *//* Developed by Ziemowit Laski <zlaski@apple.com>.  *//* { dg-do compile { target *-*-darwin* } } *//* { dg-options "-fconstant-cfstrings" } */#import <CoreFoundation/CFString.h>#ifdef __CONSTANT_CFSTRINGS__#undef CFSTR#define CFSTR(STR)  ((CFStringRef) __builtin___CFStringMakeConstantString (STR))#endifextern int cond;extern const char *func(void);int main(void) {  CFStringRef s1 = CFSTR("Str1");  CFStringRef s2 = CFSTR(cond? "Str2": "Str3"); /* { dg-error "CFString literal expression is not constant" } */  CFStringRef s3 = CFSTR(func());  /* { dg-error "CFString literal expression is not constant" } */  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?