on master help sign in
javascript: handle arrays correctly in FFI
8a62d56raichoo
src/IRTS/CodegenJavaScript.hs+4−4
@@ -362,13 +362,13 @@ translateExpression (SForeign _ _ "putStr" [(FString, var)]) =
362 "__IDRRT__.print(" ++ translateVariableName var ++ ")"
362 "__IDRRT__.print(" ++ translateVariableName var ++ ")"
363
363
364translateExpression (SForeign _ _ fun args)
364translateExpression (SForeign _ _ fun args)
365− | "." `isPrefixOf` fun, "[]=" `isSuffixOf` fun
365+ | "[]=" `isSuffixOf` fun
366 , (obj:idx:val:[]) <- args =
366 , (obj:idx:val:[]) <- args =
367− concat [object obj, field, index idx, assign val]
367+ concat [object obj, index idx, assign val]
368
368
369− | "." `isPrefixOf` fun, "[]" `isSuffixOf` fun
369+ | "[]" `isSuffixOf` fun
370 , (obj:idx:[]) <- args =
370 , (obj:idx:[]) <- args =
371− concat [object obj, field, index idx]
371+ concat [object obj, index idx]
372
372
373 | "." `isPrefixOf` fun, "=" `isSuffixOf` fun
373 | "." `isPrefixOf` fun, "=" `isSuffixOf` fun
374 , (obj:val:[]) <- args =
374 , (obj:val:[]) <- args =