aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.old-deja/g++.oliva/ext1.C
blob: 1bc37357a854b0a7caed924017319d3ba3eb08c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// { dg-do run  }
// { dg-options "" }
// Copyright (C) 1999 Free Software Foundation

// by Alexandre Oliva <oliva@dcc.unicamp.br>
// simplified from bug report by Michael Rosenbruch <Rosenbruch@bfw-online.de>


extern "C" void abort();

int main () {
  char x[1];
  char *y = x ? /* implicit x */ : 0;
  /* For some reason, the array x is copied twice, and y points to the
     second copy (the first is never used).  If x is explicit, no copy
     is created, and the program succeeds.  */
  if (x != y) 
    abort();
}