From 7a53514cdb48d9cce8d9d3fb65b98d02f5e41e3a Mon Sep 17 00:00:00 2001 From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Thu, 3 Aug 2000 07:36:13 +0000 Subject: [PATCH] * gcc.c-torture/execute/20000801-3.c, gcc.c-torture/20000801-4.c: New tests. * gcc.c-torture/execute/20000801-3.x, gcc/c-torture/20000801-4.x: Xfail. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35445 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 7 +++++ .../gcc.c-torture/execute/20000801-3.c | 24 +++++++++++++++++ .../gcc.c-torture/execute/20000801-3.x | 2 ++ .../gcc.c-torture/execute/20000801-4.c | 27 +++++++++++++++++++ .../gcc.c-torture/execute/20000801-4.x | 2 ++ 5 files changed, 62 insertions(+) create mode 100644 gcc/testsuite/gcc.c-torture/execute/20000801-3.c create mode 100644 gcc/testsuite/gcc.c-torture/execute/20000801-3.x create mode 100644 gcc/testsuite/gcc.c-torture/execute/20000801-4.c create mode 100644 gcc/testsuite/gcc.c-torture/execute/20000801-4.x diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7f61d2aeddaf..2a49bd941993 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2000-08-03 Joseph S. Myers <jsm28@cam.ac.uk> + + * gcc.c-torture/execute/20000801-3.c, gcc.c-torture/20000801-4.c: + New tests. + * gcc.c-torture/execute/20000801-3.x, gcc/c-torture/20000801-4.x: + Xfail. + 2000-08-02 Geoff Keating <geoffk@cygnus.com> * lib/objc.exp (objc_target_compile): Look for libobjc.a in diff --git a/gcc/testsuite/gcc.c-torture/execute/20000801-3.c b/gcc/testsuite/gcc.c-torture/execute/20000801-3.c new file mode 100644 index 000000000000..8d47a8155fe7 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000801-3.c @@ -0,0 +1,24 @@ +/* Origin: PR c/92 from Simon Marlow <t-simonm@microsoft.com>, adapted + to a testcase by Joseph Myers <jsm28@cam.ac.uk>. +*/ + +typedef struct { } empty; + +typedef struct { + int i; + empty e; + int i2; +} st; + +st s = { .i = 0, .i2 = 1 }; + +extern void abort (void); + +int +main (void) +{ + if (s.i2 == 1) + exit (0); + else + abort (); +} diff --git a/gcc/testsuite/gcc.c-torture/execute/20000801-3.x b/gcc/testsuite/gcc.c-torture/execute/20000801-3.x new file mode 100644 index 000000000000..2f397b96e51b --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000801-3.x @@ -0,0 +1,2 @@ +set torture_execute_xfail "*-*-*" +return 0 diff --git a/gcc/testsuite/gcc.c-torture/execute/20000801-4.c b/gcc/testsuite/gcc.c-torture/execute/20000801-4.c new file mode 100644 index 000000000000..06d2ffbf271f --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000801-4.c @@ -0,0 +1,27 @@ +/* Origin: PR c/128 from Martin Sebor <sebor@roguewave.com>, adapted + as a testcase by Joseph Myers <jsm28@cam.ac.uk>. +*/ +/* Character arrays initialised by a string literal must have + uninitialised elements zeroed. This isn't clear in the 1990 + standard, but was fixed in TC2 and C99; see DRs #060, #092. +*/ +extern void abort (void); + +int +foo (void) +{ + char s[2] = ""; + return 0 == s[1]; +} + +int +main (void) +{ + { + char s[] = "x"; + } + if (foo ()) + exit (0); + else + abort (); +} diff --git a/gcc/testsuite/gcc.c-torture/execute/20000801-4.x b/gcc/testsuite/gcc.c-torture/execute/20000801-4.x new file mode 100644 index 000000000000..2f397b96e51b --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000801-4.x @@ -0,0 +1,2 @@ +set torture_execute_xfail "*-*-*" +return 0 -- GitLab