
#12899: ghc panics at random places with -jX -------------------------------------+------------------------------------- Reporter: pacak | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by pacak): {{{ <no location info>: error: ghc: panic! (the 'impossible' happened) (GHC version 8.1.20161202 for x86_64-unknown-linux): ASSERT failed! in_scope InScope {wild_00 eta_Xb8 ds4_azye z_azyh s7_azyl ds5_azyr wild5_azBv v3_azBx i_azBy wild7_azBI x_azBP y_azCG wild9_azCK wild_a2Buo x_a2Bux xs1_a2BuC wild_azHBp dt_azHBx ds1_azHBz ds2_azHBA ds3_azHBB $c==_aCmLf $c/=_aCmLs $cshowsPrec_aCmLH $cshow_aCmMu $cshowList_aCmME $cshowsPrec_aCn9Q $cshow_aCnbg $cshowList_aCnbs $cbasicUnsafeFreeze_aCnbK $cbasicUnsafeThaw_aCncb $cbasicLength_aCncD $cbasicUnsafeSlice_aCncL $cbasicUnsafeIndexM_aCncX $cbasicUnsafeCopy_aCndC $celemseq_aCndV $cbasicLength_aCneq $cbasicUnsafeSlice_aCneE $cbasicOverlaps_aCneW $cbasicUnsafeNew_aCnfa $cbasicInitialize_aCnfz $cbasicUnsafeReplicate_aCnfQ $cbasicUnsafeRead_aCngr $cbasicUnsafeWrite_aCnhc $cbasicClear_aCnhG $cbasicSet_aCnhZ $cbasicUnsafeCopy_aCnix $cbasicUnsafeMove_aCniW $cbasicUnsafeGrow_aCnjj $dVector_aCnST $cbasicUnsafeFreeze_aCogp $cbasicUnsafeThaw_aCogP $cbasicLength_aCohe $cbasicUnsafeSlice_aCohm $cbasicUnsafeIndexM_aCohw $cbasicUnsafeCopy_aCoi7 $celemseq_aCois $cbasicLength_aCoj5 $cbasicUnsafeSlice_aCojo $cbasicOverlaps_aCojH $cbasicUnsafeNew_aCojY $cbasicInitialize_aCokp $cbasicUnsafeReplicate_aCokL $cbasicUnsafeRead_aColG $cbasicUnsafeWrite_aComl $cbasicClear_aCon3 $cbasicSet_aConq $cbasicUnsafeCopy_aCooe $cbasicUnsafeMove_aCooD $cbasicUnsafeGrow_aCop0 xs_aCqkO ibaInst ibaBid ibaAsk $tc'IBA $tcInstBidAsk $fEqInstBidAsk $fShowInstBidAsk ibaAsk_ ibaBid_ ibaInst_ ibaBary makeOTMSpreads useMaxQty otmSampleAndWeight evalInstFitness $fVectorVectorInstBidAsk $fMVectorMVectorInstBidAsk $fUnboxInstBidAsk $tc'InstFitnessFunction $tcInstFitnessFunction $fShowInstFitnessFunction mkInstFitnessFunction fitnessFunction evalFitnessFunction modifyFitnessFunctionForSpotChange calcFitness calcDeltaVector td_now td_inst unitTests $fVectorVectorInstFitnessFunction $fMVectorMVectorInstFitnessFunction $fUnboxInstFitnessFunction $trModule $cbasicUnsafeSlice_sCqRU $cbasicUnsafeSlice_sCqXB $cbasicUnsafeSlice_sCryL $cbasicUnsafeSlice_sCrJw $trModule_sCrSA $trModule_sCrSB $tc'IBA_sCrSD $tcInstBidAsk_sCrSE $tc'InstFitnessFunction_sCrSF $tcInstFitnessFunction_sCrSH $cshowList_sCrTr $cshowList_sCrTH $cbasicUnsafeThaw_sCueJ $cbasicUnsafeThaw_sCuEw $dVector_sCvzg $dUnbox_sCvzh $sunzip_sCvHL $snew_sCvHV $sunstream_sCvI0 $sunstream_sCvID $szipWithM_sCvJj $slift_sCvJo $sstream_sCvJv $sconsume_sCvJE $s$fVectorVector(,)_$cbasicUnsafeFreeze_sCvJS $s$fVectorVector(,)_$cbasicUnsafeThaw_sCvK1 $s$fVectorVector(,)_$cbasicUnsafeIndexM_sCvKg $s$fVectorVector(,)_$celemseq_sCvKs $s$fMVectorMVector(,)_$cbasicUnsafeNew_sCvKV $s$fMVectorMVector(,)_$cbasicUnsafeReplicate_sCvL9 $s$fMVectorMVector(,)_$cbasicUnsafeRead_sCvLh $s$fMVectorMVector(,)_$cbasicUnsafeGrow_sCvLH $slength_sCvLX $sfilter_sCvM5 $simap_sCvMq $simap_sCvMw $sunstream_sCvME $sstream_sCvNg $ssum_sCvNx $sfoldlM'_sCvNF $sstream_sCvNL $szipWith_sCvNX $szipWithM_sCvO8 $sstream_sCvOi $sstream_sCvOu $sunstream_sCvOI $snew_sCvPg $stoNum_sCvPk $smergeWithKey_sCvPv $sfromList_sCvQX $sunstreamR_sCvVf $sstreamR_sCvWB $snull_sCvWZ $s$dmshow_sCvX6 $sshows_sCvXa $slookup_sCvXm $slift_sCvXv $smapM_sCvXE $sunstreamM_sCvXK $s$fVectorVector(,)_$cbasicUnsafeFreeze_sCvYt $s$fVectorVector(,)_$cbasicUnsafeThaw_sCvYE $s$fVectorVector(,)_$cbasicUnsafeIndexM_sCvYV $s$fVectorVector(,)_$celemseq_sCvZ5 $s$fVectorVector(,,)_$cbasicUnsafeFreeze_sCvZh $s$fVectorVector(,,)_$cbasicUnsafeThaw_sCvZt $s$fVectorVector(,,)_$cbasicUnsafeIndexM_sCvZR $s$fVectorVector(,,)_$cbasicUnsafeCopy_sCw00 $s$fVectorVector(,,)_$celemseq_sCw09 $s$fMVectorMVector(,,)_$cbasicUnsafeNew_sCw0E $s$fMVectorMVector(,,)_$cbasicInitialize_sCw0Q $s$fMVectorMVector(,,)_$cbasicUnsafeReplicate_sCw0Z $s$fMVectorMVector(,,)_$cbasicUnsafeRead_sCw1c $s$fMVectorMVector(,,)_$cbasicUnsafeWrite_sCw1p $s$fMVectorMVector(,,)_$cbasicClear_sCw1y $s$fMVectorMVector(,,)_$cbasicSet_sCw1H $s$fMVectorMVector(,,)_$cbasicUnsafeCopy_sCw1P $s$fMVectorMVector(,,)_$cbasicUnsafeMove_sCw1W $s$fMVectorMVector(,,)_$cbasicUnsafeGrow_sCw27 $s$fVectorVector(,,,)_$cbasicUnsafeFreeze_sCw2m $s$fVectorVector(,,,)_$cbasicUnsafeThaw_sCw2D $s$fVectorVector(,,,)_$cbasicUnsafeIndexM_sCw34 $s$fVectorVector(,,,)_$cbasicUnsafeCopy_sCw3i $s$fVectorVector(,,,)_$celemseq_sCw3t $s$fMVectorMVector(,,,)_$cbasicUnsafeNew_sCw42 $s$fMVectorMVector(,,,)_$cbasicInitialize_sCw4j $s$fMVectorMVector(,,,)_$cbasicUnsafeReplicate_sCw4s $s$fMVectorMVector(,,,)_$cbasicUnsafeRead_sCw4G $s$fMVectorMVector(,,,)_$cbasicUnsafeWrite_sCw4W $s$fMVectorMVector(,,,)_$cbasicClear_sCw55 $s$fMVectorMVector(,,,)_$cbasicSet_sCw5f $s$fMVectorMVector(,,,)_$cbasicUnsafeCopy_sCw5r $s$fMVectorMVector(,,,)_$cbasicUnsafeMove_sCw5B $s$fMVectorMVector(,,,)_$cbasicUnsafeGrow_sCw5K $s$fMVectorMVector(,,,)_$cbasicOverlaps_sCw5Z $s$fMVectorMVector(,,,)_$cbasicUnsafeSlice_sCw60 $s$fMVectorMVector(,,,)_$cbasicLength_sCw61 $s$fVectorVector(,,,)_$cbasicUnsafeSlice_sCw62 $s$fVectorVector(,,,)_$cbasicLength_sCw63 $s$fMVectorMVector(,,)_$cbasicOverlaps_sCw65 $s$fMVectorMVector(,,)_$cbasicUnsafeSlice_sCw66 $s$fMVectorMVector(,,)_$cbasicLength_sCw67 $s$fVectorVector(,,)_$cbasicUnsafeSlice_sCw69 $s$fVectorVector(,,)_$cbasicLength_sCw6a $s$fVectorVector(,)_sCw6b $s$fVectorVector(,)_$cbasicUnsafeCopy_sCw6c $s$fVectorVector(,)_$cbasicUnsafeSlice_sCw6d $s$fVectorVector(,)_$cbasicLength_sCw6e $smapM_sCw6f $s=<<_sCw6h $s$fEq(,)_$c==_sCw6i $s$fShow(,)_$cshowsPrec_sCw6j $s$dmshow_sCw6k $sshows_sCw6l $snull_sCw6m $sscanl1'_sCw6n $sscanr1'_sCw6o $sfromList_sCw6p $sbyEq_sCw6q $stoNum_sCw6r $szipWith_sCw6s $s!?_sCw6u $snew_sCw6v $slength_sCw6w $sapproxEq_sCw6x $s$fUnbox(,)_sCw6y $s$fMVectorMVector(,)_sCw6z $s$fMVectorMVector(,)_$cbasicUnsafeMove_sCw6A $s$fMVectorMVector(,)_$cbasicUnsafeCopy_sCw6B $s$fMVectorMVector(,)_$cbasicSet_sCw6C $s$fMVectorMVector(,)_$cbasicClear_sCw6D $s$fMVectorMVector(,)_$cbasicUnsafeWrite_sCw6E $s$fMVectorMVector(,)_$cbasicInitialize_sCw6G $s$fMVectorMVector(,)_$cbasicOverlaps_sCw6H $s$fMVectorMVector(,)_$cbasicUnsafeSlice_sCw6I $s$fMVectorMVector(,)_$cbasicLength_sCw6J $s$fVectorVector(,)_sCw6K $s$fVectorVector(,)_$cbasicUnsafeCopy_sCw6L $s$fVectorVector(,)_$cbasicUnsafeSlice_sCw6M $s$fVectorVector(,)_$cbasicLength_sCw6N $szipWithM__sCw6P $snew_sCw6Q lvl_sCw72 lvl_sCw76 lvl_sCw7c lvl_sCw7h lvl_sCw7r lvl_sCw7C lvl_sCw7I lvl_sCw7O lvl_sCw7R lvl_sCw7Z lvl_sCw88 lvl_sCwn8 lvl_sCwuy lvl_sCwyz ipv1_sCwzG lvl_sCx2j lvl_sCx2I $stoNum_sCACQ $ssum_sCBcu $slength_sCOwz $snull_sCRhQ lvl_sCRwH lvl_sCSUV evalFitnessFunction_sCTgx ds_sCTtG ~~~_sCTtR $sconsume_sCWPn foldlM_loop_sCYyL unitTests_sDkwU unitTests_sDkwV unitTests_sDkxV unitTests_sDkxW unitTests_sDkxX unitTests_sDkxY unitTests_sDkxZ unitTests_sDky0 unitTests_sDky2 unitTests_sDky3 unitTests_sDkya unitTests_sDkyb unitTests_sDkyc unitTests_sDkye unitTests_sDkyf unitTests_sDkyh unitTests_sDkyi unitTests_sDkyj unitTests_sDkyl unitTests_sDkym unitTests_sDkyp unitTests_sDkyq unitTests_sDkyr unitTests_sDkyt unitTests_sDkyu unitTests_sDkyx unitTests_sDkyy unitTests_sDkyz unitTests_sDkyC unitTests_sDkyD unitTests_sDkyG unitTests_sDkyH unitTests_sDkyI unitTests_sDkyK unitTests_sDkyL unitTests_sDkyN unitTests_sDkyO unitTests_sDkyP unitTests_sDkyR unitTests_sDkyS unitTests_sDkyU unitTests_sDkyW unitTests_sDkyX unitTests_sDkyZ unitTests_sDkz0 unitTests_sDkz4 unitTests_sDkz5 unitTests_sDkz6 unitTests_sDkz8 unitTests_sDkza unitTests_sDkze unitTests_sDkzf unitTests_sDkzg unitTests_sDkzi unitTests_sDkzj unitTests_sDkzn unitTests_sDkzo unitTests_sDkzp unitTests_sDkzs unitTests_sDkzt unitTests_sDkzy unitTests_sDkzz unitTests_sDkzA unitTests_sDkzD unitTests_sDkzE unitTests_sDkzG unitTests_sDkzH unitTests_sDkzI unitTests_sDkzK unitTests_sDkzL unitTests_sDkzO unitTests_sDkzP unitTests_sDkzQ unitTests_sDkzT unitTests_sDkzU unitTests_sDkzW unitTests_sDkzY unitTests_sDkzZ unitTests_sDkA6 unitTests_sDkA7 unitTests_sDkA8 $szipWithM__sDm6V unitTests_sDoQH $j_sDylm $wotmSampleAndWeight_sE07u $w$c==_sE08Z $wtoOrdinal1_sE09E $wfromOrd2_sE0a3 $w$cshowsPrec_sE0aB $w$cshowsPrec_sE0aZ $wcalcDeltaVector_sE0pa $wuseMaxQty_sE0qL $w$ssum_sE0UI lvl_sEhjh lvl_sEhjC lvl_sEhkq lvl_sEhkr lvl_sEhks lvl_sEhku lvl_sEhkG lvl_sEhkH $wtoDiff2_sEhkJ lvl_sEhkK lvl_sEhkL lvl_sEhkM lvl_sEhle lvl_sEhlf lvl_sEhlg lvl_sEhlh lvl_sEhly lvl_sEhlz lvl_sEhlA lvl_sEhlB lvl_sEhwT lvl_sEhwU lvl_sEhwV lvl_sEhwW lvl_sEhwX lvl_sEhwY lvl_sEhx0 lvl_sEhx1 lvl_sEhx2 lvl_sEhx3 lvl_sEhx8 lvl_sEhx9 lvl_sEhxc lvl_sEhxd lvl_sEhxe lvl_sEhxf lvl_sEhFI lvl_sEhFU foldlM_loop_sEhGN wild_sEhH7 dt_sEhH8 dt1_sEhH9 dt2_sEhHa wild_sEhHc dt_sEhHd dt1_sEhHe dt2_sEhHf wild_sEhHh dt_sEhHi dt1_sEhHj dt2_sEhHk lvl_sEhJh lvl_sEhJi lvl_sEhJj lvl_sEhJk lvl_sEhN8 lvl_sEhNk lvl_sEhNx lvl_sEhNI lvl_sEhOD foldlM_loop_sEhRb go2_sEhTm go2_sEhTo lvl_sEhTt lvl_sEhTw merge_sEhUl lvl_sEhV5 merge_sEhVc $j_sEhWi lvl_sEi3O lvl_sEi41 lvl_sEiwB lvl_sEiwN lvl_sEiNk lvl_sEiNy lvl_sEiWh lvl_sEiX4 lvl_sEiX5 lvl_sEiX6 poly_$j_sEj1Y lvl_sEj20 foldlM_loop_sEj3j foldlM_loop_sEjal lvl_sEjdN lvl_sEjdO lvl_sEjdR lvl_sEjdT lvl_sEjdU lvl_sEjdY lvl_sEje3 lvl_sEje4 lvl_sEje7 lvl_sEjeb lvl_sEjed lvl_sEjee lvl_sEjei lvl_sEjel lvl_sEjem lvl_sEjen lvl_sEjeo lvl_sEjes lvl_sEjet lvl_sEjev lvl_sEjex lvl_sEjey lvl_sEjeC lvl_sEjeD lvl_sEjeG lvl_sEjeH lvl_sEjeI lvl_sEjeS lvl_sEjeT lvl_sEjf2 lvl_sEjf3 lvl_sEjfd lvl_sEjfe lvl_sEjfh lvl_sEjfm lvl_sEjfn lvl_sEjfq lvl_sEjfv lvl_sEjfw lvl_sEjfz lvl_sEjfC lvl_sEjfE lvl_sEjfF lvl_sEjfI lvl_sEjfN lvl_sEjfO lvl_sEjfY lvl_sEjfZ lvl_sEjg8 lvl_sEjg9 lvl_sEjgb lvl_sEjgc lvl_sEjgd lvl_sEjge lvl_sEjgf lvl_sEjgg lvl_sEjgh lvl_sEjgi lvl_sEjgj lvl_sEjgk lvl_sEjgl lvl_sEjgm lvl_sEjgn lvl_sEjgo lvl_sEjgp lvl_sEjh7 loc_sEjj2 loc_sEjj4 loc_sEjja loc_sEjjc loc_sEjje $dIP_sEjjg $dIP_sEjji $dIP_sEjjk lvl_sEjjX lvl_sEjjY lvl_sEjk7 lvl_sEjk9 lvl_sEjka lvl_sEjkb lvl_sEjkc lvl_sEjki lvl_sEjkj lvl_sEjkk lvl_sEjkl lvl_sEjkn lvl_sEjko lvl_sEjkp lvl_sEjkq lvl_sEjmW lvl_sEjmX lvl_sEjmY lvl_sEjmZ lvl_sEjnR lvl_sEjnS lvl_sEjnT lvl_sEjnU lvl_sEjnZ lvl_sEjo0 lvl_sEjo1 lvl_sEjo2 lvl_sEjo8 lvl_sEjo9 lvl_sEjoa lvl_sEjob lvl_sEjoh lvl_sEjoi lvl_sEjoj lvl_sEjok lvl_sEjor lvl_sEjos lvl_sEjot lvl_sEjou lvl_sEjox lvl_sEjoy lvl_sEjoz lvl_sEjoA lvl_sEjoM lvl_sEjoN lvl_sEjoO lvl_sEjoP $sfoldlM_loop_sEwVd $sgo2_sExlJ $sgo2_sExlL $smerge_sExnj $smerge_sExnm $smerge_sExo8 $smerge_sExon sc_sExtw sc_sExtx sc_sExty $s$j_sExtS} tenv [] tenvFVs [] cenv [sExtz :-> sg_sExtz] cenvFVs [sExtz :-> sg_sExtz] tys [PrimState (ST RealWorld)] cos [] Call stack: CallStack (from HasCallStack): prettyCurrentCallStack, called at compiler/utils/Outputable.hs:1114:58 in ghc:Outputable callStackDoc, called at compiler/utils/Outputable.hs:1163:22 in ghc:Outputable assertPprPanic, called at compiler/types/TyCoRep.hs:2023:56 in ghc:TyCoRep checkValidSubst, called at compiler/types/TyCoRep.hs:2056:17 in ghc:TyCoRep substTy, called at compiler/types/Coercion.hs:1457:33 in ghc:Coercion Call stack: CallStack (from HasCallStack): prettyCurrentCallStack, called at compiler/utils/Outputable.hs:1114:58 in ghc:Outputable callStackDoc, called at compiler/utils/Outputable.hs:1118:37 in ghc:Outputable pprPanic, called at compiler/utils/Outputable.hs:1161:5 in ghc:Outputable assertPprPanic, called at compiler/types/TyCoRep.hs:2023:56 in ghc:TyCoRep checkValidSubst, called at compiler/types/TyCoRep.hs:2056:17 in ghc:TyCoRep substTy, called at compiler/types/Coercion.hs:1457:33 in ghc:Coercion Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12899#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler