[GHC] #4106: undefined reference to `__stg_EAGER_BLACKHOLE_INFO'

2010-05-29 Thread GHC
#4106: undefined reference to `__stg_EAGER_BLACKHOLE_INFO'
+---
Reporter:  Mikolaj  |   Owner:  
Type:  bug  |  Status:  new 
Priority:  normal   |   Component:  Compiler
 Version:  6.12.1   |Keywords:  
  Os:  Linux|Testcase:  
Architecture:  powerpc  | Failure:  Other   
+---
 That's probably powerpc (Linux) specific (I know, I know), but perhaps
 somebody has an easy fix... I guess it's a problem with GHC (6.12.1,
 recompiled from source, to be sure), not the 'parallel' library.

 The bug is a failing test suite for
 http://hackage.haskell.org/package/parallel, versions from 1.1.0.1 to at
 least 2.2.0.1. Version 1.1.0.0 works fine and the culprit is the following
 clause in parallel.cabal:

 {{{
 if impl(ghc >= 6.11) {
 -- To improve parallel performance:
 ghc-options: -feager-blackholing
   }
 }}}

 Some relevant lines from the test output:

 {{{
 => conc057(threaded2)
 cd . && '/home/mikolaj/Desktop/ghc6-6.12.1/inplace/bin/ghc-stage2'
 -fforce-recomp -dcore-lint -dcmm-lint -no-user-package-conf  -dno-debug-
 output -o conc057 conc057.hs -O -threaded -eventlog -O0 -package parallel
 >conc057.comp.stderr 2>&1
 Compile failed (status 256) errors were:
 
/usr/local/lib/parallel-2.2.0.1/ghc-6.12.1/libHSparallel-2.2.0.1.a(Strategies.o):
 In function `sXK_info':
 (.text+0x56): undefined reference to `__stg_EAGER_BLACKHOLE_INFO'
 
/usr/local/lib/parallel-2.2.0.1/ghc-6.12.1/libHSparallel-2.2.0.1.a(Strategies.o):
 In function `sXK_info':
 (.text+0x5a): undefined reference to `__stg_EAGER_BLACKHOLE_INFO'
 }}}

 I attach the full test output from version 2.2.0.1 of parallel and a
 similar compilation failure, when using parallel 1.1.0.1 in vty in
 LambdaHack.

-- 
Ticket URL: 
GHC 
The Glasgow Haskell Compiler
___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #4105: ffi005 fails on OS X

2010-05-29 Thread GHC
#4105: ffi005 fails on OS X
-+--
Reporter:  igloo |Owner:  
Type:  bug   |   Status:  new 
Priority:  normal|Milestone:  6.14.1  
   Component:  Compiler  |  Version:  6.12.2  
Keywords:|   Difficulty:  
  Os:  MacOS X   | Testcase:  ffi005  
