reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | // RUN: %clang_cc1 -fsyntax-only -verify %s // RUN: %clang_cc1 -x objective-c++ -fsyntax-only -verify %s // expected-no-diagnostics // rdar://10667659 @protocol NSCopying @end @interface NSString <NSCopying> @end void takeId(id test) {} void takeCopyableId(id<NSCopying> test) {} id<NSCopying> Test () { NSString const *constantString = @"Test"; takeId(constantString); takeCopyableId(constantString); id ID = constantString; id<NSCopying> IDQNSCopying = constantString; return constantString; } |