@@ -93,8 +93,10 @@ buildDepMap ctx ns = addPostulates $ dfs S.empty M.empty ns
9393 , (name "prim__strCons", Arg 1)
9494 , (name "prim__strHead", Arg 0)
9595 , (name "prim__strTail", Arg 0)
96+ , (name "prim__lenString", Arg 0)
9697 , (name "prim__concat", Arg 0)
9798 , (name "prim__concat", Arg 1)
99+ , (name "prim__zextInt_BigInt", Arg 0)
98100 , (name "mkForeignPrim", Arg 2)
99101 , (name "mkForeign", Arg 1)
100102 ]
@@ -143,7 +145,7 @@ buildDepMap ctx ns = addPostulates $ dfs S.empty M.empty ns
143145
144146 -- the variables that arose as function arguments only depend on (n, i)
145147 varMap = M.fromList [(v, S.singleton (fn, Arg i)) | (v,i) <- zip vars [0..]]
146− (vars, sc) = cases_runtime cdefs -- TODO: or cases_runtime?
148+ (vars, sc) = cases_compiletime cdefs -- TODO: or cases_runtime?
147149
148150 etaExpand :: [Name] -> Term -> Term
149151 etaExpand [] t = t
@@ -217,8 +219,7 @@ buildDepMap ctx ns = addPostulates $ dfs S.empty M.empty ns
217219
218220 -- TODO: figure out what to do with methods
219221 -- the following code marks them as completely used
220− Proj (P Ref inst _) i -> unconditionalDeps args -- named instances
221− Proj _ i -> unconditionalDeps args -- dictionary reference in a variable
222+ Proj t i -> getDepsTerm vs bs cd t `M.union` unconditionalDeps args
222223
223224 _ -> error $ "cannot analyse application of " ++ show fun ++ " to " ++ show args
224225 where