Echelon LonTal Stack User Manual
Page 165
LonTalk Stack Developer’s Guide
153
Important: Configuration property re-ordering and merging can reduce the
memory required for the template file, but can also result in slower access to
the application’s configuration properties by network management tools.
This can potentially cause a significant increase in the time required to
commission your device, especially on low-bandwidth channel types. You
should typically only use configuration property re-ordering and merging if
you must conserve memory. If you use configuration property re-ordering
and merging, be sure to test the effect on the time required to commission
and configure your device.
#pragma enable_sd_nv_names
Causes the LonTalk Interface Developer utility to include the network
variable names in the self-documentation (SD) information when
self-identification (SI) data is generated. This pragma can only appear once
in the model file.
#pragma fyi_off
#pragma fyi_on
Controls the compiler's printing of informational messages. Informational
messages are less severe than warnings, yet can indicate a problem in the
model file. Informational messages are off by default at the start of
compilation. These pragmas can be intermixed multiple times throughout a
program to turn informational message printing on and off as needed.
#pragma hidden
This pragma is for use only in the
#pragma ignore_notused symbol
Requests that the compiler ignore the symbol-not-referenced flag for the
named symbol. The compiler normally prints warning messages for any
variables, functions, I/O objects, and so on, that are declared but are never
used in the model file. This pragma can be used one or more times to
suppress the warning on a symbol-by-symbol basis.
The pragma should appear after the variable declaration. A good coding
convention is to place this pragma on the line that immediately follows the
variable's declaration. For automatic scope variables, the pragma must
appear no later than the line preceding the close brace character '}', which
terminates the scope containing the variable. There is no terminating brace
for any variable declared at file scope.
#pragma no_hidden
This pragma is for use only in the
#pragma relaxed_casting_off
#pragma relaxed_casting_on
These pragmas control whether the compiler treats a cast that removes the
const attribute as an error or as a warning. The cast can be explicit or
implicit (for example, an automatic conversion due to assignment).
Normally, the compiler considers any conversion that removes the const
attribute to be an error. Turning on the relaxed casting feature causes the
compiler to treat this condition as a warning instead. These pragmas can be
intermixed throughout a program to enable and disable the relaxed casting
as needed.