@@ -86,7 +86,7 @@ elabData info syn fc (PDatadecl n t_in dcons)
87elabRecord :: ElabInfo -> SyntaxInfo -> FC -> Name ->
87elabRecord :: ElabInfo -> SyntaxInfo -> FC -> Name ->
88 PTerm -> Name -> PTerm -> Idris ()
88 PTerm -> Name -> PTerm -> Idris ()
89−elabRecord info syn fc tyn ty cn cty
89+elabRecord info syn_in fc tyn ty cn cty
90 = do elabData info syn fc (PDatadecl tyn ty [(cn, cty, fc)])
90 = do elabData info syn fc (PDatadecl tyn ty [(cn, cty, fc)])
91 cty <- implicit syn cn cty
91 cty <- implicit syn cn cty
@@ -106,6 +106,7 @@ elabRecord info syn fc tyn ty cn cty
106 update_decls <- mapM (mkUpdate recty (length nonImp)) (zip nonImp [0..])
106 update_decls <- mapM (mkUpdate recty (length nonImp)) (zip nonImp [0..])
107 mapM_ (elabDecl info) (concat (proj_decls ++ update_decls))
107 mapM_ (elabDecl info) (concat (proj_decls ++ update_decls))
109+ syn = syn_in { syn_namespace = show (nsroot tyn) : syn_namespace syn_in }
110 isNonImp (PExp _ _ _, a) = Just a
111 isNonImp (PExp _ _ _, a) = Just a
111 isNonImp _ = Nothing
112 isNonImp _ = Nothing
@@ -135,8 +136,9 @@ elabRecord info syn fc tyn ty cn cty
135 mkSet (MN 0 n) = MN 0 ("set_" ++ n)
136 mkSet (MN 0 n) = MN 0 ("set_" ++ n)
136 mkSet (NS n s) = NS (mkSet n) s
137 mkSet (NS n s) = NS (mkSet n) s
138− mkProj recty substs cimp ((pn, pty), pos)
139+ mkProj recty substs cimp ((pn_in, pty), pos)
140+ = do let pn = expandNS syn pn_in
139− = do let pfnTy = PTy defaultSyntax fc [] pn
141+ let pfnTy = PTy defaultSyntax fc [] pn
140 (PPi expl rec recty
142 (PPi expl rec recty
141 (substMatches substs pty))
143 (substMatches substs pty))
142 let pls = repeat Placeholder
144 let pls = repeat Placeholder
@@ -153,7 +155,7 @@ elabRecord info syn fc tyn ty cn cty
153 implicitise (pa, t) = pa { getTm = t }
155 implicitise (pa, t) = pa { getTm = t }
155 mkUpdate recty num ((pn, pty), pos)
157 mkUpdate recty num ((pn, pty), pos)
156− = do let setname = mkSet pn
158+ = do let setname = expandNS syn $ mkSet pn
157 let valname = MN 0 "updateval"
159 let valname = MN 0 "updateval"
158 let pfnTy = PTy defaultSyntax fc [] setname
160 let pfnTy = PTy defaultSyntax fc [] setname
159 (PPi expl pn pty
161 (PPi expl pn pty