[multiple changes]

2009-08-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Access_Definition): Do not create an Itype reference for
	an anonymous access type whose designated type is generic.

2009-08-17  Arnaud Charlet  <charlet@adacore.com>

	* comperr.adb (Compiler_Abort): Do not generate a bug box when in
	codepeer mode, friendlier.

From-SVN: r150824
This commit is contained in:
Arnaud Charlet 2009-08-17 11:28:48 +02:00
parent b76e28c64d
commit 89c273b457
3 changed files with 25 additions and 4 deletions

View File

@ -1,3 +1,13 @@
2009-08-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Access_Definition): Do not create an Itype reference for
an anonymous access type whose designated type is generic.
2009-08-17 Arnaud Charlet <charlet@adacore.com>
* comperr.adb (Compiler_Abort): Do not generate a bug box when in
codepeer mode, friendlier.
2009-08-10 Laurent GUERBY <laurent@guerby.net>
* make.adb: Handle multilib

View File

@ -32,6 +32,7 @@ with Debug; use Debug;
with Errout; use Errout;
with Gnatvsn; use Gnatvsn;
with Namet; use Namet;
with Opt; use Opt;
with Osint; use Osint;
with Output; use Output;
with Sinput; use Sinput;
@ -121,19 +122,26 @@ package body Comperr is
-- practical interface, since giving scary bug boxes on unsupported
-- features is definitely not helpful.
-- Similarly if we are generating SCIL, an error message is sufficient
-- instead of generating a bug box.
-- Note that the call to Error_Msg_N below sets Serious_Errors_Detected
-- to 1, so we use the regular mechanism below in order to display a
-- "compilation abandoned" message and exit, so we still know we have
-- this case (and -gnatdk can still be used to get the bug box).
if VM_Target = CLI_Target
if (VM_Target = CLI_Target or else CodePeer_Mode)
and then Serious_Errors_Detected = 0
and then not Debug_Flag_K
and then Sloc (Current_Error_Node) > No_Location
then
Error_Msg_N
("unsupported construct in this context",
Current_Error_Node);
if VM_Target = CLI_Target then
Error_Msg_N
("unsupported construct in this context",
Current_Error_Node);
else
Error_Msg_N ("cannot generate 'S'C'I'L", Current_Error_Node);
end if;
end if;
-- If any errors have already occurred, then we guess that the abort

View File

@ -939,9 +939,12 @@ package body Sem_Ch3 is
-- type declaration. In either case, do not create a reference for a
-- type obtained through a limited_with clause, because this would
-- introduce semantic dependencies.
-- Similarly, do not create a reference if the designated type is a
-- generic formal, because no use of it will reach the backend.
elsif Nkind (Related_Nod) = N_Function_Specification
and then not From_With_Type (Desig_Type)
and then not Is_Generic_Type (Desig_Type)
then
if Present (Enclosing_Prot_Type) then
Build_Itype_Reference (Anon_Type, Parent (Enclosing_Prot_Type));