Previously, debuginfo-tests was expected to be checked out into clang/test and then the tests would automatically run as part of check-clang. This is not a standard workflow for handling external projects, and it brings with it some serious drawbacks such as the inability to depend on things other than clang, which we will need going forward. The goal of this patch is to migrate towards a more standard workflow. To ease the transition for build bot maintainers, this patch tries not to break the existing workflow, but instead simply deprecate it to give maintainers a chance to update the build infrastructure. Differential Revision: https://reviews.llvm.org/D39605 llvm-svn: 317925
28 lines
648 B
C++
28 lines
648 B
C++
// This ensures that DW_OP_deref is inserted when necessary, such as when NRVO
|
|
// of a string object occurs in C++.
|
|
//
|
|
// RUN: %clangxx -O0 -fno-exceptions %target_itanium_abi_host_triple %s -o %t.out -g
|
|
// RUN: %test_debuginfo %s %t.out
|
|
// RUN: %clangxx -O1 -fno-exceptions %target_itanium_abi_host_triple %s -o %t.out -g
|
|
// RUN: %test_debuginfo %s %t.out
|
|
//
|
|
// PR34513
|
|
|
|
struct string {
|
|
string() {}
|
|
string(int i) : i(i) {}
|
|
~string() {}
|
|
int i = 0;
|
|
};
|
|
string get_string() {
|
|
string unused;
|
|
string result = 3;
|
|
// DEBUGGER: break 21
|
|
return result;
|
|
}
|
|
int main() { get_string(); }
|
|
|
|
// DEBUGGER: r
|
|
// DEBUGGER: print result.i
|
|
// CHECK: = 3
|