mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-27 13:36:07 +00:00

With this change, most 'g' options are rejected by CompilerInvocation. They remain only as Driver options. The new way to request debug info from cc1 is with "-debug-info-kind={line-tables-only|limited|standalone}" and "-dwarf-version={2|3|4}". In the absence of a command-line option to specify Dwarf version, the Toolchain decides it, rather than placing Toolchain-specific logic in CompilerInvocation. Also fix a bug in the Windows compatibility argument parsing in which the "rightmost argument wins" principle failed. Differential Revision: http://reviews.llvm.org/D13221 llvm-svn: 249655
27 lines
663 B
C++
27 lines
663 B
C++
// RUN: %clang_cc1 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s
|
|
// rdar://problem/14985269.
|
|
//
|
|
// Verify that the global init helper function does not get associated
|
|
// with any source location.
|
|
//
|
|
// CHECK: define internal {{.*}}void @_GLOBAL__sub_I_globalinit_loc.cpp
|
|
// CHECK: !dbg ![[DBG:.*]]
|
|
// CHECK: !DISubprogram(linkageName: "_GLOBAL__sub_I_globalinit_loc.cpp"
|
|
// CHECK-NOT: line:
|
|
// CHECK-SAME: isLocal: true
|
|
// CHECK-SAME: isDefinition: true
|
|
// CHECK: ![[DBG]] = !DILocation(line: 0,
|
|
# 99 "someheader.h"
|
|
class A {
|
|
public:
|
|
A();
|
|
int foo() { return 0; }
|
|
};
|
|
# 5 "main.cpp"
|
|
A a;
|
|
|
|
int f() {
|
|
return a.foo();
|
|
}
|
|
|