What if you go with the big hammer for that module: -O0? My main concern about that is that you won't get arity analysis. There may be some more -f flags I've missed...
On Fri, Jan 20, 2023, 5:17 AM Michael Sperber <sper...@deinprogramm.de> wrote: > > On Fri, Jan 20 2023, David Feuer <david.fe...@gmail.com> wrote: > > > I don't know what all that means exactly (especially since GHC's demand > > signatures have changed recently in a way I don't understand at all). But > > for hiding divergence, one option is to use a module with demand analysis > > disabled. Try {-# options_ghc -fno-strictness #-}. You'll likely need to > > put oops in its own module to avoid interfering with desired > optimizations. > > THanks for the suggestion! > > So I did this: > > {-# options_ghc -fno-strictness #-} > module ConCat.Oops(oops) where > > import GHC.Stack (errorWithStackTrace) -- for oops > > -- | Pseudo function to fool GHC's divergence checker. > oops :: String -> b > oops str = errorWithStackTrace ("Oops: "++str) > {-# NOINLINE oops #-} > > ... but am getting the same result from the divergence checker, sadly ... > > -- > Regards, > Mike >
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users