From: Jeff Law Date: Mon, 28 Jun 1999 07:24:42 +0000 (-0600) Subject: Opps. Wrong file the first time. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cfc2e87eae074713ac347e5d6e038210173fb025;p=platform%2Fupstream%2Fgcc.git Opps. Wrong file the first time. From-SVN: r27813 --- diff --git a/gcc/testsuite/gcc.c-torture/execute/990628-1.c b/gcc/testsuite/gcc.c-torture/execute/990628-1.c index d2ef610..3b1342f 100644 --- a/gcc/testsuite/gcc.c-torture/execute/990628-1.c +++ b/gcc/testsuite/gcc.c-torture/execute/990628-1.c @@ -1,30 +1,54 @@ -#define TP_BSIZE 64 +#include -char buf[2*TP_BSIZE]; -char (*nextblock)[TP_BSIZE] = (char (*)[TP_BSIZE]) buf; +struct { + long sqlcode; +} sqlca; -union u_test { - char dummy[TP_BSIZE]; - struct s_test { - int a; - int b; - int c; - } s_test; -}; -main(int argc, char **argv) +struct data_record { + int dummy; + int a[100]; +} *data_ptr, data_tmp; + + +int +num_records() { - int i; - char dp[TP_BSIZE]; + return 1; +} + - for (i = 0; i < 2*TP_BSIZE; i++) - buf[i] = '.'; - for (i = 0; i < TP_BSIZE; i++) - dp[i] = 'a'; +void +fetch() +{ + static int fetch_count; + + memset(&data_tmp, 0x55, sizeof(data_tmp)); + sqlca.sqlcode = (++fetch_count > 1 ? 100 : 0); +} - *(union u_test *)(*(nextblock)++) = *(union u_test *)dp; - for (i = 0; i < 2*TP_BSIZE; i++) - printf("%c%s", buf[i], (i % 64) == 63 ? "\n" : ""); - exit(0); +void +load_data() { + struct data_record *p; + int num = num_records(); + + data_ptr = malloc(num * sizeof(struct data_record)); + memset(data_ptr, 0xaa, num * sizeof(struct data_record)); + + fetch(); + p = data_ptr; + while (sqlca.sqlcode == 0) { + *p++ = data_tmp; + fetch(); + } +} + + +main() +{ + load_data(); + if (data_ptr[0].dummy != 0x55555555) + abort (); + exit (0); }