+2009-07-13 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch10.adb, sem_ch12.adb, gnat1drv.adb, exp_ch4.adb: Fix casing of
+ several references to CodePeer.
+
+2009-07-13 Bob Duff <duff@adacore.com>
+
+ * exp_dist.adb (Build_From_Any_Function,Build_To_Any_Function,
+ Build_TypeCode_Function_All): Do not recurse if the type is the base
+ type.
+
2009-07-13 Robert Dewar <dewar@adacore.com>
* exp_ch4.adb: Minor comment change
Use_Opaque_Representation : Boolean;
begin
- if Is_Itype (Typ) then
+ -- The following test needs a comment ???
+
+ if Is_Itype (Typ) and then Typ /= Base_Type (Typ) then
Build_From_Any_Function
(Loc => Loc,
Typ => Etype (Typ),
-- opaque sequence of bytes.
begin
- if Is_Itype (Typ) then
+ -- The following test needs a comment ???
+
+ if Is_Itype (Typ) and then Typ /= Base_Type (Typ) then
Build_To_Any_Function
(Loc => Loc,
Typ => Etype (Typ),
Type_Name_Str : String_Id;
Type_Repo_Id_Str : String_Id;
+ -- Start of processing for Build_TypeCode_Function
+
begin
- if Is_Itype (Typ) then
+ -- The following test needs a comment ???
+
+ if Is_Itype (Typ) and then Typ /= Base_Type (Typ) then
Build_TypeCode_Function
(Loc => Loc,
Typ => Etype (Typ),
if CodePeer_Mode then
- -- Turn off inlining, confuses codepeer output and gains nothing
+ -- Turn off inlining, confuses CodePeer output and gains nothing
Front_End_Inlining := False;
Inline_Active := False;
Dynamic_Elaboration_Checks := False;
-- Suppress overflow checks since this is handled implicitely by
- -- codepeer. Enable all other language checks.
+ -- CodePeer. Enable all other language checks.
Suppress_Options := (Overflow_Check => True, others => False);
Enable_Overflow_Checks := False;
Debug_Generated_Code := False;
-- Turn cross-referencing on in case it was disabled (by e.g. -gnatD)
- -- Do we really need to spend time generating xref in codepeer
+ -- Do we really need to spend time generating xref in CodePeer
-- mode??? Consider setting Xref_Active to False.
Xref_Active := True;
Generate_SCIL := True;
- -- Enable assertions and debug pragmas, since they give codepeer
+ -- Enable assertions and debug pragmas, since they give CodePeer
-- valuable extra information.
Assertions_Enabled := True;
Debug_Pragmas_Enabled := True;
-- Suppress compiler warnings, since what we are interested in here
- -- is what codepeer can find out. Also disable all simple value
+ -- is what CodePeer can find out. Also disable all simple value
-- propagation. This is an optimization which is valuable for code
-- optimization, and also for generation of compiler warnings, but
- -- these are being turned off anyway, and codepeer understands
+ -- these are being turned off anyway, and CodePeer understands
-- things more clearly if references are not optimized in this way.
Warning_Mode := Suppress;
Debug_Flag_MM := True;
-- Set normal RM validity checking, and checking of IN OUT parameters
- -- (this might give codepeer more useful checks to analyze, to be
+ -- (this might give CodePeer more useful checks to analyze, to be
-- confirmed???). All other validity checking is turned off, since
- -- this can generate very complex trees that only confuse codepeer
+ -- this can generate very complex trees that only confuse CodePeer
-- and do not bring enough useful info.
Reset_Validity_Check_Options;
Validity_Check_In_Params := True;
-- Turn off style check options since we are not interested in any
- -- front-end warnings when we are getting code peer output.
+ -- front-end warnings when we are getting CodePeer output.
Reset_Style_Check_Options;
end if;