diff options
author | Franz Sirl <Franz.Sirl-kernel@lauterbach.com> | 2000-11-18 18:46:15 +0000 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-11-18 10:46:15 -0800 |
commit | 3734169e0c671c661f8bef8aff2adc4ebfa7bd6b (patch) | |
tree | c3a554319a3e32d2dbf202d0a4a87817942b21b5 | |
parent | 311d8afa84982538f1e2999f46493a061a30a11b (diff) | |
download | gcc-3734169e0c671c661f8bef8aff2adc4ebfa7bd6b.zip gcc-3734169e0c671c661f8bef8aff2adc4ebfa7bd6b.tar.gz gcc-3734169e0c671c661f8bef8aff2adc4ebfa7bd6b.tar.bz2 |
20001115-1.c: Don't write to nonexistant memory.
* gcc.c-torture/execute/20001115-1.c: Don't write to nonexistant
memory.
From-SVN: r37544
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20001115-1.c | 16 |
2 files changed, 15 insertions, 6 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 382b519..14eca6c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2000-11-18 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> + + * gcc.c-torture/execute/20001115-1.c: Don't access nonexistant + memory. + 2000-11-17 Nathan Sidwell <nathan@codesourcery.com> * g++.old-deja/g++.pt/instantiate8.C: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/20001115-1.c b/gcc/testsuite/gcc.c-torture/execute/20001115-1.c index 0e34614..632ad4b 100644 --- a/gcc/testsuite/gcc.c-torture/execute/20001115-1.c +++ b/gcc/testsuite/gcc.c-torture/execute/20001115-1.c @@ -1,28 +1,32 @@ extern void abort (void); extern void exit (int); -struct iso_directory_record { +union iso_directory_record { + char carr[4]; + struct { unsigned char name_len [1]; char name [0]; + } u; } entry; -void set(struct iso_directory_record *); +void set(union iso_directory_record *); int main (void) { - struct iso_directory_record *de; + union iso_directory_record *de; de = &entry; set(de); - if (de->name_len[0] == 1 && de->name[0] == 0) + if (de->u.name_len[0] == 1 && de->u.name[0] == 0) exit (0); else abort (); } -void set (struct iso_directory_record *p) +void set (union iso_directory_record *p) { - p->name_len[0] = 1; + p->carr[0] = 1; + p->carr[1] = 0; return; } |