Skip to content
This repository was archived by the owner on Feb 3, 2021. It is now read-only.

Commit cb4d7e9

Browse files
committed
* Line up return types of Int/Rat/Num and declare op0 fallbacks.
1 parent 0285f84 commit cb4d7e9

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

Pugs/src/Pugs/Prim.hs

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,9 @@ op0 "fork" = const $ opPerl5 "fork" []
105105
op0 "defer" = const $ do
106106
env <- ask
107107
if envAtomic env then guardSTM retry else fail "Cannot call &defer outside a contend block."
108+
op0 "Int" = const $ return (VType $ mkType "Int")
109+
op0 "Num" = const $ return (VType $ mkType "Num")
110+
op0 "Rat" = const $ return (VType $ mkType "Rat")
108111
op0 other = const $ fail ("Unimplemented listOp: " ++ other)
109112

110113
-- |Implementation of unary primitive operators and functions
@@ -1892,14 +1895,17 @@ initSyms = seq (length syms) $ do
18921895
\\n Str pre Pugs::Safe::safe_getc safe ()\
18931896
\\n Str pre Pugs::Safe::safe_readline safe ()\
18941897
\\n Int pre int safe (Int)\
1898+
\\n Int pre Int safe ()\
18951899
\\n Int pre Int safe (Int)\
1896-
\\n Int pre Num safe (Num)\
1897-
\\n Int pre Rat safe (Rat)\
1898-
\\n Num pre Int safe (Int)\
1900+
\\n Int pre Int safe (Num)\
1901+
\\n Int pre Int safe (Rat)\
1902+
\\n Num pre Num safe ()\
1903+
\\n Num pre Num safe (Int)\
18991904
\\n Num pre Num safe (Num)\
1900-
\\n Num pre Rat safe (Rat)\
1901-
\\n Rat pre Int safe (Int)\
1902-
\\n Rat pre Num safe (Num)\
1905+
\\n Num pre Num safe (Rat)\
1906+
\\n Rat pre Rat safe ()\
1907+
\\n Rat pre Rat safe (Int)\
1908+
\\n Rat pre Rat safe (Num)\
19031909
\\n Rat pre Rat safe (Rat)\
19041910
\\n List pre list safe (List)\
19051911
\\n Hash pre hash safe (List)\

0 commit comments

Comments
 (0)