Diagnostic codes
This page provides a comprehensive reference for the diagnostic codes emitted by Vadacode. Each diagnostic code is associated with a specific severity level that may occur during program analysis.
⚠️ No bindings for input (1017)
Warning.
Input '{atom}' has no bindings. Add @bind and @mapping rules.
Description
This @input atom has no bindings. You need to add @bind and @mapping rules to bind the input atom to a data source. To fix it, add a @bind rule to bind the input atom to a data source, and a @mapping rule to map the columns of the data source to the terms of the input atom.
Example:
@input("atom").
@bind("atomName", "data source", "outermost container", "innermost container").
@mapping("atomName", column1positionInAtom, "column1Name", "column1Type").
@mapping("atomName", column2positionInAtom, "column2Name", "column2Type").
❌ Invalid negation (1023)
Error.
Variable '{variable}' does not occur in a non-negated body atom. Every variable that occurs in the head and in a body negation must have a binding in a non-negated atom.
❌ Annotation parameters (1024)
⚠️ Anonymous variable (1025)
Warning.
Variable {variable} is not used in the head. You should make it anonymous (replacing it with an
_).
❌ Mapping position must be an index (1027)
❌ Atom not in frontier guarded rule (1031)
Error.
Rule is not Frontier Guarded, as there is no atom in the body including all universally quantified variables of the head.
❌ Rule is not Weakly Frontier Guarded (1034)
Error.
Rule is not Weakly Frontier Guarded, as there is no atom in the body including all dangerous variables in the head.
❌ Variable violating SHY S1 condition (1035)
Error.
Rule is not Shy: Variable '{variable}' occurs in more than one body atom and is not protected in the body of the rule.
❌ Variable violating SHY S2 condition (1036)
Error.
Rule is not Shy: Two distinct ∀-variables, that are not protected in the body of the rule and occur both in head and in two different body atoms, are attacked by the same invading variable.
❌ Constant used in tainted position (1037)
Error.
No constants are allowed in tainted positions to guarantee Safe taintedness condition.
❌ Binding on unknown atom (1040)
Error.
Bindings must be specified for either @input or @output atoms. Check if you mispelled the atom name, or add the missing @input or @output annotation.
❌ Unknown mapping column type (1042)
Error.
Column type '{columnType}' is not recognized. Use one of the supported types: string, integer, double, date, boolean, set, list, unknown.
❌ Variable used in same condition as assigned (1044)
Error.
Variable is used in the same condition where it is assigned.