summaryrefslogtreecommitdiff
path: root/gcc/integrate.c
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-04-11 07:24:55 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1996-04-11 07:24:55 -0400
commitd80db03db2a63a855abb27ae3f236e8d27c7c227 (patch)
tree06f388014700880aac128c9859eca837e52031b1 /gcc/integrate.c
parent82fa9209b77fecb7aef48b767d5fa58598598498 (diff)
downloadgcc-d80db03db2a63a855abb27ae3f236e8d27c7c227.tar.gz
(expand_inline_function): When comparing types of formal and actual,
use TYPE_MAIN_VARIANT. From-SVN: r11697
Diffstat (limited to 'gcc/integrate.c')
-rw-r--r--gcc/integrate.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c
index 0d871bd4a1b..9c2769e4111 100644
--- a/gcc/integrate.c
+++ b/gcc/integrate.c
@@ -1227,7 +1227,9 @@ expand_inline_function (fndecl, parms, target, ignore, type,
/* If they are block mode, the types should match exactly.
They don't match exactly if TREE_TYPE (FORMAL) == ERROR_MARK_NODE,
which could happen if the parameter has incomplete type. */
- || (mode == BLKmode && TREE_TYPE (arg) != TREE_TYPE (formal)))
+ || (mode == BLKmode
+ && (TYPE_MAIN_VARIANT (TREE_TYPE (arg))
+ != TYPE_MAIN_VARIANT (TREE_TYPE (formal)))))
return (rtx) (HOST_WIDE_INT) -1;
}