That sounds reasonable, but also like there *can not be* a way to obtain
that hash at runtime. And therefore, no way to discover the true package
name.
Which in turn makes discovery and loading of plug-ins a bit harder.
Well, I guess it's for a good reason so I'll have to work around it.
Good to know.
Thanks for helping out!
Cheers,
MarLinn
On 2017-10-14 20:11, Brandon Allbery wrote:
On Sat, Oct 14, 2017 at 12:48 PM, MarLinn <monkle...@gmail.com
<mailto:monkle...@gmail.com>> wrote:
So the "actual" package name seems to be
"Plugin-0.0.0.0-2QaFQQzYhnKJSPRXA7VtPe".
That leaves the random(?) characters behind the version number to
be explained.
ABI hash of that specific package build, which is needed because
compiling with different optimization levels etc. will change what
part of the internals gets exposed in the .hi file for inlining into
other modules; mismatches there lead to *really* weird behavior. (If
you're lucky, it'll "just" be a type mismatch in code you didn't
write, because it came from the .hi file. If unlucky, it compiles but
dumps core at runtime.)
--
brandon s allbery kf8nh sine nomine associates
allber...@gmail.com <mailto:allber...@gmail.com>
ballb...@sinenomine.net <mailto:ballb...@sinenomine.net>
unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs