]>
Commit | Line | Data |
---|---|---|
885824d3 | 1 | |
2 | Finished LCLint checking --- no code errors found | |
3 | ||
4 | impabstract.c: (in function f) | |
5 | impabstract.c:11:7: Left operand of < is abstract type (mint): m < 2 | |
6 | An abstraction barrier is broken. If necessary, use /*@access <type>@*/ to | |
7 | allow access to an abstract type. (-abstract will suppress message) | |
8 | impabstract.c:13:14: Return value type mint does not match declared type int: m | |
9 | Underlying types match, but mint is an abstract type that is not accessible | |
10 | here. | |
11 | ||
12 | Finished LCLint checking --- 2 code errors found, as expected | |
13 | ||
14 | impabstract.c:2:28: Mutable abstract type cint declared without pointer | |
15 | indirection: int (violates assignment semantics) | |
16 | LCL semantics requires that a mutable type exhibits sharing semantics. In | |
17 | order for objects to be shared a indirection is necessary in the | |
18 | representation. A mutable type may be represented by a pointer or an abstract | |
19 | mutable type. Handles into static data are fine, too, but will generate this | |
20 | error message unless it is suppressed. (-mutrep will suppress message) | |
21 | impabstract.c:2:28: Datatype cint inconsistently declared as concrete type | |
22 | A function, variable or constant is redefined with a different type. | |
23 | (-incondefs will suppress message) | |
24 | impabstract.lcl:2:1: Specification of cint | |
25 | ||
26 | Finished LCLint checking --- 2 code errors found, as expected |