Remove RECORD_TYPE special-casing in std_canonical_va_list_type 2016-09-25 Tom de Vries PR middle-end/77558 * builtins.c (std_canonical_va_list_type): Remove RECORD_TYPE special-casing. --- gcc/builtins.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gcc/builtins.c b/gcc/builtins.c index 9a19a75..f91e6d3 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -4089,10 +4089,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.