 |
|
|
|
|
|
|
|
Wasp for Modula-2/Oberon-2
Some types of erroneous situations that Wasp is able to detect
in Oberon-2 and Modula-2 programs
are listed below:
- usage of an uninitialized variable
- dereference of a pointer variable whose value is NIL in
"<designator>^" constructs
- assignment of a variable whose value is never used
- type guard violation
- usage of dead (deallocated) variable
- unreachable branch in statements IF, CASE, and Oberon-2 WITH;
also Wasp finds and shows always true (or always false) operands
of constructs:
<Expr1> OR <Expr2>,
<Expr1> AND <Expr2>
- procedure has no normal completion
- ASSERT condition is always false
- overflow (underflow) in arithmetic operators and type transfers
- array index is out of bounds
- division by zero
- FOR cycle repeats zero times
- ALLOCATE or NEW creates an array whose length is less or equal zero
See Wasp applications
to real Oberon-2/Modula-2 programs.
For purchase, please email
sales@waspsoft.com.
The analyser Wasp may be generated on demand
for SunSparc, Linux, and OS/2.
|