Architecture:  Unknown/Multiple  |  Failure:  None/Unknown
-+--
 The ffi005 test is failing on OS X x86.

 The test is only run the optc way, but we get other bad results when
 compiling in other ways.

 normal:
 {{{
 {-# LANGUAGE ForeignFunctionInterface #-}

 import Control.Monad
 import Foreign.C

 main :: IO ()
 main = doit sin mysin (encodeFloat 7926335344172077 (-54))

 doit :: (CDouble -> CDouble) -> (CDouble -> CDouble) -> CDouble -> IO ()
 doit f g x = do let fx = f x
 gx = g x
 when (fx /= gx) $ do print x
  print (decodeFloat x)
  print fx
  print gx
  print (fx - gx)

 foreign import ccall "sin" mysin :: CDouble -> CDouble
 }}}
 {{{
 $ ghc q.hs -o q; ./q
 0.4402
 (7926335344172077,-54)
 0.4259394650659998
 0.42593946506599983
 -5.551115123125783e-17
 }}}
 optc:
 {{{
 {-# LANGUAGE ForeignFunctionInterface #-}

 import Control.Monad
 import Foreign
 import Foreign.C

 main :: IO ()
 main = do sin_addr <- wrapId sin
   doit sin (dyn_sin sin_addr) (encodeFloat 7926335344172077 (-54))
   freeHaskellFunPtr sin_addr

 doit :: (CDouble -> CDouble) -> (CDouble -> CDouble) -> CDouble -> IO ()
 doit f g x = do let fx = f x
 gx = g x
 when (fx /= gx) $ do print x
  print (decodeFloat x)
  print fx
  print gx
  print (fx - gx)

 foreign import ccall "wrapper" wrapId :: (CDouble -> CDouble) -> IO
 (FunPtr (CDouble -> CDouble))
 foreign import ccall "dynamic" dyn_sin :: FunPtr (CDouble -> CDouble) ->
 (CDouble -> CDouble)
 }}}
 {{{
 $ ghc w.hs -o w -fvia-c -O; ./w
 0.4402
 (7926335344172077,-54)
 0.42593946506599983
 0.4259394650659998
 5.551115123125783e-17
 }}}
 optasm:
 {{{
 {-# LANGUAGE ForeignFunctionInterface #-}

 import Control.Monad
 import Foreign
 import Foreign.C

 main :: IO ()
 main = do sin_addr <- wrapId sin
   doit sin (dyn_sin sin_addr) (encodeFloat 7926335344172077 (-54))
   freeHaskellFunPtr sin_addr

 doit :: (CDouble -> CDouble) -> (CDouble -> CDouble) -> CDouble -> IO ()
 doit f g x = do let fx = f x
 gx = g x
 when (fx /= gx) $ do print x
  print (decodeFloat x)
  print fx
  print gx
  print (decodeFloat fx)
  print (decodeFloat gx)
  print (fx == gx)
  print (decodeFloat fx == decodeFloat
 gx)
  print (fx - gx)

 foreign import ccall "wrapper" wrapId :: (CDouble -> CDouble) -> IO
 (FunPtr (CDouble -> CDouble))
 foreign import ccall "dynamic" dyn_sin :: FunPtr (CDouble -> CDouble) ->
 (CDouble -> CDouble)
 }}}
 {{{
 $ ghc r.hs -o r -O; ./r
 0.4402
 (7926335344172077,-54)
 0.4259394650659998
 0.4259394650659998
 (7673043264614500,-54)
 (7673043264614500,-54)
 False
 True
 0.0
 }}}

-- 
Ticket URL: 
GHC 
The Glasgow Haskell Compiler
___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #4104: ghc-pkg refuses to register packages if some include directories don't exist

2010-05-29 Thread GHC
#4104: ghc-pkg refuses to register packages if some include directories don't
exist
-+--
Reporter:  mux   |   Owner:
Type:  bug   |  Status:  new   
Priority:  normal|   Component:  Package system
 Version:  6.12.2|Keywords:
  Os:  Unknown/Multiple  |Testcase:
Architecture:  Unknown/Multiple  | Failure:  None/Unknown  
-+--

Comment(by duncan):

 Note that it is not unique to Gtk2Hs's build system. Cabal has direct
 support for `pkg-config` and also uses all the include directories it
 supplies.

-- 
Ticket URL: 
GHC 
The Glasgow Haskell Compiler
___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #4104: ghc-pkg refuses to register packages if some include directories don't exist

2010-05-29 Thread GHC
#4104: ghc-pkg refuses to register packages if some include directories don't
exist
-+--
Reporter:  mux   |   Owner:
Type:  bug   |  Status:  new   
Priority:  normal|   Component:  Package system
 Version:  6.12.2|Keywords:
  Os:  Unknown/Multiple  |Testcase:
Architecture:  Unknown/Multiple  | Failure:  None/Unknown  
-+--
 When registering a package, ghc-pkg fails with an error if any of the
 include directories do not exist.  This is fine in general, but causes
 installation failures with gtk2hs.  This is because the gtk2hs build tools
 will add all the directories given by "pkg-config --cflags gtk+-2.0",
 which typically contains lots of redundant and possibly non-existent
 directories, depending on your operating system.

 Maybe ghc-pkg should just warn instead?

-- 
Ticket URL: 
GHC 
The Glasgow Haskell Compiler
___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs