Mercurial > hg > CbC > CbC_gcc
diff gcc/ada/lib-writ.ads @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line diff
--- a/gcc/ada/lib-writ.ads Thu Oct 25 07:37:49 2018 +0900 +++ b/gcc/ada/lib-writ.ads Thu Feb 13 11:34:05 2020 +0900 @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2018, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2019, 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- -- @@ -56,7 +56,8 @@ -- incompatible with new versions of the compiler. Any changes to ali file -- formats must be carefully evaluated to understand any such possible -- conflicts, and in particular, it is very undesirable to create conflicts - -- between older versions of GPS and newer versions of the compiler. + -- between older versions of GNAT Studio and newer versions of the + -- compiler. -- If the following guidelines are respected, downward compatibility -- problems (old tools reading new ali files) should be minimized: @@ -629,14 +630,13 @@ -- by the current unit. One Z line is present for each unit that is -- only implicitly withed by the current unit. The first parameter is -- the unit name in internal format. The second parameter is the file - -- name of the body unit on which the current compilation unit depends, - -- except when in GNATprove mode or when the unit is a remote call - -- interface. In these cases, when packages that require a body have - -- no associated source file, the file name of the spec is used instead - -- to allow partial analysis of incomplete sources. The third parameter - -- is the file name of the library information file that contains the - -- results of compiling this unit. The optional modifiers are used as - -- follows: + -- name of the file that must be compiled to compile this unit. It is + -- usually the file for the body, except for packages which have no + -- body. For units that need a body, if the source file for the body + -- cannot be found, the file name of the spec is used instead. The + -- third parameter is the file name of the library information file + -- that contains the results of compiling this unit. The optional + -- modifiers are used as follows: -- E pragma Elaborate applies to this unit @@ -847,6 +847,108 @@ -- dependency checking, but must be present for proper interpretation -- of the cross-reference data. + -- ------------------------- + -- -- G Invocation Graph -- + -- ------------------------- + + -- An invocation graph line has the following format: + -- + -- G line-kind line-attributes + -- + -- Attribute line-kind is a Character which denotes the nature of the + -- line. Table ALI.Invocation_Graph_Line_Codes lists all legal values. + -- + -- Attribute line-attributes depends on the value of line-kind, and is + -- contents are described further below. + -- + -- An invocation signature uniquely identifies an invocation construct in + -- the ALI file namespace, and has the following format: + -- + -- [ name scope line column (locations | "none") ] + -- + -- Attribute name is a String which denotes the name of the construct + -- + -- Attribute scope is a String which denotes the qualified name of the + -- scope where the construct is declared. + -- + -- Attribute line is a Positive which denotes the line number where the + -- initial declaration of the construct appears. + -- + -- Attribute column is a Positive which denotes the column number where + -- the initial declaration of the construct appears. + -- + -- Attribute locations is a String which denotes the line and column + -- locations of all instances where the initial declaration of the + -- construct appears. + -- + -- When the line-kind denotes invocation graph attributes, line-attributes + -- are set as follows: + -- + -- encoding-kind + -- + -- Attribute encoding-kind is a Character which specifies the encoding + -- kind used when collecting invocation constructs and relations. Table + -- ALI.Invocation_Graph_Encoding_Codes lists all legal values. + -- + -- When the line-kind denotes an invocation construct, line-attributes are + -- set as follows: + -- + -- construct-kind construct-spec-placement construct-body-placement + -- construct-signature + -- + -- Attribute construct-kind is a Character which denotes the nature of + -- the construct. Table ALI.Invocation_Construct_Codes lists all legal + -- values. + -- + -- Attribute construct-spec-placement is a Character which denotes the + -- placement of the construct's spec within the unit. All legal values + -- are listed in table ALI.Spec_And_Body_Placement_Codes. + -- + -- Attribute construct-body-placement is a Character which denotes the + -- placement of the construct's body within the unit. All legal values + -- are listed in table ALI.Spec_And_Body_Placement_Codes. + -- + -- Attribute construct-signature is the invocation signature of the + -- construct. + -- + -- When the line-kind denotes an invocation relation, line-attributes are + -- set as follows: + -- + -- relation-kind (extra-name | "none") invoker-signature + -- target-signature + -- + -- Attribute relation-kind is a Character which denotes the nature of + -- the relation. All legal values are listed in ALI.Invocation_Codes. + -- + -- Attribute extra-name is a String which denotes the name of an extra + -- entity used for error diagnostics. The value of extra-name depends + -- on the relation-kind as follows: + -- + -- Accept_Alternative - related entry + -- Access_Taken - related subprogram + -- Call - not present + -- Controlled_Adjustment - related controlled type + -- Controlled_Finalization - related controlled type + -- Controlled_Initialization - related controlled type + -- Default_Initial_Condition_Verification - related private type + -- Initial_Condition_Verification - not present + -- Instantiation - not present + -- Internal_Controlled_Adjustment - related controlled type + -- Internal_Controlled_Finalization - related controlled type + -- Internal_Controlled_Initialization - related controlled type + -- Invariant_Verification - related private type + -- Postcondition_Verification - related routine + -- Protected_Entry_Call - not present + -- Protected_Subprogram_Call - not present + -- Task_Activation - not present + -- Task_Entry_Call - not present + -- Type_Initialization - related type + -- + -- Attribute invoker-signature is the invocation signature of the + -- invoker. + -- + -- Attribute target-signature is the invocation signature of the target + -------------------------- -- Cross-Reference Data -- --------------------------