[GHC] #15696: Derived Ord instance for enumerations with more than 8 elements seems to be incorrect
GHC
ghc-devs at haskell.org
Sat Oct 6 16:21:54 UTC 2018
#15696: Derived Ord instance for enumerations with more than 8 elements seems to be
incorrect
-------------------------------------+-------------------------------------
Reporter: mrkkrp | Owner: (none)
Type: bug | Status: patch
Priority: highest | Milestone: 8.6.2
Component: Compiler | Version: 8.6.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Incorrect result | Unknown/Multiple
at runtime | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D5196,
Wiki Page: | Phab:D5201
-------------------------------------+-------------------------------------
Comment (by osa1):
I did a little bit of debugging for the segfault problem. I'm wondering if
I'm triggering some other bug, because the segfault is happening during
GC:
{{{
>>> bt
#0 evacuate1 (p=p at entry=0x420fe54720) at rts/sm/Evac.c:642
#1 0x00007fdcea628c35 in scavenge_block1 (bd=0x420fe01500) at
rts/sm/Scav.c:541
#2 0x00007fdcea648f5f in scavenge_find_work () at rts/sm/Scav.c:2067
#3 scavenge_loop1 () at rts/sm/Scav.c:2130
#4 0x00007fdcea6502e2 in scavenge_until_all_done () at rts/sm/GC.c:1090
#5 0x00007fdcea650c3f in GarbageCollect (collect_gen=collect_gen at entry=1,
do_heap_census=do_heap_census at entry=false, gc_type=gc_type at entry=2,
cap=cap at entry=0x7fdcea686ac0 <MainCapability>,
idle_cap=idle_cap at entry=0x1f14dd0) at rts/sm/GC.c:421
#6 0x00007fdcea635f17 in scheduleDoGC (pcap=pcap at entry=0x7ffdb2c2fea0,
task=task at entry=0x1f109b0, force_major=force_major at entry=false) at
rts/Schedule.c:1798
#7 0x00007fdcea6368ec in schedule
(initialCapability=initialCapability at entry=0x7fdcea686ac0
<MainCapability>, task=task at entry=0x1f109b0) at
rts/Schedule.c:546
#8 0x00007fdcea637e41 in scheduleWaitThread (tso=0x4200006388,
ret=ret at entry=0x0, pcap=pcap at entry=0x7ffdb2c2ff38) at rts/Schedule.c:2537
#9 0x00007fdcea642a98 in rts_evalLazyIO (cap=cap at entry=0x7ffdb2c2ff38,
p=p at entry=0x756150, ret=ret at entry=0x0) at rts/RtsAPI.c:530
#10 0x00007fdcea6433ec in hs_main (argc=<optimized out>, argv=<optimized
out>, main_closure=0x756150, rts_config=...) at rts/RtsMain.c:72
#11 0x0000000000749560 in main ()
}}}
The info table pointer is wrong:
{{{
>>> print info
$1 = (const StgInfoTable *) 0x72
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15696#comment:55>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list