Guide to the HP Structure Definition Language
Appendix A
HP SDL Diagnostic Messages
This appendix summarizes the HP SDL diagnostic messages. All messages
indicating errors in HP SDL syntax specify the line number in the HP
SDL source file at which the error occurred.
ABORT, Fatal internal error; unable to continue execution
Fatal: An internal error has occurred.
User Action: Please report the problem to Technical
Languages and Environments (TL&E).
ADROBJBAS, Address object object-name must have based storage
class [Line n]
Error: An address item is pointing to an aggregate
that is not based.
User Action: Change the storage class of the aggregate
to BASED.
BADNODETYPE, internal node type is unknown for language
language-name
Warning: A language backend has encountered a node
type in the parsed SDL input that reflects a SDL element which the
language does not support. For example, HP OpenVMS DCL does not support
aggregates or entries, only constants.
User Action: Depending on your needs, ignore the
warning or change the SDL input file.
BASEALIGN, Invalid expression with BASEALIGN option. Value must be in
range 0 to 124. basealign-parameter [Line n]
Error: The value for the /BASEALIGN qualifier is
smaller than 0 or larger than 124.
User Action: Use a value in the range [0 ... 124].
BUGCHECK, Internal consistency failure [Line n] - please
submit a bug report
Fatal: SDL has detected an internal error or
inconsistency.
User Action: Please submit a bug report to Technical
Languages and Environments (TL&E).
DIMENSIONSTAR, DIMENSION * for MEMBER "member-name" has no
known discriminant [Line n]
Warning: The use of "DIMENSION *" within an aggregate
is not allowed.
User Action: Use fixed values for "DIMENSION" within
all aggregate.
DUPCONATT, Item item-name has duplicate or conflicting
attributes [Line n]
Error: A declaration contains keywords that are not
compatible.
User Action: Verify the syntax of the HP SDL
declaration, correct the declaration, and invoke HP SDL again.
ERREXIT, Error exit
Fatal: Previous errors prevent continuation.
User Action: Correct the errors and invoke HP SDL
again.
FILFORMUNSUPP, RMS file format error reading intermediate file.
Error: An intermediate file (.SDI) cannot be read due
to wrong RMS attributes.
User Action: Make sure that the intermediate file is a
sequential file, variable length, maximum 510 bytes, longest 510 bytes,
carriage return carriage control.
FIXUP, Temporary hardcoded list used to discriminate for MEMBER
"member-name" [Line n]
Informational:
From the comment in the SDLADA backend:
This is
informational, with the first line otherwise being identical to a
warning, to aid diagnosing problems where someone makes a copy of a
construct on our hardcoded list without changing SDL.
This message is issued together with the DIMENSIONSTAR diagnostic.
User Action:
????????????????????????????????????????????????????????????????????
?????????
IDENTGTR31, SDL-generated identifier longer than 31 characters exceeds
capacity of language-name compiler [Line n]
Warning: The Pascal backend appends "$TYPE" to data
types that contain "DEF". The resulting name then can exceed 31
characters, the maximum length of Pascal type names on OpenVMS.
User Action: Don't use "DEF" in your type names and/or
shorten your type names.
ILLFORWREF, Illegal forward reference for output language
language [Line n]
Error: The specified output language does not allow
forward referencing, or the language does not allow forward referencing
in this context.
User Action: Correct or remove the forward reference.
IMMGTR32, Cannot pass values larger than 32 bits by immediate mechanism
[Line n]
Warning: Using VALUE is invalid for this parameter
because its size is greater than that of a longword. A reasonable
translation was attempted, however.
User Action: Verify that the output file contains a
satisfactory translation of the parameter description in your HP SDL
source file.
INCDEFSTRUC, Incompletely defined structure---structure-name
[Line n]
Error: A structure name has been referenced before the
structure has been completely defined.
User Action: Remove the reference and invoke HP SDL
again.
INFILOPN, Unable to open input file file-spec
Fatal: SDL cannot locate or open the SDL source file.
User Action: Verify that you correctly specified the
name of the source file.
INFILSDI, File format error reading intermediate file
file-spec. Possible version mismatch
Error: An intermediate file (.SDI) could not be read.
User Action: Check the spelling of the file name,
existence and protection of the file.
INTOVF, Integer overflow in expression [Line n]
Error: Evaluation of an SDL expression resulted in a
value that does not fit in a longword.
User Action: Correct the expression.
INVALIGN, Illegal value for /ALIGNMENT qualifier in command line
Error: The value of the /ALIGNMENT qualifier is not a
positive number.
User Action: Use a positive number as value for the
/ALIGNMENT qualifier.
INVBITFLD, Invalid bitfield bitfield-name---bitfields must be
aggregate members [Line n]
Error: Bit fields must be members of aggregates. They
cannot be scalar items.
User Action: Incorporate the BITFIELD declaration in
an aggregate.
INVDECL, Invalid DECLARE for type user-defined-name [Line
n]
Error: A DECLARE statement refers to a user
defined data type that is invalid for some reason unknown to the writer
of this documentation.
User Action:
????????????????????????????????????????????????????????????????????
?????????
INVEXPR, Invalid expression---cannot be resolved to a constant as
required, name-of-defined-item [Line n]>
Error: An non-constant expression has been used in a
context which requires a constant expression.
User Action: Use a constant expression.
INVFLDSIZ, Item item-name has bit field or offset length
greater than 32 [Line n]
Error: SDL cannot generate bit fields larger than 32
bits or cannot generate the proper bit mask.
User Action: Verify the BITFIELD declaration and
correct it. If the BITFIELD declaration occurs within an aggregate and
you specify the MASK option, verify that the bit offset of the start of
the declaration plus the bit field size does not exceed 32 bits.
INVLISTOPT, Invalid use of LIST attribute---LIST may only appear on the
last parameter. entry-name [Line n]
Error: The LIST attribute appears on a parameter other
than the last.
User Action: Remove the LIST attribute.
INVNAME, Item name is invalid
Error: The item name contains illegal characters or is
specified in an illegal context.
User Action: Correct or relocate the item name.
INVOUT, Invalid attributes for output language language [Line
n]
Error: An SDL construct or data type is invalid for
the specified target language.
User Action: Determine whether you specified the data
type or HP SDL declaration correctly, or whether you may be requesting
language output that you do not require. Either correct the declaration
or reissue the SDL command so that the indicated language output
routine does not execute.
INVPARMTYP, Invalid parameter type for language language [Line
n]
Error: A parameter specification is illegal for the
specified language.
User Action: Modify the parameter specification and
invoke HP SDL again.
INVREQPARAM, Required parameter encountered after an optional parameter
parameter-name [Line n]
Error: Required parameters must not follow optional
parameters.
User Action: Correct the error and invoke HP SDL again.
INVSHRIMG, Shareable image not found specified-language
Error: SDL cannot find the image to support the
specified language.
User Action: Verify that the language image is located
in the appropriate area. HP SDL searches for the image in SYS$SHARE.
Language support images are of the form SDL$language.EXE, where
language is an identifying character string for the language. For
example, the HP FORTRAN back end is SDL$FORTRAN.EXE, and the HP MACRO
back end is SDL$MACRO.EXE.
INVSYMDEF, Invalid symbol symbol-name specified in /SYMBOLS
qualifier
Error: The value of the /SYMBOL qualifier is not
correct. The /SYMBOL qualifier expects a list of symbol definitions in
the form symbol-name:value or symbol-name=value. The error message
indicates a missing comma, colon, or value.
User Action: Correct the syntax of the /SYMBOL
qualifier.
INVUNKLEN, Unknown length attribute valid only for parameter type [Line
n]
Error: CHARACTER LENGTH * is only allowed in a
parameter description. Specifying an unknown length for an ITEM or
AGGREGATE member is an error.
User Action: Remove the LENGTH specification or
replace the "*" with a valid expression.
LANGDUP, Language name language-name appears more than once in
list [Line n]
Warning: In an IFLANGUAGE or END_IFLANGUAGE statement,
the name of a language appears twice.
User Action: Remove the duplicate file name.
LANGMATCH, Language language-name does not appear in list of
matching IF statement [Line n]
Warning: The list of language specified after the
END_IFLANGUAGE keyword does not match the list of languages specified
after the corresponding IFLANGUAGE keyword.
User Action: Correct the language list.
LANGMISS, Language language-name in list of matching IF
statement missing from END list [Line n]
Warning: In an END_IFLANGUAGE statement, one of the
languages from the IFLANGUAGE statement is missing.
User Action: Add the missing language to the
END_IFLANGUAGE statement or remove all languages from the
END_IFLANGUAGE statement.
LISFILOPN, Unable to open listing file file-spec
Error: SDL cannot open the indicated listing file.
User Action: Verify that you have write access to the
directory to which the HP SDL listing file is directed.
MASKTOOBIG, Cannot create correct mask value for bitfield-name
[Line n]
Error: The MASK on a BITFIELD can only be used if the
BITFIELD is part of a STRUCTURE which is part of a UNION, together with
an integer field large enough to hold the mask.
User Action: Remove the MASK option, or add an integer
field big enough so that it can hold all values for the MASK.
MATCHEND, End name does not match declaration name name [Line
n]
Warning: The name specified on the END_MODULE or END
delimiter does not match the most recent module name or aggregate name.
User Action: Verify that the spelling of the names
specified on the END and END_MODULE delimiters match. Check whether you
have illegally nested MODULE declarations. This is only a warning
message, but it may indicate an error.
MULTDEFSYM, Multiply defined symbol---symbol-name [Line
n]
Error: A structure contains a duplicate symbol name.
User Action: Remove the duplicate name and invoke HP
SDL again.
NAMTRUNC, Generated name too long - truncated to 64 characters
name-to-be-truncated
Warning: The BLISSF backend appends various prefixes
and suffixes to names. The resulting name then can exceed 64
characters, the maximum length.
The DCL, TPU, and UIL backends limit the name of constants to 64.
User Action: Shorten your names.
NEGORIGIN, Aggregate aggregate-name has a negative origin -
negative offset elements will be ignored [Line n]
Informational: The ORIGIN attribute defines a member
as origin which is not at the beginning of the aggregate. This
diagnostic will only be issued if the /VMS_DEVELOPMENT qualifier is
present.
User Action: Specify the first member of the aggregate
as origin.
NOOFFSET, Base offset for mask value for bitfield-name [Line
n] cannot be determined
Error: The MASK on a BITFIELD can only be used if the
BITFIELD is part of a STRUCTURE which is part of a UNION, together with
an integer field large enough to hold the mask.
User Action: Remove the MASK option, or make the
integer field big enough so that it can hold all values for the MASK.
NOOUTPUT, No language output produced
Warning: There were too many errors, or fatal errors,
which prevented SDL from generating any output files.
User Action: Correct the errors indicated by the
accompanying messages.
NULLSTRUC, Null structure structure-name has no members [Line
n]
Error: An AGGREGATE or subaggregate declaration did
not have any members.
User Action: Verify that the AGGREGATE or subaggregate
declaration is correctly positioned in the file.
OFFSETEXPR, Offset or origin relative expression involves a forward or
circular reference. ???-nod$t_name-??? [Line n]
Warning: There is nothing more to be said, at
least not by the writer of this documentation.
User Action:
????????????????????????????????????????????????????????????????????
?????????
OUTFILOPN, Unable to open output file file-spec
Error: SDL cannot locate or open an SDL output file.
User Action: Verify that you correctly specified the
name of the source file.
POSSCIRC, Possible circular definition for type
???-nod$t_naked-??? [Line n]
Informational: It seems (to the writer of this
documentation) that the name of an ITEM is already known as a user
defined symbol.
User Action:
????????????????????????????????????????????????????????????????????
?????????
REVCHECK, Front-end / back-end version mismatch. Check installation.
Fatal: A language backend has a different version than
the calling frontend.
User Action: Check your HP SDL installation.
SIZENEST, Illegal nesting of SIZEOF clauses (Item item-name)
[Line n]
Error: SIZEOF clauses cannot be nested.
User Action: Remove the nested SIZEOF clause.
SIZEQUAL, Item item-name, an aggregate, cannot be qualified by
SIZEOF [Line n]
Error: The SIZEOF clause is not allowed in this
context.
User Action: Remove the SIZEOF clause.
SIZEREDEF, Size or type of item item-name redefined [Line
n]
Error: SDL has detected a redefinition of the size or
data type of the specified item.
User Action: Remove the clause causing the
redefinition.
STRINGCONST, String constant item-name used in arithmetic
expression [Line n]
Error: A reference to a string constant is not allowed
in the context of an arithmetic expression.
User Action: Remove the string constant reference.
SYMALRDEF, Symbol symbol-name was already defined in command
line
Error: The value of the /SYMBOLS qualifier contains a
symbol name more than once.
User Action: Remove the duplicate name.
SYMNOTDEF, Symbol symbol-name was not defined in command line,
value zero assumed [Line n]
Warning: A symbol is used in an IFSYMBOL or
ELSE_IFSYMBOL statement, that has not been defined using the /SYMBOLS
qualifier.
User Action: Define the symbol using the /SYMBOLS
qualifier.
SYMTABOVR, Symbol table overflow
Fatal: SDL exceeded its symbol table space.
User Action: Reduce the size or complexity of the HP
SDL source file; if possible, separate the file into several different
files or modules.
SYNTAXERR, Syntax error [Line n]
Error: The SDL translator detected a syntax error.
This message is accompanied by a message indicating the type of error
and tells you what type of token or keyword SDL expected but did not
find.
User Action: Determine the syntax error from the
accompanying message and correct it.
TOKOVF, Token exceeds maximum size of maximum-token-length
[Line n]
Error: A line in the HP SDL source file is longer than
the maximum length.
User Action: Shorten the offending line.
TOOMANYFIELDS, Structure structure-name has too many fields
[Line n]
Error: This structure (although this should
probably be AGGREGATE) seems to have too many fields. However, the
writer of this documentation could not determine why or when exactly
this would be the case.
User Action:
????????????????????????????????????????????????????????????????????
?????????
TYPNAM, Aggregate type name not supported [Line n]
Warning: This warning can be issued by the DTR
and FORTV3 backends, but the writer of this documentation could not
determine the exact circumstances.
User Action:
????????????????????????????????????????????????????????????????????
?????????
TYPNOTSUP, Output language does not support data type
data-type-name [Line n].
Warning: The specified data type is not supported by
the output language. A reasonable translation was attempted, however.
User Action: Verify that the output file contains a
satisfactory translation of the data type you specified in your HP SDL
source file.
UNALIGNED, member-name does not align on its natural boundary
[Line n]
Warning: A member does not fall on its natural
alignment (if /CHECK_ALIGNMENT is present on the command line) or on
the alignment specified with the /ALIGNMENT qualifier.
User Action: Check the layout of the aggregate in
question.
UNDEFCON, Undefined constant name constant-name used in
expression [Line n]
Error: In the definition of a CONSTANT, an undefined
name has been used.
User Action: Verify the speling of the name.
UNDEFFIL, Unable to open include file file-name [Line
n]
Error: A file to be INCLUDEd could not be opened.
User Action: Check the spelling of the file name,
existence and protection of the file.
UNDEFORG, Definition of ORIGIN name member-name not found in
aggregate [Line n]
Error: The member used as argument to the ORIGIN
attribute was not found within the aggregate.
User Action: Verify the spelling of the member name.
UNDEFSYM, Undefined local symbol symbol-name used in
expression [Line n]
Error: A name preceded by a pound sign (#) is not
defined.
User Action: Verify that the local symbol name is
spelled correctly and that it appears before its reference in the HP
SDL source file.
UNDEFUSER, Undefined user type name type-name referenced [Line
n]
Error: A DECLARE statement refers to a data type that
is neither a builtin nor a known user defined data type.
User Action: Check the spelling of the data type
referenced.
WARNEXIT, Warning exit
Warning: A warning message has been issued.
User Action: Output can be compiled, but the results
may be unexpected.
ZERODIV, Zero divide in expression [Line n]
Error: An expression specified in an SDL declaration
resulted in a divide-by-zero exception condition.
User Action: Verify the expression and correct it.
ZEROLEN, Item item-name has 0 or negative length [Line
n]
Warning: A BITFIELD or CHARACTER declaration or a
DIMENSION option specified a length of 0 or less.
User Action: Correct the declaration. If the length or
bound value was specified using a HP SDL expression, verify the local
symbol values and the results of arithmetic operations in the
expression, if any.