aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>2004-12-13 04:08:39 +0000
committerJohn David Anglin <danglin@gcc.gnu.org>2004-12-13 04:08:39 +0000
commitb80a3161c35f02b31117ad49b8eb7a88dfc73b36 (patch)
tree16a88580bc4461849f1a61587c7b17db887764de /gcc
parent7f68c75fb313ac9e2bb59dc960071ac429486529 (diff)
downloadgcc-b80a3161c35f02b31117ad49b8eb7a88dfc73b36.zip
gcc-b80a3161c35f02b31117ad49b8eb7a88dfc73b36.tar.gz
gcc-b80a3161c35f02b31117ad49b8eb7a88dfc73b36.tar.bz2
re PR middle-end/17564 (New treatment of function pointers when used with equality operators, when casts are involved)
PR middle-end/17564 * gcc.c-torture/execute/20041212-1.c: New test. From-SVN: r92076
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);
+}