@@ -1061,7 +1061,14 @@ expandParamsD rhs ist dec ps ns (PData doc syn fc co pd)
10611061 (map econ cons)
10621062 else PDatadecl n (expandParams dec ps ns [] ty) (map econ cons)
10631063 econ (doc, n, t, fc, fs)
1064− = (doc, dec n, piBindp expl ps (expandParams dec ps ns [] t), fc, fs)
1064+ = (doc, dec n, piBindp impl ps (expandParams dec ps ns [] t), fc, fs)
1065+expandParamsD rhs ist dec ps ns (PRecord doc syn fc tn tty cdoc cn cty)
1066+ = if tn `elem` ns
1067+ then PRecord doc syn fc (dec tn) (piBind ps (expandParams dec ps ns [] tty))
1068+ cdoc (dec cn) conty
1069+ else PRecord doc syn fc (dec tn) (expandParams dec ps ns [] tty)
1070+ cdoc (dec cn) conty
1071+ where conty = piBindp impl ps (expandParams dec ps ns [] cty)
10651072expandParamsD rhs ist dec ps ns (PParams f params pds)
10661073 = PParams f (ps ++ map (mapsnd (expandParams dec ps ns [])) params)
10671074 (map (expandParamsD True ist dec ps ns) pds)