@@ -14,15 +14,21 @@ external __LINE_OF__: 'a => (int, 'a) = "%loc_LINE"
14
14
external __POS_OF__ : 'a => ((string , int , int , int ), 'a ) = "%loc_POS"
15
15
16
16
/* Unified operations */
17
+ /*
18
+ Note:
17
19
18
- external \"~+" : 'a => 'a = "%plus"
19
- external \"~-" : 'a => 'a = "%neg"
20
+ Unified operations only work on `Pervasives`.
21
+ That means we can't rely on it when building stdlib until we remove the `Pervasives_mini`.
22
+ */
20
23
21
- external \"+" : ('a , 'a ) => 'a = "%add"
22
- external \"-" : ('a , 'a ) => 'a = "%sub"
23
- external \"*" : ('a , 'a ) => 'a = "%mul"
24
- external \"/" : ('a , 'a ) => 'a = "%div"
25
- external mod : ('a , 'a ) => 'a = "%mod"
24
+ external \"~+" : int => int = "%identity"
25
+ external \"~-" : int => int = "%negint"
26
+
27
+ external \"+" : (int , int ) => int = "%addint"
28
+ external \"-" : (int , int ) => int = "%subint"
29
+ external \"*" : (int , int ) => int = "%mulint"
30
+ external \"/" : (int , int ) => int = "%divint"
31
+ external mod : (int , int ) => int = "%modint"
26
32
27
33
/* Comparisons */
28
34
/* Note: Later comparisons will be converted to unified operations too */
0 commit comments