C/C++ Programmer's Guide (G06.27+, H06.08+, J06.03+)

Cause
The compiler requires that a tag specified in a FIELDALIGN pragma exist. Check to ensure that
the correct tag was specified. Delete the FIELDALIGN pragma if it is not used.
295
0 bitfield not allowed under fieldalign shared2 and shared8
Cause
An unnamed bit field is not allowed in a structure or union tag with the FIELDALIGN SHARED2
or SHARED8 pragma.
296
Data block too long, truncated to 126 characters
Cause
The maximum length of a global variable name is 126 characters. The compiler truncates the
name to 126 characters. Make sure that global variables have names that are unique within
the first 126 characters.
299
Pragma columns different from previously specified, this pragma is
ignored
Cause
All COLUMNS pragmas in a file must be the same.
303
Truncation of pointer size performed
Cause
The TNS C compiler has converted a 32-bit pointer to a 16-bit pointer, resulting in the loss of
the segment portion of the address and leaving only the offset portion. This can occur in two
instances:
When the address of a location in extended memory is cast to a _near pointer.
When a non-C routine expecting a _near (16-bit) pointer argument is passed a 32-bit
pointer.
For D4x releases, the default memory model is the large-memory model; for D3x releases, the
default model is the small-memory model. If the location pointed to by the pointer is in extended
memory, after converting to 16 bits, that location is lost.
For a memory location to be 16-bit addressable, it should be in the user data segment and not
in the extended segment. Global/static scalars and all local variables are automatically in the
user data segment. To place global/static aggregates in the user data segment, use the keyword
_lowmem. Anything allocated on the heap is always in extended memory and hence is not
16-bit addressable.
307
Function definition overrides prior declaration of non-C routine
Cause
The user defined a C routine which was previously declared with a non-C language attribute.
(The routine was declared as having been written in COBOL, FORTRAN, Pascal, or TAL.) The
compiler disregards the language attribute and treats the function as a regular C function.
360 TNS C Compiler Messages