Messages
The checker
What the checker says about a circuit, and what to do
about it. X stands for a block, as the message names it (AND gate
"and1").
Errors
| Message |
What to do |
| X has n of its m inputs wired (input "p" is free) |
Wire the free input. A library block's optional pins may stay free. |
| X: input "p" has n drivers |
An input takes one wire: delete the others. |
| combinational loop: a → b → … (break it with a Unit delay) |
A value is computed from itself in the same step: put a Unit delay in the loop. |
| X: input "p" is t, but a logic gate takes booleans |
Compare the number with something first, or use an arithmetic block. |
| X: its inputs are t1 and t2; they must be of one type |
Change the type of an In block or a constant, or cast one operand. |
| X: its inputs are booleans, but it takes numbers |
Use a logic gate, or feed it numbers. |
| X: its condition is t, but must be a boolean |
A Switch's if takes a boolean: compare first. |
| X: it switches between a t1 and a t2; they must be of one type |
Make then and else of one type. |
| X: it checks a t, but an assertion takes a boolean |
A property's input is a condition: compare first. |
| X: its initial value is t, but it holds a t′ |
A Unit delay's init and next are of its type. |
| X: input "p" is t, but it takes a t′ |
Feed the library block's pin the type it takes. |
| X: unknown type, operator or library block |
The file was written by a newer editor or intrepyd, or by hand: update, or fix the file. |
| X: a constant that does not fit its type |
Use a wider type, or a smaller value. |
| a block has no name; the name "n" is used by k blocks |
Give each block a name, unique in its level. |
| a wire from X to Y crosses the border of a subsystem |
Wire through the subsystem's In and Out blocks. |
Warnings
| Message |
What to do |
| the result of X is not used |
Wire it, or delete the block. |
| the circuit has no output and nothing to verify |
Add an Out, an Assertion or a Target. |
Verify and MC/DC tests
| What you see |
What it means |
| unknown |
No engine answered within the timeout or the max depth. Try a longer timeout, another engine, or no depth. |
| a condition's pair unreachable |
The condition never decides the outcome alone: it is masked, or the logic is redundant. |
| a condition's pair not found |
No pair within the longest test and the timeout: try longer ones. |
| out of date |
The circuit, or its decisions, changed since the results were made: run again. |
| the engines need a license |
No valid license: see The engines' license. |
| a feature needs a newer intrepyd |
The intrepyd in use is too old for the circuit (subsystems, optional pins, certificates, tests of formulas with next): pip install -U intrepyd. |
The check of a requirement's formula says where it is wrong: expected …,
found …, unexpected …, the formula ends too early, comparisons do not
chain, the steps of pre are a whole number from 1 to 100, the steps of
next are a whole number from 1 to 10. The
formula language has the rules.