diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1993-04-13 10:47:33 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1993-04-13 10:47:33 +0000 |
commit | 7f8a347aada9d77203ffb0fcedd0fb032d9fde1e (patch) | |
tree | 5ad42eb845fd1c1c368c84f41be43d6d958f7941 /gcc/calls.c | |
parent | 227bf826be6dee064e8d9671fb2fa5d29a6711d9 (diff) | |
download | ppe42-gcc-7f8a347aada9d77203ffb0fcedd0fb032d9fde1e.tar.gz ppe42-gcc-7f8a347aada9d77203ffb0fcedd0fb032d9fde1e.zip |
Treat QUAL_UNION_TYPE like UNION_TYPE when seeing if aggregate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@4118 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r-- | gcc/calls.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index b2b52b1337d..3dc52c61484 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -588,6 +588,7 @@ expand_call (exp, target, ignore) if (warn_aggregate_return && (TREE_CODE (TREE_TYPE (exp)) == RECORD_TYPE || TREE_CODE (TREE_TYPE (exp)) == UNION_TYPE + || TREE_CODE (TREE_TYPE (exp)) == QUAL_UNION_TYPE || TREE_CODE (TREE_TYPE (exp)) == ARRAY_TYPE)) warning ("function call has aggregate value"); @@ -1798,7 +1799,8 @@ expand_call (exp, target, ignore) MEM_IN_STRUCT_P (target) = (TREE_CODE (TREE_TYPE (exp)) == ARRAY_TYPE || TREE_CODE (TREE_TYPE (exp)) == RECORD_TYPE - || TREE_CODE (TREE_TYPE (exp)) == UNION_TYPE); + || TREE_CODE (TREE_TYPE (exp)) == UNION_TYPE + || TREE_CODE (TREE_TYPE (exp)) == QUAL_UNION_TYPE); } } else if (pcc_struct_value) @@ -1810,7 +1812,8 @@ expand_call (exp, target, ignore) MEM_IN_STRUCT_P (target) = (TREE_CODE (TREE_TYPE (exp)) == ARRAY_TYPE || TREE_CODE (TREE_TYPE (exp)) == RECORD_TYPE - || TREE_CODE (TREE_TYPE (exp)) == UNION_TYPE); + || TREE_CODE (TREE_TYPE (exp)) == UNION_TYPE + || TREE_CODE (TREE_TYPE (exp)) == QUAL_UNION_TYPE); } else if (TYPE_MODE (TREE_TYPE (exp)) != BLKmode) emit_move_insn (target, gen_rtx (MEM, TYPE_MODE (TREE_TYPE (exp)), |