PG5 symbol naming conventions and the scope of symbol types

FAQ #100375

Attached to this FAQ you will find a document that describes the symbol naming conventions to be obeyed by PG5 users (and especially by FBox developers).

Further on, the document contains a summary over the scopes of the different symbol types as well as a summary over their declarators.


fWhy is it important to follow the symbol naming conventions?
PG5 itself as well as FBox- and FB-libraries do work with symbols. In order to avoid symbol collisions, a programmer is urged to follow some simple rules that guarantee that the user-defined symbols and the PG5 internal and FBox specific symbols do not conflict (e.g. do have the same name but not the same values).
These rules are described in the attached document. Additionally, this document does also point out the reserved words and symbol names that mustn’t be used by users or FBox developers.

Why is it important to consider the scope of symbols?
Depending on the type of a symbol, it is "visible" in a defined region (local in a program file, global in a CPU or local in a macro). Especially when developing FBoxes, an uncorrect choice of the used symbol types will cause errors such as "Multidefined symbols".

Why mustn't a user use symbol names (and macro names) from the SBC scope?
Please note that in case you have used an FBox Macro name that belongs to the range of the SBC symbols (e.g. _sfup_blablabla) and by accident we introduce a new FBox with this name in the next PG5 version, you will receive errors from Fupla (The macro with the name _sfup_blablabla is defined twice...) and all your project with your FBox won't be functional any more! You'll have to re-write all your projects in this case.



Local FAQ Deutschland / Symbol Editor

PG5 2.0 / FBox Builder

Last update: 25.05.2015 07:32

First release: 31.05.2005 12:05

Views: 5398

The requested software / document is no longer marketed by Saia-Burgess Controls AG and without technical support. It is an older software version which can be operated only on certain now no longer commercially available products.