# HG changeset patch # User alfadur # Date 1542599856 -10800 # Node ID 3a9e4f35aa682e958f92cbf1af77d6a3aa236ab0 # Parent 27ae2d3d04b61caa1dee3e38131498897a46e440 On a second though, the actual error seems to be elsewhere, so still can use proper indexing diff -r 27ae2d3d04b6 -r 3a9e4f35aa68 tools/pas2c/Pas2C.hs --- a/tools/pas2c/Pas2C.hs Mon Nov 19 04:21:44 2018 +0300 +++ b/tools/pas2c/Pas2C.hs Mon Nov 19 06:57:36 2018 +0300 @@ -774,12 +774,6 @@ where bt = BTEnum $ map (\(Identifier i _) -> map toLower i) ids type2C' (ArrayDecl Nothing t) = type2C (PointerTo t) - type2C' (ArrayDecl (Just r1) (ArrayDecl (Just r2) t)) = do - t' <- type2C t - lt <- gets lastType - r1' <- initExpr2C (InitRange r1) - r2' <- initExpr2C (InitRange r2) - return $ \i -> t' i <> brackets r2' <> brackets r1' type2C' (ArrayDecl (Just r) t) = do t' <- type2C t lt <- gets lastType diff -r 27ae2d3d04b6 -r 3a9e4f35aa68 tools/pas2c/PascalParser.hs --- a/tools/pas2c/PascalParser.hs Mon Nov 19 04:21:44 2018 +0300 +++ b/tools/pas2c/PascalParser.hs Mon Nov 19 06:57:36 2018 +0300 @@ -167,7 +167,7 @@ if null r then return $ ArrayDecl Nothing t else - return $ foldr (\a b -> ArrayDecl (Just a) b) (ArrayDecl (Just $ head r) t) (tail r) + return $ foldr (\a b -> ArrayDecl (Just a) b) (ArrayDecl (Just $ last r) t) (init r) recordDecl = do try $ do optional $ (try $ string' "packed") >> comments