Language Change Specification for Environment API

LCS Number: LCS-2016-006f
Version: 4
Date: 18-Mar-2017
Status: Voting
Author: Thomas Preusser
Jim Lewis
Email: Main.ThomasPreusser
Source Doc:  
Summary: Expose standard conditional analysis identifiers.
Dependencies: LCS_2016_061

Voting Results: Cast your votes here


  1. Martin Zabel - 2017-03-07 - ver 3
  2. Jim Lewis- 18-Mar-2017 - ver 4
  3. Patrick Lehmann - 2017-03-14 - ver 4
  4. Thomas Preusser - 2017-03-15 - ver 3
  5. Rob Gaddi - 2017-03-19 ver 4



Revision Notes

Revision 4: 18-Mar-2017

  • Updated per meeting 16-Mar-2017

Revision 3: Initial 07-Mar-2017

Style Notes

Changes are shown in red font.
Deletions are crossed out.
Editing or reviewing notes in green font.

Reviewing Notes

This is a proposal extending LCS006e. It exposes the standard conditional analysis identifiers directly through their names as deferred constants of package ENV.

Details of Language Change

16.5 Standard environment package

16.5.1 General

Package ENV contains declarations that provide a VHDL interface to the host environment.

package ENV is
  procedure STOP (STATUS: INTEGER);
  procedure STOP;
  procedure FINISH;

  [... LCS-2016-011 ...]
  [... LCS-2016-006c ...]
  [... LCS-2016-006e ...]
  [... LCS-2016-006g ...]

  impure function VHDL_VERSION return string ;
  function TOOL_TYPE return string ;
  function TOOL_VENDOR return string ;
  function TOOL_NAME return string ;
  function TOOL_EDITION return string ;
  function TOOL_VERSION return string ;
end package ENV;

16.5.5 System Environment API [NEW]

(This paragraph is to follow the ones possibly added by LCS006e and LCS006g.)

The impure function VHDL_VERSION returns the value of the standard conditional analysis identifier used for the design unit from which it is called.

The functions TOOL_TYPE, TOOL_VENDOR, TOOL_NAME, TOOL_EDITION, and TOOL_VERSION return the value of the corresponding standard conditional analysis identifiers of the same name.


The red edits miss a textual description in section 16.5.

Package ENV has no body. It is tool defined.

The paragraph sign is not used in the LRM to reference other sections.

-- Patrick Lehmann - 2017-03-02

Agree with Patrick, red text needs a paragraph description. Blue text needs to be deleted to separate this proposal from others.

-- Jim Lewis - 2017-03-05

See my comments for LCS 006g.

How does this LCS handle user defined conditional analysis identifiers?

-- Patrick Lehmann - 2017-03-06

PL: How does this LCS handle user defined conditional analysis identifiers?

It simply does not. It only provides a shorthand for the standard identifiers as requested by Jim (see his comments on LCS 006e). Full access to all conditional analysis identifiers is rather achieved through LCD 006 d, e or g.

-- Thomas Preusser - 2017-03-07

Topic revision: r18 - 2017-04-02 - 15:46:38 - PatrickLehmann
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback