1; RUN: not llvm-as -disable-output -verify-debug-info < %s 2>&1 | FileCheck %s
2; ModuleID = 'test.c'
3target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
4target triple = "x86_64-apple-macosx10.10.0"
5
6; Function Attrs: nounwind ssp uwtable
7define i32 @foo() #0 {
8entry:
9  ret i32 42, !dbg !13
10}
11
12attributes #0 = { nounwind ssp uwtable }
13
14!llvm.dbg.cu = !{!0}
15!llvm.module.flags = !{!9, !10, !11}
16!llvm.ident = !{!12}
17
18!0 = !MDCompileUnit(language: DW_LANG_C99, producer: "clang version 3.7.0 ", isOptimized: false, emissionKind: 1, file: !1, enums: !2, retainedTypes: !2, subprograms: !3, globals: !2, imports: !2)
19!1 = !MDFile(filename: "test.c", directory: "")
20!2 = !{}
21!3 = !{!4}
22!4 = !MDSubprogram(name: "foo", line: 1, isLocal: false, isDefinition: true, isOptimized: false, scopeLine: 1, file: !1, scope: !5, type: !6, function: i32 ()* @foo, variables: !2)
23!5 = !MDFile(filename: "test.c", directory: "")
24!6 = !MDSubroutineType(types: !7)
25!7 = !{!8}
26!8 = !MDBasicType(tag: DW_TAG_base_type, name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
27!9 = !{i32 2, !"Dwarf Version", i32 2}
28!10 = !{i32 2, !"Debug Info Version", i32 3}
29!11 = !{i32 1, !"PIC Level", i32 2}
30!12 = !{!"clang version 3.7.0 "}
31; An old-style MDLocation should not pass verify.
32; CHECK: invalid !dbg metadata attachment
33!13 = !{i32 2, i32 2, !4, null}
34