<div dir="ltr">Great, but how can we learn the API, when examples are not working? -.-</div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/7/18 Johan Tibell <span dir="ltr"><<a href="mailto:johan.tibell@gmail.com" target="_blank">johan.tibell@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I filed a bug a while back:<br>
<br>
<a href="http://ghc.haskell.org/trac/ghc/ticket/7752" target="_blank">http://ghc.haskell.org/trac/ghc/ticket/7752</a><br>
<br>
Someone that understands the API needs to fix the doc. :)<br>
<div><div class="h5"><br>
On Thu, Jul 18, 2013 at 7:58 PM, John Blackbox<br>
<<a href="mailto:blackbox.dev.ml@gmail.com">blackbox.dev.ml@gmail.com</a>> wrote:<br>
> Hi!<br>
> Please take a look here: <a href="http://www.haskell.org/haskellwiki/GHC/As_a_library" target="_blank">http://www.haskell.org/haskellwiki/GHC/As_a_library</a><br>
> The examples are not working. Even the simpelst one:<br>
><br>
> import GHC<br>
><br>
> import GHC.Paths ( libdir )<br>
><br>
> import DynFlags ( defaultLogAction )<br>
><br>
><br>
><br>
> main =<br>
><br>
> defaultErrorHandler defaultLogAction $ do<br>
><br>
> runGhc (Just libdir) $ do<br>
><br>
> dflags <- getSessionDynFlags<br>
><br>
> setSessionDynFlags dflags<br>
><br>
> target <- guessTarget "test_main.hs" Nothing<br>
><br>
> setTargets [target]<br>
><br>
> load LoadAllTargets<br>
><br>
><br>
><br>
> throws:<br>
><br>
><br>
> $> ghc -package ghc Main.hs<br>
><br>
> [1 of 1] Compiling Main ( Main.hs, Main.o )<br>
><br>
> Main.hs:6:25:<br>
><br>
> Couldn't match type `DynFlags' with `[Char]'<br>
><br>
> Expected type: DynFlags.FatalMessager<br>
><br>
> Actual type: DynFlags.LogAction<br>
><br>
> In the first argument of `defaultErrorHandler', namely<br>
><br>
> `defaultLogAction'<br>
><br>
> In the expression: defaultErrorHandler defaultLogAction<br>
><br>
> In the expression:<br>
><br>
> defaultErrorHandler defaultLogAction<br>
><br>
> $ do { runGhc (Just libdir)<br>
><br>
> $ do { dflags <- getSessionDynFlags;<br>
><br>
> setSessionDynFlags dflags;<br>
><br>
> .... } }<br>
><br>
> Main.hs:7:7:<br>
><br>
> Couldn't match expected type `DynFlags.FlushOut'<br>
><br>
> with actual type `IO SuccessFlag'<br>
><br>
> In a stmt of a 'do' block:<br>
><br>
> runGhc (Just libdir)<br>
><br>
> $ do { dflags <- getSessionDynFlags;<br>
><br>
> setSessionDynFlags dflags;<br>
><br>
> target <- guessTarget "test_main.hs" Nothing;<br>
><br>
> setTargets [target];<br>
><br>
> .... }<br>
><br>
> In the second argument of `($)', namely<br>
><br>
> `do { runGhc (Just libdir)<br>
><br>
> $ do { dflags <- getSessionDynFlags;<br>
><br>
> setSessionDynFlags dflags;<br>
><br>
> .... } }'<br>
><br>
> In the expression:<br>
><br>
> defaultErrorHandler defaultLogAction<br>
><br>
> $ do { runGhc (Just libdir)<br>
><br>
> $ do { dflags <- getSessionDynFlags;<br>
><br>
> setSessionDynFlags dflags;<br>
><br>
> .... } }<br>
><br>
><br>
><br>
</div></div>> _______________________________________________<br>
> Haskell-Cafe mailing list<br>
> <a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
> <a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
><br>
</blockquote></div><br></div>