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]

Reply via email to