Breakage on master

Simon Peyton Jones simonpj at microsoft.com
Wed Aug 19 11:12:49 UTC 2020


|  > But the issue is terribly simple: assertPprPanic is used (by
|  ASSERT), but no longer imported (by many many modules) because they
|  previously got it from Outputable.  How can this possibly work?  

I believe that that the answer to my qn is "just import GHC.Utils.Panic".

More specifically, as part of your patch, in future, if you want to use ASSERTs you must

* BOTH #include HsVersions.h
* AND  import GHC.Utils.Panic

and that you have added that extra import to the zillion existing modules that have an ASSERT.

I had not understood that change.  I think all I need do is to add the extra import to my new modules in !3220.

It would be helpful to add a prominent comment in HsVersions.h.

I still wonder whether HsVersions.h could simply include 'import GHC.Utils.Panic' to save this clutter.  But regardless, I think I'm unstuck now.  Thanks

Simon



|  -----Original Message-----
|  From: ghc-devs <ghc-devs-bounces at haskell.org> On Behalf Of Sylvain
|  Henry
|  Sent: 19 August 2020 11:53
|  To: ghc-devs at haskell.org
|  Subject: Re: Breakage on master
|  
|  I can't reproduce the issue. Is it on a specific branch?
|  
|  If it's in a branch with new ASSERTs, you should just have to import
|  GHC.Utils.Panic to fix the issue or is there something else?
|  
|  Sylvain
|  
|  On 19/08/2020 10:24, Simon Peyton Jones via ghc-devs wrote:
|  > |  Strangely, `./validate --legacy --slow` also appears to work fine
|  for
|  > |  me
|  > |  on 55fd1dc55990623dcf3b2e6143e766242315d757.
|  > |
|  > |  Simon, can you describe how you were previously building GHC?
|  >
|  > ./validate --legacy --fast
|  >
|  > with this validate.mk (below).
|  >
|  > But the issue is terribly simple: assertPprPanic is used (by
|  ASSERT), but no longer imported (by many many modules) because they
|  previously got it from Outputable.  How can this possibly work?  It
|  certainly doesn't for me.
|  >
|  > Would it be possible to revert the patch that broke this?  I'm fully
|  stalled with no workaround.
|  >
|  > Thanks
|  >
|  > Simon
|  >
|  >
|  >
|  > SRC_HC_OPTS        = -O -H64m
|  > GhcStage1HcOpts    = -DDEBUG
|  > GhcStage2HcOpts    = -dcore-lint -ticky
|  > GhcLibHcOpts       = -O -dcore-lint -ticky
|  >
|  > BUILD_PROF_LIBS    = NO
|  > SplitSections      = NO
|  > HADDOCK_DOCS       = NO
|  > BUILD_SPHINX_HTML  = NO
|  > BUILD_SPHINX_PDF   = NO
|  > BUILD_MAN          = NO
|  >
|  > LAX_DEPENDENCIES   = YES
|  >
|  >
|  > |  -----Original Message-----
|  > |  From: Ben Gamari <ben at smart-cactus.org>
|  > |  Sent: 18 August 2020 20:04
|  > |  To: Simon Peyton Jones <simonpj at microsoft.com>; GHC developers
|  <ghc-
|  > |  devs at haskell.org>
|  > |  Subject: RE: Breakage on master
|  > |
|  > |  Ben Gamari <ben at smart-cactus.org> writes:
|  > |
|  > |  > Simon Peyton Jones <simonpj at microsoft.com> writes:
|  > |  >
|  > |  >> |  meantime the issue can be worked around by reverting
|  > |  >> |  accbc242e555822a2060091af7188ce6e9b0144e.
|  > |  >>
|  > |  >> Alas, not so.
|  > |  >>
|  > |  >> git revert accbc242e555822a2060091af7188ce6e9b0144e
|  > |  >> warning: Failed to merge submodule utils/haddock (commits
|  don't
|  > |  follow merge-base)
|  > |  >> error: could not revert accbc242e5... DynFlags: disentangle
|  > |  Outputable
|  > |  >> hint: after resolving the conflicts, mark the corrected paths
|  > |  >> hint: with 'git add <paths>' or 'git rm <paths>'
|  > |  >> hint: and commit the result with 'git commit'
|  > |  >>
|  > |  > Sigh, yes, this is what I was afraid of. Strangely, Hadrian's
|  > |  validate
|  > |  > flavour doesn't appear to be affected by the issue that you
|  > |  reported.
|  > |  > Are you using the make build system by any chance?
|  > |  >
|  > |  Strangely, `./validate --legacy --slow` also appears to work fine
|  for
|  > |  me
|  > |  on 55fd1dc55990623dcf3b2e6143e766242315d757.
|  > |
|  > |  Simon, can you describe how you were previously building GHC?
|  > |
|  > |  Cheers,
|  > |
|  > |  - Ben
|  > _______________________________________________
|  > ghc-devs mailing list
|  > ghc-devs at haskell.org
|  >
|  https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmail.
|  haskell.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fghc-
|  devs&data=02%7C01%7Csimonpj%40microsoft.com%7Cee9f099b376042e0fb6c
|  08d8442e2b39%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637334312373
|  953419&sdata=6XaNrQIfRNqlSnXPAmoxXYTYQorYszHmyJc1kThIU2o%3D&re
|  served=0
|  _______________________________________________
|  ghc-devs mailing list
|  ghc-devs at haskell.org
|  https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmail.
|  haskell.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fghc-
|  devs&data=02%7C01%7Csimonpj%40microsoft.com%7Cee9f099b376042e0fb6c
|  08d8442e2b39%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637334312373
|  963414&sdata=m2rdARx2tpZFv5I2WiEdYE5d37LeXTMIIPg51Zfee9M%3D&re
|  served=0


More information about the ghc-devs mailing list