ref: 08cf7754b28fc26034bd752022e47ed516686210
parent: b2fa7003bf8809ce27699c88eecce4b55618dd5f
author: Ori Bernstein <ori@eigenstate.org>
date: Tue Jul 31 20:43:55 EDT 2012
Minor doc updates.
--- a/6/main.c
+++ b/6/main.c
@@ -33,6 +33,7 @@
printf("\t\t\tl: additionally log lowered pre-cfg trees\n");
printf("\t\t\tT: additionally log tree immediately\n");
printf("\t\t\tr: additionally log register allocation activity\n");
+ printf("\t\t\ti: additionally log instruction selection activity\n");
printf("\t-o\tOutput to outfile\n");
printf("\t-S\tGenerate assembly instead of object code\n");
}
@@ -69,7 +70,7 @@
while (optarg && *optarg) {
if (*optarg == 'y')
yydebug = 1;
- debugopt[*optarg++ & 0x7f] = 1;
+ debugopt[*optarg++ & 0x7f]++;
}
break;
case 'I':
--- a/doc/lang.txt
+++ b/doc/lang.txt
@@ -177,8 +177,15 @@
union
- Any of these types can be given a name. This naming defines a completely
- new incompatible type
+ Any of these types can be given a name. This naming defines a new
+ type which inherits all the constraints of the previous type, but
+ does not unify with it. Eg:
+
+ type t = int
+ var x : t
+ var y : int
+ x = y // type error
+ x = 42 // sure, why not?
Type Constraints
--
⑨