1 ; RUN: %llc_dwarf %s -o - -filetype=obj | llvm-dwarfdump -v -debug-info - | FileCheck %s 2 ; Generated from: 3 ; namespace normal { inline namespace inlined { int i; } } 4 ; Check that an inline namespace is emitted with DW_AT_export_symbols 5 6 ; CHECK: DW_TAG_namespace 7 ; CHECK-NEXT: DW_AT_name {{.*}} "normal" 8 ; CHECK-NOT: DW_AT_export_symbols 9 ; CHECK-NOT: NULL 10 ; CHECK: DW_TAG_namespace 11 ; CHECK-NEXT: DW_AT_name {{.*}} "inlined" 12 ; CHECK-NOT: DW_TAG 13 ; CHECK-NOT: NULL 14 ; CHECK: DW_AT_export_symbols [DW_FORM_flag_present] (true) 15 ; CHECK-NOT: DW_TAG 16 ; CHECK: DW_TAG_variable 17 ; CHECK-NEXT: DW_AT_name {{.*}} "i" 18 19 source_filename = "namespace.cpp" 20 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" 21 target triple = "x86_64-apple-macosx10.12.0" 22 23 @_ZN6normal7inlined1iE = global i32 0, align 4, !dbg !0 24 25 !llvm.dbg.cu = !{!6} 26 !llvm.module.flags = !{!9, !10, !11} 27 !llvm.ident = !{!12} 28 29 !0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) 30 !1 = !DIGlobalVariable(name: "i", linkageName: "_ZN6normal7inlined1iE", scope: !2, file: !3, line: 1, type: !5, isLocal: false, isDefinition: true) 31 !2 = !DINamespace(name: "inlined", scope: !4, exportSymbols: true) 32 !3 = !DIFile(filename: "namespace.cpp", directory: "/") 33 !4 = !DINamespace(name: "normal", scope: null) 34 !5 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) 35 !6 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (trunk 285825) (llvm/trunk 285822)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !7, globals: !8) 36 !7 = !{} 37 !8 = !{!0} 38 !9 = !{i32 2, !"Dwarf Version", i32 5} 39 !10 = !{i32 2, !"Debug Info Version", i32 3} 40 !11 = !{i32 1, !"PIC Level", i32 2} 41 !12 = !{!"clang version 4.0.0 (trunk 285825) (llvm/trunk 285822)"} 42 43