the condidtional have compatible types, they are not necessarily the
same type. Therefore, we cast to the composite type. As a hack, for
the moment we assume that the composite type is the type of the
left-hand expression; this isn't correct, but it's good enough for most
purposes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51202
91177308-0d34-0410-b5e6-
96231b3b80d8
// differently qualified versions of compatible types, the result type is
// a pointer to an appropriately qualified version of the *composite*
// type.
- // FIXME: Need to return the composite type.
+ // FIXME: Need to calculate the composite type.
// FIXME: Need to add qualifiers
- return lexT;
+ QualType compositeType = lexT;
+ ImpCastExprToType(lex, compositeType);
+ ImpCastExprToType(rex, compositeType);
+ return compositeType;
}
}