@@ -414,7 +414,16 @@ p_hsLocalBinds = \case
414 p_item (Right x) = located x p_sigDecl
414 p_item (Right x) = located x p_sigDecl
415 sitcc $ sepSemi (useBraces . p_item) (sortOn ssStart items)
415 sitcc $ sepSemi (useBraces . p_item) (sortOn ssStart items)
416 HsValBinds NoExt _ -> notImplemented "HsValBinds"
416 HsValBinds NoExt _ -> notImplemented "HsValBinds"
417− HsIPBinds NoExt _ -> notImplemented "HsIPBinds"
417+ HsIPBinds NoExt (IPBinds NoExt xs) ->
418+ -- Second argument of IPBind is always Left before type-checking.
419+ let p_ipBind (IPBind NoExt (Left name) expr) = do
423+ dontUseBraces $ inci $ located expr p_hsExpr
424+ p_ipBind _ = notImplemented "XHsIPBinds"
425+ in sepSemi (located' p_ipBind) xs
426+ HsIPBinds NoExt _ -> notImplemented "HsIpBinds"
418 EmptyLocalBinds NoExt -> return ()
427 EmptyLocalBinds NoExt -> return ()
419 XHsLocalBindsLR _ -> notImplemented "XHsLocalBindsLR"
428 XHsLocalBindsLR _ -> notImplemented "XHsLocalBindsLR"