aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>1999-12-15 12:40:30 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>1999-12-15 12:40:30 +0000
commit41bd0db1f02ae60cd58f5d79ad01cff22931a841 (patch)
treebc26d386da09ed1a67c4ae665ecadbb191a7c2dd /gcc
parent8be7ab5d48fe7798721464d797634301f33a85bc (diff)
downloadgcc-41bd0db1f02ae60cd58f5d79ad01cff22931a841.zip
gcc-41bd0db1f02ae60cd58f5d79ad01cff22931a841.tar.gz
gcc-41bd0db1f02ae60cd58f5d79ad01cff22931a841.tar.bz2
* g++.old-deja/g++.warn/cast-align1.C: New test.
From-SVN: r30953
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C28
2 files changed, 32 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4aa9038..e623b37 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+1999-12-15 Nathan Sidwell <nathan@acm.org>
+
+ * g++.old-deja/g++.warn/cast-align1.C: New test.
+
1999-12-14 Bernd Schmidt <bernds@cygnus.co.uk>
* gcc.dg/991214-1.c: New test.
diff --git a/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C b/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C
new file mode 100644
index 0000000..2876bf7
--- /dev/null
+++ b/gcc/testsuite/g++.old-deja/g++.warn/cast-align1.C
@@ -0,0 +1,28 @@
+// Build don't link:
+// Skip if not target: sparc-*-*
+
+// Special g++ Options: -ansi -pedantic-errors -Wcast-align
+
+// Copyright (C) 1999 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 7 Dec 1999 <nathan@acm.org>
+
+// converting a T * to void * does not need a complete T, and doesn't
+// increase alignment requirements.
+
+struct X;
+struct Y;
+struct Z {double m;};
+
+void f3 (X *xp, Z *zp)
+{
+ (void *)xp;
+ (void *)zp;
+ (Y *)xp;
+ (Y *)zp;
+ (Z *)xp;
+}
+
+void f4 (char *ptr)
+{
+ (Z *)ptr; // WARNING - alignment
+}