Clang Project

clang_source_code/test/Modules/DebugInfoSubmodules.c
1// RUN: rm -rf %t
2// RUN: %clang_cc1 -fmodules -fmodule-format=obj -debug-info-kind=limited -dwarf-ext-refs \
3// RUN:     -fimplicit-module-maps -x c -fmodules-cache-path=%t -I %S/Inputs \
4// RUN:     %s -mllvm -debug-only=pchcontainer -emit-llvm -o %t.ll \
5// RUN:     2>&1 | FileCheck %s
6// REQUIRES: asserts
7#include "DebugSubmoduleA.h"
8
9// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "A",
10// CHECK-SAME:             scope: ![[SUBMODULEA:[0-9]+]]
11// CHECK: ![[SUBMODULEA]] = !DIModule(scope: ![[PARENT:[0-9]+]],
12// CHECK-SAME:                        name: "DebugSubmoduleA",
13// CHECK: ![[PARENT]] = !DIModule(scope: null, name: "DebugSubmodules"
14
15// CHECK: !DICompositeType(tag: DW_TAG_structure_type, name: "B",
16// CHECK-SAME:             scope: ![[SUBMODULEB:[0-9]+]]
17// CHECK: ![[SUBMODULEB]] = !DIModule(scope: ![[PARENT]],
18// CHECK-SAME:                        name: "DebugSubmoduleB",
19