+2015-10-20 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_smem.adb (Check_Shared_Var): Clean up code that handles
+ type declarations with discriminants, remove obsolete check.
+
+2015-10-20 Arnaud Charlet <charlet@adacore.com>
+
+ * par_sco.adb: Minor style fixes.
+
+2015-10-20 Vincent Celier <celier@adacore.com>
+
+ * debug.adb: Update documentation of -gnatdu.
+
2015-10-20 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb Add aspect Volatile_Function to table
-- dt Print full tree. The generated tree is output (see also df,dy)
-- du Uncheck categorization pragmas. This debug switch causes the
- -- categorization pragmas (Pure, Preelaborate etc) to be ignored
- -- so that normal checks are not made (this is particularly useful
- -- for adding temporary debugging code to units that have pragmas
- -- that are inconsistent with the debugging code added.
+ -- elaboration control pragmas (Pure, Preelaborate, etc.) and the
+ -- categorization pragmas (Shared_Passive, Remote_Types, etc.) to be
+ -- ignored, so that normal checks are not made (this is particularly
+ -- useful for adding temporary debugging code to units that have
+ -- pragmas that are inconsistent with the debugging code added).
-- dv Output trace of overload resolution. Outputs messages for
-- overload attempts that involve cascaded errors, or where
- -- an interepretation is incompatible with the context.
+ -- an interpretation is incompatible with the context.
-- dw Write semantic scope stack messages. Each time a scope is created
-- or removed, a message is output (see the Sem_Ch8.Push_Scope and
-- Now we have the definitive set of SCO entries, register them in the
-- corresponding hash table.
- for I in 1 .. Hash_Entries.Last loop
+ for J in 1 .. Hash_Entries.Last loop
SCO_Raw_Hash_Table.Set
- (Hash_Entries.Table (I).Sloc,
- Hash_Entries.Table (I).SCO_Index);
+ (Hash_Entries.Table (J).Sloc,
+ Hash_Entries.Table (J).SCO_Index);
end loop;
+
Hash_Entries.Free;
end Process_Decisions;
-- --
-- B o d y --
-- --
--- Copyright (C) 1998-2008, Free Software Foundation, Inc. --
+-- Copyright (C) 1998-2015, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
elsif Is_Record_Type (T)
and then not Is_Constrained (T)
+ and then (Nkind (N) /= N_Object_Declaration
+ or else No (Expression (N)))
then
Error_Msg_N
("unconstrained variant records " &
elsif Is_Record_Type (T) then
if Has_Discriminants (T) then
+
+ -- Check for access discriminants.
+
C := First_Discriminant (T);
while Present (C) loop
- if Comes_From_Source (C) then
+ if Is_Access_Type (Etype (C)) then
return True;
else
C := Next_Discriminant (C);