xref: /llvm-project/clang/test/Modules/DebugInfoSubmodules.c (revision 3459ce2e5ebbabb8d4dde3809da50dc89e1b0b35)
19402cef0SAdrian Prantl // RUN: rm -rf %t
2*3459ce2eSDouglas Katzman // RUN: %clang_cc1 -fmodules -fmodule-format=obj -debug-info-kind=limited -dwarf-ext-refs \
39402cef0SAdrian Prantl // RUN:     -fimplicit-module-maps -x c -fmodules-cache-path=%t -I %S/Inputs \
4835e6633SAdrian Prantl // RUN:     %s -mllvm -debug-only=pchcontainer -emit-llvm -o %t.ll \
5835e6633SAdrian Prantl // RUN:     2>&1 | FileCheck %s
62fbdb680SNAKAMURA Takumi // REQUIRES: asserts
79402cef0SAdrian Prantl #include "DebugSubmoduleA.h"
89402cef0SAdrian Prantl 
99402cef0SAdrian Prantl // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "A",
109402cef0SAdrian Prantl // CHECK-SAME:             scope: ![[SUBMODULEA:[0-9]+]]
11835e6633SAdrian Prantl // CHECK: ![[SUBMODULEA]] = !DIModule(scope: ![[PARENT:[0-9]+]],
12835e6633SAdrian Prantl // CHECK-SAME:                        name: "DebugSubmoduleA",
13835e6633SAdrian Prantl // CHECK: ![[PARENT]] = !DIModule(scope: null, name: "DebugSubmodules"
149402cef0SAdrian Prantl 
159402cef0SAdrian Prantl // CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "B",
169402cef0SAdrian Prantl // CHECK-SAME:             scope: ![[SUBMODULEB:[0-9]+]]
17835e6633SAdrian Prantl // CHECK: ![[SUBMODULEB]] = !DIModule(scope: ![[PARENT]],
18835e6633SAdrian Prantl // CHECK-SAME:                        name: "DebugSubmoduleB",
19