Package-level declarations
Types
Superclass of all errors caused by bad user input to the compiler.
Thrown when a EndorsementNode modifies integrity.
Thrown when the lexer encounters an illegal character.
Thrown when a function or a method is given too many or too few arguments.
Superclass of errors related to information flow.
Thrown when the control flow influences data in a way that violates security.
Thrown when a term's output flows to a location that would violate information flow security.
Thrown when a DeclassificationNode modifies integrity.
Thrown when a break
, continue
, or a similar statement occurs outside the scope of a loop.
Thrown when the inferred label of a node does not match its annotated label.
Thrown when a DowngradeNode node violate the non-malleable information flow control restriction.
Thrown when a Name has multiple declarations.
Thrown when trying to compile a program with no host declarations.
Thrown when trying to compile a program with no main.
Thrown when a required protocol annotation in node is not found.
Thrown when protocol selection cannot find a solution.
Thrown when the parser runs into an unexpected token.
Thrown when the inferred type of an AST node does not match its expected type.
Thrown when a Name is referenced before it is defined.
Thrown when a function is given an extra argument.
Thrown when an object is declared with an unknown datatype (class name).
Thrown when an object is called with a method it does not recognize.