[GHC] #12485: -package-db flags now need to be sorted by dependency order
GHC
ghc-devs at haskell.org
Tue Aug 30 05:47:43 UTC 2016
#12485: -package-db flags now need to be sorted by dependency order
-------------------------------------+-------------------------------------
Reporter: niteria | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 8.0.2
Component: Package system | Version: 8.0.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): phab:D2450
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by ezyang):
A few things:
First, niteria, I'm curious why you need top be able to pass the package
databases out of order. If I understand correctly, neither Stack nor Cabal
use the databases this way. Indeed, when I wrote this patch, I assumed the
databases would be in the right order because that's how shadowing works:
later databases shadow earlier ones.
Second, it's impossible to do ABI sanity checking in the way it is done
today if I can't assume things are in the right order. When the db order
was assumed to be specified correctly, I could assume all references to
p-0.1-xxx refer to the topmost package with this IPID in the Stack; if the
ABIs mismatch then I should remove everyone below me. But if there might
be a reference to that particular package in a later package database,
this assumption doesn't hold.
Assuming that we DO want databases to be specified in any order (do we?!)
here's what I think we should do: We NEVER remove packages because
something got shadowed. Either the shadower is ABI compatible (in which
case we never need to eliminate anything), OR we immediately error
(because we have no idea which ones to eliminate.) I don't know if this
brings back enough shadowing to fix bootstrapping though; will have to
test.
#12518 seems related; it also requests that we error on shadowing.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12485#comment:7>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list