47 lines
1.0 KiB
C++
47 lines
1.0 KiB
C++
// RUN: %clang %s -g -fexceptions %extra-clang-opts -o %t
|
|
// RUN: %Test_jit_debuginfo %s %t
|
|
// DEBUGGER: set breakpoint pending on
|
|
// DEBUGGER: break test_parameters
|
|
// DEBUGGER: run
|
|
// DEBUGGER: step
|
|
// DEBUGGER: print pf[0]
|
|
// CHECK: $1 = 0
|
|
// DEBUGGER: print ppd[1][1]
|
|
// CHECK: $2 = 3
|
|
// DEBUGGER: print s
|
|
// CHECK: $3 = (char_struct &)
|
|
// CHECK: {c = 97 'a', c2 = "01"}
|
|
// DEBUGGER: print ppn
|
|
// CHECK: $4 = (int **) 0x0
|
|
// DEBUGGER: print us
|
|
// CHECK: $5 = 10
|
|
// DEBUGGER: print l
|
|
// CHECK: $6 = 42
|
|
// DEBUGGER: continue
|
|
|
|
struct char_struct {
|
|
char c;
|
|
char c2[2];
|
|
} compound_char;
|
|
|
|
|
|
double test_parameters(float* pf, double ppd[][2], struct char_struct& s, int** ppn = 0, unsigned short us = 10u, const unsigned long l = 42)
|
|
{
|
|
double result = pf[0] * ppd[1][1] * s.c * us * l;
|
|
return result;
|
|
}
|
|
|
|
int main(int argc, char* argv[])
|
|
{
|
|
struct char_struct s;
|
|
float f = 0.f;
|
|
double d[2][2] = {{0, 1}, {2, 3.0}};
|
|
|
|
s.c = 'a';
|
|
s.c2[0] = '0';
|
|
s.c2[1] = '1';
|
|
|
|
double result = test_parameters(&f, d, s);
|
|
return(result == 0 ? 0 : -1);
|
|
}
|