The checker¶
The editor checks the circuit at every change, as intrepyd would build it, so that what you simulate and verify is a circuit that makes sense.
- A block with a problem gets a badge: red for an error, yellow for a warning; its free input pins turn red.
- The status line of the editor counts the problems; a click there (or on the empty canvas, with nothing selected) lists them in the properties panel, and a click on one selects its block, opening the subsystem it is in. In VS Code they are in the Problems panel too.
- While there are errors, Simulate, Verify and MC/DC tests are off. Warnings do not stop them.
Errors are what would make the circuit wrong or impossible to build:
- an input not wired, or wired twice;
- a combinational loop, a loop of wires that no Unit delay breaks;
- a type mismatch along a wire: operands of different types, a number into a logic gate, a condition that is not a boolean;
- a constant that does not fit its type, an unknown operator, type or block;
- a block with no name, or two with the same name in one level;
- a wire that crosses the border of a subsystem.
Warnings point at what is probably a mistake:
- a result that goes nowhere;
- a circuit with no output and nothing to verify.
Every message, with what to do about it, is in Messages.