*
*)
-(* forunparser: *)
+(* for unparser: *)
type posl = int * int (* line-col, for MetaPosValList, for position variables *)
(* with sexp *)
| TypeName of name * fullType option (* semantic: filled later *)
- | ParenType of fullType (* forunparser: *)
+ | ParenType of fullType (* for unparser: *)
(* gccext: TypeOfType below may seems useless; Why declare a
* __typeof__(int) x; ?
| StatementExpr of compound wrap (* ( ) new scope *)
| Constructor of fullType * initialiser wrap2 (* , *) list
- (* forunparser: *)
+ (* for unparser: *)
| ParenExpr of expression
(* cppext: IfdefExpr TODO *)
and cpp_directive =
| Define of define
| Include of includ
- | Undef of string wrap
| PragmaAndCo of il
(*| Ifdef ? no, ifdefs are handled differently, cf ifdef_directive below *)
and define_kind =
| DefineVar
| DefineFunc of ((string wrap) wrap2 list) wrap (* () *)
+ | Undef
and define_val =
(* most common case; e.g. to define int constant *)
| DefineExpr of expression