aboutsummaryrefslogtreecommitdiff
path: root/gcc/passes.c
diff options
context:
space:
mode:
authorThomas Quinot <quinot@adacore.com>2010-06-22 07:03:30 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2010-06-22 09:03:30 +0200
commitd7567964ea0f6ff865f8488a06bc5dff75a0973e (patch)
tree584d7085a6f336711ab6bd6de33303e3dcb54b19 /gcc/passes.c
parentae77c68b392ce7519050eda52205284d9fc68a4e (diff)
downloadgcc-d7567964ea0f6ff865f8488a06bc5dff75a0973e.zip
gcc-d7567964ea0f6ff865f8488a06bc5dff75a0973e.tar.gz
gcc-d7567964ea0f6ff865f8488a06bc5dff75a0973e.tar.bz2
sem_eval.adb (Find_Universal_Operator_Type): New subprogram to identify the operand type of an operator on universal operands...
2010-06-22 Thomas Quinot <quinot@adacore.com> * sem_eval.adb (Find_Universal_Operator_Type): New subprogram to identify the operand type of an operator on universal operands, when an explicit scope indication is present. Diagnose the case where such a call is ambiguous. (Eval_Arithmetic_Op, Eval_Relational_Op, Eval_Unary_Op): Use the above to identify the operand type so it can be properly frozen. * sem_res.adb (Make_Call_Into_Operator): Remove bogus freeze of operand type, done in an arbitrary, possibly incorrect type (the presence of some numeric type in the scope is checked for legality, but when more than one such type is in the scope, we just pick a random one, not necessarily the expected one). * sem_utils.ads, sem_utils.adb (Is_Universal_Numeric_Type): New utility subprogram. From-SVN: r161134
Diffstat (limited to 'gcc/passes.c')
0 files changed, 0 insertions, 0 deletions