[multiple changes]
2014-07-31 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Make_Index): Reject properly the use of 'Length in a discrete range, when 'range was probably intended. 2014-07-31 Robert Dewar <dewar@adacore.com> * sem_warn.adb, sem_warn.ads (Has_Junk_Name): Moved from body to spec. From-SVN: r213339
This commit is contained in:
parent
9d2a20713d
commit
9d827cd579
|
@ -1,3 +1,12 @@
|
||||||
|
2014-07-31 Ed Schonberg <schonberg@adacore.com>
|
||||||
|
|
||||||
|
* sem_ch3.adb (Make_Index): Reject properly the use of 'Length
|
||||||
|
in a discrete range, when 'range was probably intended.
|
||||||
|
|
||||||
|
2014-07-31 Robert Dewar <dewar@adacore.com>
|
||||||
|
|
||||||
|
* sem_warn.adb, sem_warn.ads (Has_Junk_Name): Moved from body to spec.
|
||||||
|
|
||||||
2014-07-31 Robert Dewar <dewar@adacore.com>
|
2014-07-31 Robert Dewar <dewar@adacore.com>
|
||||||
|
|
||||||
* frontend.adb: Minor reformatting.
|
* frontend.adb: Minor reformatting.
|
||||||
|
|
|
@ -17285,10 +17285,16 @@ package body Sem_Ch3 is
|
||||||
|
|
||||||
elsif Nkind (N) = N_Attribute_Reference then
|
elsif Nkind (N) = N_Attribute_Reference then
|
||||||
|
|
||||||
-- The parser guarantees that the attribute is a RANGE attribute
|
-- Catch beginner's error (use of attribute other than 'Range)
|
||||||
|
|
||||||
|
if Attribute_Name (N) /= Name_Range then
|
||||||
|
Error_Msg_N ("expect attribute ''Range", N);
|
||||||
|
Set_Etype (N, Any_Type);
|
||||||
|
return;
|
||||||
|
end if;
|
||||||
|
|
||||||
-- If the node denotes the range of a type mark, that is also the
|
-- If the node denotes the range of a type mark, that is also the
|
||||||
-- resulting type, and we do no need to create an Itype for it.
|
-- resulting type, and we do not need to create an Itype for it.
|
||||||
|
|
||||||
if Is_Entity_Name (Prefix (N))
|
if Is_Entity_Name (Prefix (N))
|
||||||
and then Comes_From_Source (N)
|
and then Comes_From_Source (N)
|
||||||
|
|
|
@ -128,16 +128,6 @@ package body Sem_Warn is
|
||||||
-- If E is a parameter entity for a subprogram body, then this function
|
-- If E is a parameter entity for a subprogram body, then this function
|
||||||
-- returns the corresponding spec entity, if not, E is returned unchanged.
|
-- returns the corresponding spec entity, if not, E is returned unchanged.
|
||||||
|
|
||||||
function Has_Junk_Name (E : Entity_Id) return Boolean;
|
|
||||||
-- Return True if the entity name contains any of the following substrings:
|
|
||||||
-- discard
|
|
||||||
-- dummy
|
|
||||||
-- ignore
|
|
||||||
-- junk
|
|
||||||
-- unused
|
|
||||||
-- Used to suppress warnings on names matching these patterns. The contents
|
|
||||||
-- of Name_Buffer and Name_Len are destroyed by this call.
|
|
||||||
|
|
||||||
function Has_Pragma_Unmodified_Check_Spec (E : Entity_Id) return Boolean;
|
function Has_Pragma_Unmodified_Check_Spec (E : Entity_Id) return Boolean;
|
||||||
-- Tests Has_Pragma_Unmodified flag for entity E. If E is not a formal,
|
-- Tests Has_Pragma_Unmodified flag for entity E. If E is not a formal,
|
||||||
-- this is simply the setting of the flag Has_Pragma_Unmodified. If E is
|
-- this is simply the setting of the flag Has_Pragma_Unmodified. If E is
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
-- --
|
-- --
|
||||||
-- S p e c --
|
-- S p e c --
|
||||||
-- --
|
-- --
|
||||||
-- Copyright (C) 1999-2013, Free Software Foundation, Inc. --
|
-- Copyright (C) 1999-2014, Free Software Foundation, Inc. --
|
||||||
-- --
|
-- --
|
||||||
-- GNAT is free software; you can redistribute it and/or modify it under --
|
-- 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- --
|
-- terms of the GNU General Public License as published by the Free Soft- --
|
||||||
|
@ -239,4 +239,18 @@ package Sem_Warn is
|
||||||
-- block or subprogram to see if there are any variables for which useless
|
-- block or subprogram to see if there are any variables for which useless
|
||||||
-- assignments were made (assignments whose values were never read).
|
-- assignments were made (assignments whose values were never read).
|
||||||
|
|
||||||
|
----------------------
|
||||||
|
-- Utility Routines --
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
function Has_Junk_Name (E : Entity_Id) return Boolean;
|
||||||
|
-- Return True if the entity name contains any of the following substrings:
|
||||||
|
-- discard
|
||||||
|
-- dummy
|
||||||
|
-- ignore
|
||||||
|
-- junk
|
||||||
|
-- unused
|
||||||
|
-- Used to suppress warnings on names matching these patterns. The contents
|
||||||
|
-- of Name_Buffer and Name_Len are destroyed by this call.
|
||||||
|
|
||||||
end Sem_Warn;
|
end Sem_Warn;
|
||||||
|
|
Loading…
Reference in New Issue