1 2 #define import __import_module__ 3 import lookup_left_cxx; 4 #define IMPORT(X) __import_module__ X 5 IMPORT(lookup_right_cxx); 6 7 void test(int i, float f) { 8 // unqualified lookup 9 f0(&i); 10 f0(&f); 11 12 // qualified lookup into the translation unit 13 ::f0(&i); 14 ::f0(&f); 15 } 16 17 // RUN: rm -rf %t 18 // RUN: %clang_cc1 -emit-module-from-map -fmodule-cache-path %t -fmodule-name=lookup_left_cxx -x c++ %S/Inputs/module.map -verify 19 // RUN: %clang_cc1 -emit-module-from-map -fmodule-cache-path %t -fmodule-name=lookup_right_cxx -x c++ %S/Inputs/module.map -verify 20 // RUN: %clang_cc1 -x c++ -fmodule-cache-path %t %s -verify 21 // RUN: %clang_cc1 -ast-print -x c++ -fmodule-cache-path %t %s | FileCheck -check-prefix=CHECK-PRINT %s 22 23 // CHECK-PRINT: int *f0(int *); 24 // CHECK-PRINT: float *f0(float *); 25 // CHECK-PRINT: void test(int i, float f) 26 27