From 6cd08512717a4316e049ffba4b70bbcc46c704cf Mon Sep 17 00:00:00 2001 From: rms Date: Tue, 28 Jul 1992 02:15:51 +0000 Subject: [PATCH] (build_conditional_expr): Compare using TYPE_MAIN_VARIANT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@1695 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/c-typeck.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index ec984d4..ac8e48e 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -3454,8 +3454,13 @@ build_conditional_expr (ifexp, op1, op2) /* Quickly detect the usual case where op1 and op2 have the same type after promotion. */ - if (type1 == type2) - result_type = type1; + if (TYPE_MAIN_VARIANT (type1) == TYPE_MAIN_VARIANT (type2)) + { + if (type1 == type2) + result_type = type1; + else + result_type = TYPE_MAIN_VARIANT (type1); + } else if ((code1 == INTEGER_TYPE || code1 == REAL_TYPE) && (code2 == INTEGER_TYPE || code2 == REAL_TYPE)) { -- 2.7.4