Sorry to bother with gitlab administrivia, and please let me know if there's a better place to ask!
I've been trying to file an issue at gitlab.haskell.org and having no luck. I'm pretty sure I had an account, and the browser remembers a password, but gitlab says it's invalid. Ok, fine, so I do forgot password, and it says if I have registered email it sent a reset... but didn't (checked spam etc.). Ok maybe it doesn't think I'm registered, so I try a new account and it says my email is already taken. At that point I'm a bit stuck, aside from creating a new email address specifically for this! So I suppose I'm not quite asking for account approval, but for either delete so I can recreate, or somehow unstick the reset password notifier, if that is in fact stuck. TIA for any assistance! Alternately, maybe someone could paste in the issue for me, though of course in the longer run I'd like to be able to file my own and maybe even help out if possible. Here's my description copied from haskell-cafe. This is a regression that started with 9.4 (presumably new recompilation avoider) and persists to the present day (well, 9.12.4 at least). Note that it only manifests when ghci is loading bytecode, but also has `.o` files around to load, so in the repro it's important to restart without -fobject-code. The -fobject-code is just imitating the build system, which would have created `.o` files for up-to-date sources: % cat >BugA.hs module BugA where x :: Int x = 13 % cat >BugB.hs module BugB where import qualified BugA f :: IO () f = print BugA.x % cat >BugC.hs module BugC where import qualified BugB bug :: IO () bug = BugB.f % ghci -fobject-code # compile so we can load .o GHCi, version 9.12.4: https://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from /Users/elaforge/qlib/dotfiles/.ghci Prelude> :load BugC [1 of 3] Compiling BugA ( BugA.hs, BugA.o ) [2 of 3] Compiling BugB ( BugB.hs, BugB.o ) [3 of 3] Compiling BugC ( BugC.hs, BugC.o ) Ok, three modules loaded. Leaving GHCi. % ghci Prelude> :load BugC Ok, three modules loaded. Prelude BugC> bug 13 As expected! Now go edit BugA.hs, and change 13 to say 14, and save. Now reload: Prelude BugC> :r [1 of 3] Compiling BugA ( BugA.hs, interpreted ) [Source file changed] Ok, three modules reloaded. Prelude BugC> bug 13 It has the old value! It should probably have reloaded BugB and BugC as bytecode, which is what 9.2 will do. Previously modifying a parent would force the graph in between the loaded module and the modified one to be reloaded as bytecode, ignoring the object code which is otherwise up to date. I don't know why exactly, previously I assumed BugB.o has stale values from BugA.o inlined, but leaving -fobject-code on just recompiles BugC and it works fine so maybe not! _______________________________________________ ghc-devs mailing list -- [email protected] To unsubscribe send an email to [email protected]
