| 17 | | *** possible array extents |
| 18 | | *** static, ...? |
| 19 | | ** expressions (may have side-effects) |
| 20 | | *** literals (including named literals) |
| 21 | | *** variable |
| 22 | | *** +,-,*,/,%,<,<=,>,>=,==,!=,!,&&,|| |
| 23 | | *** x++, x--, x+=a, x*=a, ... |
| 24 | | *** bit-wise operators? |
| 25 | | *** &,* (pointer operations) |
| 26 | | *** cast |
| 27 | | *** a[i] |
| 28 | | *** x.a |
| 29 | | *** function call f(x) |
| | 25 | * possible array extents information and other information modifying type? |
| | 26 | * static, ...? |
| | 27 | * expressions (may have side-effects) |
| | 28 | * literals (including named literals) |
| | 29 | * variable |
| | 30 | * +,-,*,/,%,<,<=,>,>=,==,!=,!,&&,|| |
| | 31 | * x++, x--, x+=a, x*=a, ... |
| | 32 | * bit-wise operators? |
| | 33 | * &,* (pointer operations) |
| | 34 | * cast-to-t |
| | 35 | * a[i] (array index) |
| | 36 | * x.a (record navigation) |
| | 37 | * function invocation f(x) |