
David recently added a new -Wall flag for Trustworthiness.
The reasoning is if it is in -Wall, it can actually get seen and will be
used by folks to improve more things from 'Trustworthy' to 'Safe'. After
all, everything that is merely `Trustworthy` needs to live in the trusted
computing base.
The status quo is that you pretty much have no way to know what you _don't_
need Trustworthy on, and efforts in the past to take large libraries and
convert them to SafeHaskell have been fraught with long rebuild cycles,
because the only way to see was to build, haddock, and look.
What you are running when you go to _fix_ the error appears to be an actual
bug in the safety inference code, though, and definitely needs to be looked
at.
It probably does belong in -Wall in the long term, and -Werror is
notoriously fickle, but we should look at what is causing it to go wrong
here and do a bit more due diligence.
-Edward
On Fri, Nov 14, 2014 at 12:40 PM, Simon Peyton Jones
Hmm. When I got this
libraries\hpc\Trace\Hpc\Mix.hs:3:14: Warning:
‘Trace.Hpc.Mix’ is marked as Trustworthy but has been inferred as safe!
I changed “Trustworthy” to “Safe”. But then I got
libraries\hpc\Trace\Hpc\Mix.hs:24:1:
Data.Time: Can't be safely imported! The module itself isn't safe.
This seems unhelpful. After all it’s been “inferred as safe”. What should I do?
Thanks.
Simon
*From:* Simon Peyton Jones *Sent:* 14 November 2014 16:51 *To:* ghc-devs@haskell.org *Subject:* Windows breakage
This breakage didn’t use to happen. Might someone fix it? Thanks. For now I’m going through changing a dozen “Trustworthy” to “Safe”. Is that right?
Simon
librariesWin32SystemWin32Console.hsc:2:14: Warning:
‘System.Win32.Console’ is marked as Trustworthy but has been inferred as safe!
<no location info>:
Failing due to -Werror.
libraries/Win32/ghc.mk:4: recipe for target 'libraries/Win32/dist-install/build/System/Win32/Console.o' failed
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/mailman/listinfo/ghc-devs