# Arity/Prolog32 Compiler error messages

APC1503: Error creating object file – <filename>

A file error occurred while writing an object file, such as an incorrect path was specified, or there is not enough room on the disk.

APC1505: Illegal atomic goal – <goal>

The goal is not executable. For example, the following predicate would cause this message since 4 is not a satisfiable goal: try :- 4.

APC1506: Illegal syntax in case expression – <term>

You have incorrectly use the case construct. The correct form is

case([A1-> B1, A2 -> B2 , ... | C]).

That is, "If A1, then B1; if A2, then B2; and so on, or else C." Correct the construct and recompile.

APC1507: Illegal directive – <directive>

There is an error in a compiler directive. The directive is indicated. Correct the directive and recompile.

APC1508: No definition for public predicate – <name/arity>

APC1509: No definition for predicate – <name/arity>

APC1510: No definition for visible predicate – <name/arity>

A program references a clause that is not found in the current program file and that is not declared as extrn. Check that you have defined all the necessary predicates and recompile.

The specified input file could not be found. Check for spelling errors or invalid path specifications.

APC1512: Module size exceeds system limit - break into smaller modules

The module has overflowed the compilers internal limit on the size of object code. You will need to create more than one module from this one.

APC1513: No compiled arithmetic can be interpreted

Embedded C expressions must be compiled and therefor can not be passed as an argument to a predicate to be "called", such as setof/3, stdinout/3 or call/1.

APC1521: Tokenization Error

Unable to tokenize a C declaration. Correct your code.

APC1522: Pragma not defined

The pragma was ignored by the compiler. Correct your code.

Arity/Prolog32 cannot find the include file. Check for the correct spelling and path specification.

APC1524: Warning: redefinition of symbol <symbol>

Preprocessor symbol was already defined. Second definition is ignored by the compiler. Correct your code.

APC1525: Auto declaration not supported

Auto declaration totally ignored by the compiler. Correct your code.

APC1526: Register declaration not supported

Register declaration completely ignored by the compiler. Correct your code.

APC1527: Struc/Enum/Tag tag> is already defined

APC1528: Void element of union or structure

Elements of structures and unions can not be void. Correct your code.

APC1529: Function element of union or structure

Elements of structures and unions can not be a function. Correct your code.

APC1530: Name <identifier> is already defined

Second attempt to define identifier ignored by compiler. Correct your code.

APC1531: Extrn variable <name> cannot be inited

Objects can only be intialized in declarations where they are defined. Correct your code.

APC1532: Invalid type <type>

The type your have specified has not been defined. Use typedef to define this type.

APC1533: Warning: Type <type> ignored

Arity/Prolog32 does not recognize the const or volatile types. The compiler will, however, process the rest of the declaration.

APC1534: Modifier <modifier> illegal in context:

The object of the modifier should be an identifier or a pointer. Correct your code.

APC1535: Found <token1 >when looking for <token2>

The wrong token was found during parsing, check your code for possible corrections.

APC1537: Syntax Error

Syntax error parsing a C declaration. Correct your code to match ANSI C standard syntax.

APC1538: Declaration Error

Although the compiler was able to parse this declaration, it was not able to determine the correct meaning. Correct your code.

APC1539: #endif, #elif, or #else without matching #if

These pragmas need a corresponding #if, #ifdef or #ifndef.

APC1540: Undefined identifier <identifier>

A valid C identifier used in a C expression without having been declared. Correct your code.

APC1541: Warning: sizeof() returns 0

The sizeof operation is returning a value of zero for a given identifier.

APC1542: Warning: Address of an array - ignored

The & operator was applied to an array identifier, which is already considered to be the address of the object. The operation is ignored.

APC1546: Warning: Subtraction of pointers with different types or distances

Pointer subtraction is performed on the offset portion of the pointer, and based on the size of the object pointed at. Check your code to insure that this will not affect the result.

APC1547: General expression failure

Syntax Error in an embedded C expression. Correct your code.

APC1548: Illegal arguments for operator <operator>

The types of the arguments to operator are invalid.

APC1549: Illegal 'is' assignment

The left-hand side of is/2 is either not a prolog variable or the type of the right-hand side cannot be assigned to a prolog var (such as a struct). Correct your code.

APC1550: Illegal assignment

Result of right-hand side can not be cast to type of left-hand side or left-hand side is not a legal lvalue. Correct your code.

APC1551: Cannot compute address of argument (&)

Address of argument (such as constant) cannot be computed. Correct your code.

APC1552: Cannot dereference expression (*)

The argument of '*' is not an address and therefore cannot be dereferenced. Correct your code.

APC1553: Invalid pointer operation

A pointer is being used incorrectly in an embedded C expression. Correct your code.

APC1554: Size of object is 0 in pointer arithmetic

Pointer arithmetic depends on the size of objects pointed to. This size may not be zero. Correct your code.

APC1555: Divide by 0 error in expression

Dividing by 0 can give undefined results and is therefore not allowed. Correct your code.

APC1556: Illegal declaration

Right-hand side is an invalid type or left-hand side is not a variable or valid identifier in an embedded C expression. Correct your code.

APC1557: Attempt to redefine automatic identifier

Attempt to define a variable twice within an embedded C expression. Correct your code.

APC1558: Error in selection of member of struct or union

Identifier used to select member of structure or union is not a valid member selector. Correct your code.

APC1559: Illegal argument in sizeof()

The argument was not an identifier or type name. Correct your program.

APC1560: Illegal function argument

Argument can not be cast to type in function declaration. Correct your program.

APC1561: Illegal cast

The type of the cast or the argument is invalid. Correct your program.

APC1562: Unknown error compiling C expression

Invalid embedded C expression. Correct your code.

APC1563: Warning: Too many actual parameters

APC1564: Warning: Too few actual parameters

The number of parameters in the function call does not match the number of arguments in the function declaration.

APC1565: Warning: Formal parameter ignored

The unspecified parameter will not be type checked or coerced.

APC1566: Struc/Enum/Tag <Tag> is undefined

An attempt to use Tag has been made without it previously being defined.

APC1567: Warning: Conflicting segmodule declarations for module: <Module>

Module is used in more than one segmodule declaration which attempt to place it in more than one segment.

APC1568: Module <Module> used in extrn declaration without segmodule declaration

Module is used in a module(Module) suffix without a corresponding segmodule declaration to determine which segment it is in.

APC1569: Predicate <Pred1> used undefined predicate <Pred2>

Pred2 is neither declared in this module nor defined in this module and it is used by Pred1.