C++程序  |  44行  |  823 B

// RUN: %clang %s -g -fexceptions %extra-clang-opts -o %t
// RUN: %Test_jit_debuginfo %s %t
// DEBUGGER: set breakpoint pending on
// DEBUGGER: break %s:42
// DEBUGGER: run
// DEBUGGER: print pf[0]
// CHECK: $1 = 0
// DEBUGGER: print d[0][0]
// CHECK: $2 = 0
// DEBUGGER: print us
// CHECK: $3 = 65535
// DEBUGGER: print l
// CHECK: $4 = 1
// DEBUGGER: print f
// CHECK: $5 = 10
// DEBUGGER: continue

struct double_struct {
  double d;
  double d2[2];
} compound_double;


float f = 0.f;
float *pf = &f;

const double d[2][2] = {{0, 1}, {2, 3.0}};
struct double_struct s;

unsigned short us = -1;
const unsigned long l = 1;

int main(int argc, char* argv[])
{
  int f = 10; // shadow

  s.d = 10e-4;
  s.d2[0] = 1e4;
  s.d2[1] = 100.5;

  double result = pf[0] * d[1][1] * s.d * us * l;
  return (result == 0 ? 0 : -1);
}