[multiple changes]

2015-10-20  Vincent Celier  <celier@adacore.com>

	* sem_cat.adb (Check_Categorization_Dependencies): Do nothing
	when -gnatdu is specified.

2015-10-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (analyze_Subprogram_Renaming): The actual for a
	formal abstract subprogram must have a controlling type.
	* stand.ads: Minor whitespace cleanup.

From-SVN: r229035
This commit is contained in:
Arnaud Charlet 2015-10-20 12:04:44 +02:00
parent 47b79f7801
commit 46ee0270b7
4 changed files with 27 additions and 9 deletions

View File

@ -1,3 +1,14 @@
2015-10-20 Vincent Celier <celier@adacore.com>
* sem_cat.adb (Check_Categorization_Dependencies): Do nothing
when -gnatdu is specified.
2015-10-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (analyze_Subprogram_Renaming): The actual for a
formal abstract subprogram must have a controlling type.
* stand.ads: Minor whitespace cleanup.
2015-10-20 Gary Dismukes <dismukes@adacore.com>
* sem_ch13.adb: Minor reference change (RM => AARM).

View File

@ -185,9 +185,10 @@ package body Sem_Cat is
begin
-- Intrinsic subprograms are preelaborated, so do not impose any
-- categorization dependencies.
-- categorization dependencies. Also, ignore categorization
-- dependencies when compilation switch -gnatdu is used.
if Is_Intrinsic_Subprogram (Depended_Entity) then
if Is_Intrinsic_Subprogram (Depended_Entity) or else Debug_Flag_U then
return;
end if;

View File

@ -3221,7 +3221,13 @@ package body Sem_Ch8 is
Find_Dispatching_Type (Old_S);
begin
if Old_S_Ctrl_Type /= New_S_Ctrl_Type then
-- The actual must match the (instance of the) formal,
-- and must be a controlling type.
if Old_S_Ctrl_Type /= New_S_Ctrl_Type
or else No (New_S_Ctrl_Type)
then
Error_Msg_NE
("actual must be dispatching subprogram for type&",
Nam, New_S_Ctrl_Type);

View File

@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2014, Free Software Foundation, Inc. --
-- Copyright (C) 1992-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- --
@ -330,13 +330,13 @@ package Stand is
-- situations. They have names that are suitable for use in such
-- error messages (see body for actual names used).
Standard_Void_Type : Entity_Id;
Standard_Void_Type : Entity_Id;
-- This is a type used to represent the return type of procedures
Standard_Exception_Type : Entity_Id;
Standard_Exception_Type : Entity_Id;
-- This is a type used to represent the Etype of exceptions
Standard_A_String : Entity_Id;
Standard_A_String : Entity_Id;
-- An access to String type used for building elements of tables
-- carrying the enumeration literal names.
@ -446,8 +446,8 @@ package Stand is
-- this type is always IEEE format.
Universal_Fixed : Entity_Id;
-- Entity for universal fixed type. This is a type with arbitrary
-- precision that can only appear in a context with a specific type.
-- Entity for universal fixed type. This is a type with arbitrary
-- precision that can only appear in a context with a specific type.
-- Universal_Fixed labels the result of multiplication or division of
-- two fixed point numbers, and has no specified bounds (since, unlike
-- universal integer and universal real, it is never used for runtime