aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2016-10-11 08:16:11 +0000
committerTom de Vries <vries@gcc.gnu.org>2016-10-11 08:16:11 +0000
commit431e31a9f464e2213b06ad4f7e52ee1a4f1c4b38 (patch)
treea60abbeab0044a8e31ea5f5d28522c6019bcd08d
parent2e33e1c46fae2695b076585af87d7844e19c3486 (diff)
downloadgcc-431e31a9f464e2213b06ad4f7e52ee1a4f1c4b38.zip
gcc-431e31a9f464e2213b06ad4f7e52ee1a4f1c4b38.tar.gz
gcc-431e31a9f464e2213b06ad4f7e52ee1a4f1c4b38.tar.bz2
Remove RECORD_TYPE special-casing in std_canonical_va_list_type
2016-10-11 Tom de Vries <tom@codesourcery.com> PR middle-end/77558 * builtins.c (std_canonical_va_list_type): Remove RECORD_TYPE special-casing. From-SVN: r240968
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/builtins.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 23f3b4d..06d2c23 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-10-11 Tom de Vries <tom@codesourcery.com>
+
+ PR middle-end/77558
+ * builtins.c (std_canonical_va_list_type): Remove RECORD_TYPE
+ special-casing.
+
2016-10-11 Eric Botcazou <ebotcazou@adacore.com>
* tree.h (build_complex_type): Add second parameter with default.
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 6c68198..43a9db0 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -4090,10 +4090,8 @@ std_canonical_va_list_type (tree type)
wtype = va_list_type_node;
htype = type;
- /* Treat structure va_list types. */
- if (TREE_CODE (wtype) == RECORD_TYPE && POINTER_TYPE_P (htype))
- htype = TREE_TYPE (htype);
- else if (TREE_CODE (wtype) == ARRAY_TYPE)
+
+ if (TREE_CODE (wtype) == ARRAY_TYPE)
{
/* If va_list is an array type, the argument may have decayed
to a pointer type, e.g. by being passed to another function.