Custom Query

Filters
 
Columns

Show under each result:


Results (1 - 3 of 5826)

1 2 3 4 5 6 7 8 9 10 11
Ticket Resolution Summary Owner Reporter
#5496 invalid Reify class instances zzo38

Reported by zzo38, 20 months ago.

description
<interactive>:1:3:
    Exception when trying to run compile-time code:
      <interactive>: panic! (the 'impossible' happened)
  (GHC version 7.0.3 for i386-unknown-mingw32):
        reifyType PredTy
    <pred>base:GHC.Num.Num{tc 2b}
            integer-gmp:GHC.Integer.Type.Integer{tc 314}

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

      Code: (>>)
              (>>=)
                (>>=)
                  classInstances 'Num [Language.Haskell.TH.Syntax.ConT 'Integer]

                  (.) reify head
                (.) runIO print
              [| 0 |]
    In the expression:
      $(classInstances 'Num [ConT 'Integer] >>= reify . head
    >>= runIO . print
  >>
    [| 0 |])
    In an equation for `it':
        it
          = $(classInstances 'Num [ConT 'Integer] >>= reify . head
          >>= runIO . print
        >>
          [| 0 |])
#5521 invalid Allow unknown fields in .cabal with X- at front zzo38

Reported by zzo38, 20 months ago.

description

I have suggestion allowing unknown fields in a .cabal file, and if they are named with X- at front, they will not have warning message, and will be ignored if they are not understand.

#7292 fixed Optimization works for Word but not Word32 or Word64 igloo zuserm

Reported by zuserm, 8 months ago.

description

GHC 7.6.1 fails to properly optimize some code when explicitly specifying word size, that optimizes properly for Word.

I have also tested this in 7.4.2 and it works properly.

An example program:

import Criterion.Main
import Control.Monad.Writer
import Data.Bits
import Data.List
import Data.Word

bitByBitCopy :: Word -> Word
bitByBitCopy w = foldl' f 0 [0 .. bitSize w - 1]
  where f acc n = if w `testBit` n then acc `setBit` n else acc

bitByBitCopy32 :: Word32 -> Word32
bitByBitCopy32 w = foldl' f 0 [0 .. bitSize w - 1]
  where f acc n = if w `testBit` n then acc `setBit` n else acc

bitByBitCopy64 :: Word64 -> Word64
bitByBitCopy64 w = foldl' f 0 [0 .. bitSize w - 1]
  where f acc n = if w `testBit` n then acc `setBit` n else acc

-- Bench
wbench :: Benchmarkable b => String -> b -> Writer [Benchmark] ()
wbench s b = tell [bench s b]

main = defaultMain . execWriter $ do
    wbench "Word" $ nf bitByBitCopy 0
    when (bitSize (0::Word) == 32) $
        wbench "Word32" $ nf bitByBitCopy32 0
    when (bitSize (0::Word) == 64) $
        wbench "Word64" $ nf bitByBitCopy64 0

1 2 3 4 5 6 7 8 9 10 11
Note: See TracQuery for help on using queries.