Re: bug in ghci module loading post 9.12.4?
George Colpitts <[email protected]> Tue, 30 Jun 2026 09:53:07 -0300
| Newsgroups | gmane.comp.lang.haskell.cafe |
|---|---|
| Message-ID | <CAB-d4A4mH+S6qE-JiRfY8qc_0kXFouhjGdpQ14gF59_is40_tQ@mail.gmail.com> |
--===============5168151128176082641== Content-Type: multipart/alternative; boundary="000000000000ac8fb00655781080" --000000000000ac8fb00655781080 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable fwiw I can't duplicate on MacOS 26.5.2 and ghc 9.12.5 rc2: ghci -fobject-code Loaded package environment from /Users/gcolpitts/.ghc/aarch64-darwin-9.12.4.20260614/environments/default GHCi, version 9.12.4.20260614: https://www.haskell.org/ghc/ :? for help Loaded GHCi configuration from /Users/gcolpitts/.ghci =CE=BB> :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. (0.41 secs,) =CE=BB> bug ld: warning: duplicate -rpath '/opt/homebrew/Cellar/gcc/15.2.0_1/lib/gcc/current/gcc/aarch64-apple-darwin= 25/15' ignored ld: warning: -U option is redundant when using -undefined dynamic_lookup 13 it :: () (3.58 secs, 70,664 bytes) =CE=BB> :r [1 of 3] Compiling BugA ( BugA.hs, BugA.o ) [Source file changed] Ok, three modules reloaded. =CE=BB> bug ld: warning: duplicate -rpath '/opt/homebrew/Cellar/gcc/15.2.0_1/lib/gcc/current/gcc/aarch64-apple-darwin= 25/15' ignored ld: warning: -U option is redundant when using -undefined dynamic_lookup 14 it :: () (0.34 secs, 67,952 bytes) On Tue, Jun 30, 2026 at 4:31=E2=80=AFAM Evan Laforge <[email protected]> wr= ote: > On Tue, Jun 23, 2026 at 10:48=E2=80=AFAM Evan Laforge <[email protected]>= wrote: > > > > On Tue, Jun 23, 2026 at 6:44=E2=80=AFAM Zubin Duggal <zubin@well-typed.= com> > wrote: > > > Which platform/OS are you building on and how did you obtain > > > GHC? > > > > Oh I should have mentioned, it's OSX, 26.5.1. Obtained via ghcup, and > > using the "ghcup" channel rather than vanilla. > > > > However, I just tested this with linux on a GCP VM and ghc 9.10.3 and > > I still see the issue. One thing, I see in your non-reproduction that > > it says "[1 of 3] Compiling BugA ( BugA.hs, BugA.o )", > > which implies -fobject-code is still on. The bug only seems to happen > > when you are in bytecode mode, but there are .o files available to > > load, so you'd have to restart ghci without -fobject-code. > > Hate to nag but... has anyone managed to reproduce it? I can make it > happen on linux and OSX, and I can verify that it doesn't happen in > 9.2.8, and that it starts happening at 9.4. I believe this is when > ghc got a new recompilation avoidance mechanism that was supposed to > use hashes instead of mtimes, so that's my guess about what introduced > it. > > I guess I can go ahead and file a bug on gitlab now. I'm pretty sure > now it's a bug so I guess I don't need to wait for someone else to > repro but it would be nice to verify... > > Since permanently leaving on -fobject-code seems to be a workaround > and processors are so fast now, I may just leave that flag on now. > I'm surprised more people haven't run into this problem in the years > since 9.4. > _______________________________________________ > Haskell-Cafe mailing list -- [email protected] > To (un)subscribe, modify options or view archives go to: > Only members subscribed via the mailman list are allowed to post. --000000000000ac8fb00655781080 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:times ne= w roman,serif;font-size:large">fwiw I can't duplicate on MacOS 26.5.2 a= nd ghc 9.12.5 rc2:<br><br>=C2=A0ghci -fobject-code <br>Loaded package envir= onment from /Users/gcolpitts/.ghc/aarch64-darwin-9.12.4.20260614/environmen= ts/default<br>GHCi, version 9.12.4.20260614: <a href=3D"https://www.haskell= .org/ghc/">https://www.haskell.org/ghc/</a> =C2=A0:? for help<br>Loaded GHC= i configuration from /Users/gcolpitts/.ghci<br>=CE=BB> :load BugC<br>[1 = of 3] Compiling BugA =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ( BugA.hs, B= ugA.o )<br>[2 of 3] Compiling BugB =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 ( BugB.hs, BugB.o )<br>[3 of 3] Compiling BugC =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 ( BugC.hs, BugC.o )<br>Ok, three modules loaded.<br>(0.41= secs,)<br>=CE=BB> bug<br>ld: warning: duplicate -rpath '/opt/homebr= ew/Cellar/gcc/15.2.0_1/lib/gcc/current/gcc/aarch64-apple-darwin25/15' i= gnored<br>ld: warning: -U option is redundant when using -undefined dynamic= _lookup<br>13<br>it :: ()<br>(3.58 secs, 70,664 bytes)<br>=CE=BB> :r<br>= [1 of 3] Compiling BugA =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ( BugA.hs= , BugA.o ) [Source file changed]<br>Ok, three modules reloaded.<br>=CE=BB&g= t; bug<br>ld: warning: duplicate -rpath '/opt/homebrew/Cellar/gcc/15.2.= 0_1/lib/gcc/current/gcc/aarch64-apple-darwin25/15' ignored<br>ld: warni= ng: -U option is redundant when using -undefined dynamic_lookup<br>14<br>it= :: ()<br>(0.34 secs, 67,952 bytes)</div></div><br><div class=3D"gmail_quot= e gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Tue, Jun = 30, 2026 at 4:31=E2=80=AFAM Evan Laforge <<a href=3D"mailto:qdunkan@gmai= l.com">[email protected]</a>> wrote:<br></div><blockquote class=3D"gmail= _quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204= ,204);padding-left:1ex">On Tue, Jun 23, 2026 at 10:48=E2=80=AFAM Evan Lafor= ge <<a href=3D"mailto:[email protected]" target=3D"_blank">qdunkan@gmail= .com</a>> wrote:<br> ><br> > On Tue, Jun 23, 2026 at 6:44=E2=80=AFAM Zubin Duggal <<a href=3D"ma= ilto:[email protected]" target=3D"_blank">[email protected]</a>> w= rote:<br> > > Which platform/OS are you building on and how did you obtain<br> > > GHC?<br> ><br> > Oh I should have mentioned, it's OSX, 26.5.1.=C2=A0 Obtained via g= hcup, and<br> > using the "ghcup" channel rather than vanilla.<br> ><br> > However, I just tested this with linux on a GCP VM and ghc 9.10.3 and<= br> > I still see the issue.=C2=A0 One thing, I see in your non-reproduction= that<br> > it says "[1 of 3] Compiling BugA=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0( BugA.hs, BugA.o )",<br> > which implies -fobject-code is still on.=C2=A0 The bug only seems to h= appen<br> > when you are in bytecode mode, but there are .o files available to<br> > load, so you'd have to restart ghci without -fobject-code.<br> <br> Hate to nag but... has anyone managed to reproduce it?=C2=A0 I can make it<= br> happen on linux and OSX, and I can verify that it doesn't happen in<br> 9.2.8, and that it starts happening at 9.4.=C2=A0 I believe this is when<br= > ghc got a new recompilation avoidance mechanism that was supposed to<br> use hashes instead of mtimes, so that's my guess about what introduced<= br> it.<br> <br> I guess I can go ahead and file a bug on gitlab now.=C2=A0 I'm pretty s= ure<br> now it's a bug so I guess I don't need to wait for someone else to<= br> repro but it would be nice to verify...<br> <br> Since permanently leaving on -fobject-code seems to be a workaround<br> and processors are so fast now, I may just leave that flag on now.<br> I'm surprised more people haven't run into this problem in the year= s<br> since 9.4.<br> _______________________________________________<br> Haskell-Cafe mailing list -- <a href=3D"mailto:[email protected]" ta= rget=3D"_blank">[email protected]</a><br> To (un)subscribe, modify options or view archives go to:<br> Only members subscribed via the mailman list are allowed to post.</blockquo= te></div> --000000000000ac8fb00655781080-- --===============5168151128176082641== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Haskell-Cafe mailing list -- [email protected] To (un)subscribe, modify options or view archives go to: Only members subscribed via the mailman list are allowed to post. --===============5168151128176082641==--