aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20041212-1.c15
2 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 05eed5a..8dd7e1c 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-12-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR middle-end/17564
+ * gcc.c-torture/execute/20041212-1.c: New test.
+
2004-12-12 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/18869
diff --git a/gcc/testsuite/gcc.c-torture/execute/20041212-1.c b/gcc/testsuite/gcc.c-torture/execute/20041212-1.c
new file mode 100644
index 0000000..ea2d0fb
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20041212-1.c
@@ -0,0 +1,15 @@
+/* A function pointer compared with a void pointer should not be canonicalized.
+ See PR middle-end/17564. */
+void *f (void) __attribute__ ((__noinline__));
+void *
+f (void)
+{
+ return f;
+}
+int
+main (void)
+{
+ if (f () != f)
+ abort ();
+ exit (0);
+}