{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}


Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
IEEE LANGUAGE REFERENCE MANUAL Std P 1076a -199 9 2000/ D 3 Clause 4 55 Copyright © 2000, IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change. Clause 4 Declarations The language defines several kinds of entities that are declared explicitly or implicitly by declarations. declaration ::= type_declaration | subtype_declaration | object_declaration | interface_declaration | alias_declaration | attribute_declaration | component_declaration | group_template_declaration | group_declaration | entity_declaration | configuration_declaration | subprogram_declaration | package_declaration | primary_unit | architecture_body 1 For each form of declaration, the language rules define a certain region of text called the scope of the declaration (see 10.2). Each form of declaration associates an identifier with a named entity. Only within its scope, there are places where it is possible to use the identifier to refer to the associated declared entity; these places are defined by the visibility rules (see 10.3). At such places the identifier is said to be a name of the entity; the name is said to denote the associated entity. This section clause 2 describes type and subtype declarations, the various kinds of object declarations, alias decla- rations, attribute declarations, component declarations, and group and group template declarations. The other kinds of declarations are described in Section Clause 3 1 and Section Clause 4 2. A declaration takes effect through the process of elaboration. Elaboration of declarations is discussed in Section Clause 5 12. 4.1 Type declarations A type declaration declares a type. 1. LCS 3. 2. To conform to IEEE rules. 3. To conform to IEEE rules. 4. To conform to IEEE rules. 5. To conform to IEEE rules.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
IEEE Std P 1076a -1999 2000/D3 IEEE STANDARD VHDL 56 Clause 4 Copyright © 2000, IEEE. All rights reserved. This is an unapproved IEEE Standards Draft, subject to change . type_declaration ::= full_type_declaration | incomplete_type_declaration full_type_declaration ::= type identifier is type_definition ; type_definition ::= scalar_type_definition | composite_type_definition | access_type_definition | file_type_definition | protected_type_definition The types created by the elaboration of distinct type definitions are distinct types. The elaboration of the type defini- tion for a scalar type or a constrained array type creates both a base type and a subtype of the base type. The simple name declared by a type declaration denotes the declared type, unless the type declaration declares both a base type and a subtype of the base type, in which case the simple name denotes the subtype and the base type is anon- ymous. A type is said to be anonymous if it has no simple name. For explanatory purposes, this standard sometimes refers to an anonymous type by a pseudo-name, written in italics, and uses such pseudo-names at places where the syntax normally requires an identifier.
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}