File tree Expand file tree Collapse file tree 4 files changed +6
-4
lines changed
unison-runtime/src/Unison/Runtime Expand file tree Collapse file tree 4 files changed +6
-4
lines changed Original file line number Diff line number Diff line change @@ -1535,8 +1535,11 @@ type ANFD v = Compose (ANFM v) (Directed ())
1535
1535
data GroupRef = GR Reference Word64
1536
1536
deriving (Show )
1537
1537
1538
+ -- | A value which is either unboxed or boxed.
1538
1539
type UBValue = Either Word64 Value
1539
1540
1541
+ -- | A list of either unboxed or boxed values.
1542
+ -- Each slot is one of unboxed or boxed but not both.
1540
1543
type ValList = [UBValue ]
1541
1544
1542
1545
data Value
Original file line number Diff line number Diff line change @@ -164,7 +164,6 @@ decompile backref topTerms = \case
164
164
-- Only match lists of boxed args.
165
165
| ([] , bs) <- partitionEithers vs ->
166
166
apps' (con rf ct) <$> traverse (decompile backref topTerms) bs
167
- (DataC rf _ _) -> err (BadData rf) $ bug " <Data>"
168
167
(PApV (CIx rf rt k) _ (partitionEithers -> ([] , bs)))
169
168
| rf == Builtin " jumpCont" ->
170
169
err Cont $ bug " <Continuation>"
@@ -179,6 +178,7 @@ decompile backref topTerms = \case
179
178
| otherwise -> err (UnkComb rf) $ ref () rf
180
179
(PAp (CIx rf _ _) _ _) ->
181
180
err (BadPAp rf) $ bug " <Unknown>"
181
+ (DataC rf _ _) -> err (BadData rf) $ bug " <Data>"
182
182
BlackHole -> err Exn $ bug " <Exception>"
183
183
(Captured {}) -> err Cont $ bug " <Continuation>"
184
184
(Foreign f) ->
Original file line number Diff line number Diff line change @@ -267,8 +267,7 @@ data Args
267
267
| VArg2 ! Int ! Int
268
268
| VArgR ! Int ! Int
269
269
| VArgN {- # UNPACK #-} !(PrimArray Int )
270
- | -- TODO: What do I do with this?
271
- VArgV ! Int
270
+ | VArgV ! Int
272
271
deriving (Show , Eq , Ord )
273
272
274
273
argsToLists :: Args -> [Int ]
Original file line number Diff line number Diff line change @@ -264,7 +264,7 @@ instance Tag ArgsT where
264
264
putArgs :: (MonadPut m ) => Args -> m ()
265
265
putArgs ZArgs = putTag ZArgsT
266
266
putArgs (VArg1 i) = putTag Arg1T *> pInt i
267
- putArgs (VArg2 i j) = putTag Arg1T *> pInt i *> pInt j
267
+ putArgs (VArg2 i j) = putTag Arg2T *> pInt i *> pInt j
268
268
putArgs (VArgR i j) = putTag ArgRT *> pInt i *> pInt j
269
269
putArgs (VArgN pa) = putTag ArgNT *> putIntArr pa
270
270
putArgs (VArgV i) = putTag ArgVT *> pInt i
You can’t perform that action at this time.
0 commit comments