forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: rm -rf %t
 | |
| // RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs %s -verify
 | |
| // RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs -x c %s -verify
 | |
| // RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs -x objective-c++ %s -verify
 | |
| 
 | |
| // RUN: rm -rf %t.pch.cache
 | |
| // RUN: %clang_cc1 -fmodules-cache-path=%t.pch.cache -fmodules -fimplicit-module-maps -I %S/Inputs -emit-pch -o %t.pch -x objective-c-header %S/Inputs/use-builtin.h
 | |
| // RUN: %clang_cc1 -fmodules-cache-path=%t.pch.cache -fmodules -fimplicit-module-maps -I %S/Inputs %s -include-pch %t.pch %s -verify
 | |
| 
 | |
| // expected-no-diagnostics
 | |
| 
 | |
| void use_constant_string_builtins1(void) {
 | |
|   (void)__builtin___CFStringMakeConstantString("");
 | |
|   (void)__builtin___NSStringMakeConstantString("");
 | |
| }
 | |
| 
 | |
| #include "builtin.h"
 | |
| 
 | |
| int foo() {
 | |
|   return __builtin_object_size(p, 0);
 | |
| }
 | |
| 
 | |
| #include "builtin_sub.h"
 | |
| 
 | |
| int bar() {
 | |
|   return __builtin_object_size(p, 0);
 | |
| }
 | |
| 
 | |
| int baz() {
 | |
|   return IS_CONST(0);
 | |
| }
 | |
| 
 | |
| void use_constant_string_builtins2(void) {
 | |
|   (void)__builtin___CFStringMakeConstantString("");
 | |
|   (void)__builtin___NSStringMakeConstantString("");
 | |
| }
 |