diff options
| author | Kathy Gray | 2014-04-01 13:05:18 +0100 |
|---|---|---|
| committer | Kathy Gray | 2014-04-01 13:05:18 +0100 |
| commit | 5bdf89dea0ab69f5a91faa356d8cf82bf39ec3c5 (patch) | |
| tree | f061b0e894a85c68cd5170f689b65b0df4d3e780 /src | |
| parent | 583eff457b36002740c2474eb57dd338c69a67ec (diff) | |
More type corrections for constraints
Diffstat (limited to 'src')
| -rw-r--r-- | src/type_internal.ml | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/type_internal.ml b/src/type_internal.ml index 9b9a08f5..08ba4c88 100644 --- a/src/type_internal.ml +++ b/src/type_internal.ml @@ -518,7 +518,10 @@ let initial_typ_env = ("|",Some((["a",{k=K_Typ}],{t= Tfn ({t=Ttup([{t=Tvar "a"};{t=Tvar "a"}])},{t=Tvar "a"},pure_e)}),External (Some "bitwise_or"),[],pure_e)); ("^",Some((["a",{k=K_Typ}],{t= Tfn ({t=Ttup([{t=Tvar "a"};{t=Tvar "a"}])},{t=Tvar "a"},pure_e)}),External (Some "bitwise_xor"),[],pure_e)); ("&",Some((["a",{k=K_Typ}],{t= Tfn ({t=Ttup([{t=Tvar "a"};{t=Tvar "a"}])},{t=Tvar "a"},pure_e)}),External (Some "bitwise_and"),[],pure_e)); - ("^^",Some((["a",{k=K_Typ}],{t= Tfn ({t=Ttup([bit_t;nat_typ])},{t=Tvar "a"},pure_e)}),External (Some "duplicate"),[],pure_e)); + ("^^",Some((["n",{k=K_Nat}],{t= Tfn ({t=Ttup([bit_t;mk_range (Nvar "n")])}, + {t=Tapp("vector",[TA_nexp {nexp=Nconst 0}; TA_nexp {nexp=Nvar "n"}; + TA_ord {order = Oinc}; TA_typ bit_t])}, + pure_e)}),External (Some "duplicate"),[],pure_e)); ("<<<",Some((["a",{k=K_Typ}],{t= Tfn ({t=Ttup([{t=Tvar "a"};nat_typ])},{t=Tvar "a"},pure_e)}),External (Some "bitwise_leftshift"),[],pure_e)); ] |
