Home | History | Annotate | Download | only in X86
      1 # Compile with:
      2 #    cat >modules.modulemap <<EOF
      3 #      module Foo {
      4 #        header "Foo.h"
      5 #        export *
      6 #      }
      7 #      module Bar {
      8 #        header "Bar.h"
      9 #        export *
     10 #      }
     11 # EOF
     12 #    echo 'typedef int bar;' >Bar.h
     13 #    echo '@import Bar; typedef bar foo;' >Foo.h
     14 #    echo '@import Foo; foo f() { return 0; }' >module-warnings.m
     15 #    clang -cc1 -emit-obj -fmodules -fmodule-map-file=modules.modulemap \
     16 #      -fmodule-format=obj -debug-info-kind=standalone -dwarf-ext-refs \
     17 #      -fmodules-cache-path=ModuleCache \
     18 #      -fdisable-module-hash module-warnings.m -o 1.o
     19 #
     20 # Test for module-related warnings.
     21 #
     22 # RUN: rm -rf %t.dir && mkdir %t.dir && mkdir %t.dir/ModuleCache
     23 # RUN: cp %p/../Inputs/module-warnings/1.o %t.dir
     24 # RUN: cp %p/../Inputs/module-warnings/Foo.pcm %t.dir/ModuleCache
     25 #
     26 # RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y \
     27 # RUN:   %p/dummy-debug-map.map -o %t 2>&1 | FileCheck %s
     28 #
     29 # Module-not-found should be reported only once.
     30 # The exact error message depends on the OS so we don't check for it.
     31 # CHECK:     warning: {{.*}}Bar.pcm:
     32 # CHECK-NOT: warning: {{.*}}Bar.pcm:
     33 #
     34 # RUN: cp %p/../Inputs/module-warnings/libstatic.a %t.dir
     35 # RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 | FileCheck %s
     36 # CHECK: rebuild the module cache
     37 # CHECK-NOT: static libraries
     38 #
     39 # RUN: rm -rf %t.dir/ModuleCache
     40 # RUN: llvm-dsymutil -f -oso-prepend-path=%t.dir -y %s -o %t 2>&1 \
     41 # RUN:   | FileCheck %s --check-prefix=STATIC
     42 # STATIC: warning: {{.*}}Bar.pcm:
     43 # STATIC: note: Linking a static library
     44 # STATIC: warning: {{.*}}Foo.pcm:
     45 # STATIC-NOT: note:
     46 
     47 ---
     48 triple:          'x86_64-apple-darwin'
     49 objects:
     50   - filename: libstatic.a(1.o)
     51     symbols:
     52       - { sym: __Z3foov, objAddr: 0x0, binAddr: 0x10000, size: 0x10 }
     53 ...
     54