This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r191980 - in /trunk/gcc/ada: ChangeLog checks.a...
- From: charlet at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Tue, 02 Oct 2012 13:05:08 -0000
- Subject: r191980 - in /trunk/gcc/ada: ChangeLog checks.a...
Author: charlet
Date: Tue Oct 2 13:05:08 2012
New Revision: 191980
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=191980
Log:
2012-10-02 Ben Brosgol <brosgol@adacore.com>
* gnat_rm.texi: Minor editing.
2012-10-02 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Function_Return): Reject a return
expression whose type is a local access to subprogram type.
2012-10-02 Robert Dewar <dewar@adacore.com>
* sem_eval.adb: Minor improvement to Compile_Time_Compare.
2012-10-02 Robert Dewar <dewar@adacore.com>
* checks.adb (Apply_Arithmetic_Overflow_Minimized_Eliminated):
Fix base type problem that resulted in improper conversion.
(Minimize_Eliminate_Overflow_Checks): Properly handle top
level case to avoid unnecessary conversion to bignum or LLI.
(Minimize_Eliminate_Overflow_Checks): Implement uniform two phase
approach for arithmetic operators and for if/case expressions.
* checks.ads: Minor comment fix.
* exp_ch4.adb (Minimized_Eliminated_Overflow_Check): New function,
implements a uniform way of treating minimized/eliminated checks in
two phases.
(Expand_Compare_Minimize_Eliminate_Overflow): Fix cut and
paste error resulting in wrong results for less than in some
cases. (Expand_Membership_Minimize_Eliminate_Overflow):
Fix error caused by incorrect capture of operand types.
(Expand_Membership_Minimize_Eliminate_Overflow): Fix error in
handling of bignum case.
(Expand_N_Case_Expression): Implement
proper two phase handling (Expand_N_If_Expression): Implement
proper two phase handling (Expand_N_Op_Abs): Implement proper
two phase handling ditto for all other arithmetic operators
* sem_res.adb (Resolve_If_Expression): Avoid introducing
unneeded conversions.
Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/checks.adb
trunk/gcc/ada/checks.ads
trunk/gcc/ada/exp_ch4.adb
trunk/gcc/ada/gnat_rm.texi
trunk/gcc/ada/sem_ch6.adb
trunk/gcc/ada/sem_eval.adb
trunk/gcc/ada/sem_res.adb