From 3a8e3f636ac1597af351f7907ab684959d41b226 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Thu, 11 Apr 2013 12:18:47 +0200 Subject: [multiple changes] 2013-04-11 Johannes Kanig * opt.ads New global boolean Frame_Condition_Mode to avoid referring to command line switch. * gnat1drv.adb (Gnat1drv) set frame condition mode when -gnatd.G is present, and disable Code generation in that case. Disable ALI file generation when switch is *not* present. 2013-04-11 Ed Schonberg * sem_ch6.adb (Analyze_Expression_Function): Perform the pre-analysis on a copy of the expression, to prevent downstream visbility issues involving operators and instantiations. From-SVN: r197758 --- gcc/ada/sem_ch6.adb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'gcc/ada/sem_ch6.adb') diff --git a/gcc/ada/sem_ch6.adb b/gcc/ada/sem_ch6.adb index 7b31ff57..707ed45 100644 --- a/gcc/ada/sem_ch6.adb +++ b/gcc/ada/sem_ch6.adb @@ -444,7 +444,12 @@ package body Sem_Ch6 is Insert_After (Last (Decls), New_Body); Push_Scope (Id); Install_Formals (Id); - Preanalyze_Spec_Expression (Expression (Ret), Etype (Id)); + + -- Do a preanalysis of the expression on a separate copy, to + -- prevent visibility issues later with operators in instances. + + Preanalyze_Spec_Expression + (New_Copy_Tree (Expression (Ret)), Etype (Id)); End_Scope; end; end if; -- cgit v1.1