[multiple changes]

2009-07-27  Sergey Rybin  <rybin@adacore.com>

	* gnat_ugn.texi: Update gnatcheck doc.

2009-07-27  Arnaud Charlet  <charlet@adacore.com>

	* lib-xref.ads: Allocate/document 'o' char for use by references to
	spark 'own' variables.

From-SVN: r150112
This commit is contained in:
Arnaud Charlet 2009-07-27 15:26:41 +02:00
parent 9337aa0a75
commit 4524c32c88
3 changed files with 23 additions and 8 deletions

View file

@ -1,3 +1,12 @@
2009-07-27 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Update gnatcheck doc.
2009-07-27 Arnaud Charlet <charlet@adacore.com>
* lib-xref.ads: Allocate/document 'o' char for use by references to
spark 'own' variables.
2009-07-27 Gary Dismukes <dismukes@adacore.com>
* sem_ch6.adb (Analyze_Function_Return): Set Referenced on return

View file

@ -21252,15 +21252,15 @@ This rule has no parameters.
@cindex @code{Deep_Inheritance_Hierarchies} rule (for @command{gnatcheck})
@noindent
Flags a tagged derived type declaration if its depth (in its inheritance
Flags a tagged derived type declaration or an interface type declaration if
its depth (in its inheritance
hierarchy) exceeds the value specified by the @option{N} rule parameter.
The depth of a root tagged type (ie, a tagged type that is not a derived type)
is 0.
If tagged type T2 derives directly from tagged type T1, then the depth of T2
is one more than the depth of T1.
The inheritance depth of a tagged type or interface type is defined as 0 for
a type with no parent and no progenitor, and otherwise as 1 + max of the
depths of the immediate parent and immediate progenitors.
This rule does not flag interface types or private extension
This rule does not flag private extension
declarations. In the case of a private extension, the correspondong full
declaration is checked.
@ -21268,8 +21268,9 @@ This rule has the following (mandatory) parameter for the @option{+R} option:
@table @emph
@item N
Positive integer specifying the maximal allowed depth of any inheritance
hierarchy.
Integer not less then -1 specifying the maximal allowed depth of any inheritance
hierarchy. If the rule parameter is set to -1, the rule flags all the declarations
of tagged and interface types.
@end table

View file

@ -177,6 +177,7 @@ package Lib.Xref is
-- k = implicit reference to parent unit in child unit
-- l = label on END line
-- m = modification
-- o = own variable reference (SPARK only)
-- p = primitive operation
-- P = overriding primitive operation
-- r = reference
@ -271,6 +272,10 @@ package Lib.Xref is
-- graph construction). Again, in the case of an accept there
-- can be multiple l lines.
-- o is used for variables referenced from a SPARK 'own'
-- definition. In the SPARK language, it is allowed to use a
-- variable before its actual declaration.
-- p is used to mark a primitive operation of the given entity.
-- For example, if we have a type Tx, and a primitive operation
-- Pq of this type, then an entry in the list of references to