|  | // RUN: %clang_cc1 -fsyntax-only -verify %s | 
|  |  | 
|  | @interface NSString @end | 
|  |  | 
|  | @interface NSString (NSStringExtensionMethods) | 
|  | + (id)stringWithUTF8String:(const char *)nullTerminatedCString; | 
|  | @end | 
|  |  | 
|  | extern char *strdup(const char *str); | 
|  |  | 
|  | id constant_string() { | 
|  | return @("boxed constant string."); | 
|  | } | 
|  |  | 
|  | id dynamic_string() { | 
|  | return @(strdup("boxed dynamic string")); | 
|  | } | 
|  |  | 
|  | id const_char_pointer() { | 
|  | return @((const char *)"constant character pointer"); | 
|  | } | 
|  |  | 
|  | id missing_parentheses() { | 
|  | return @(5;             // expected-error {{expected ')'}} \ | 
|  | // expected-note {{to match this '('}} | 
|  | } | 
|  |  | 
|  | // rdar://10679157 | 
|  | void bar(id p); | 
|  | void foo(id p) { | 
|  | bar(@{p, p}); // expected-error {{expected ':'}} | 
|  | bar(0); | 
|  | bar(0); | 
|  | } |