www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 13871] New: [REG] Segmentation fault from std/variant.d:609

https://issues.dlang.org/show_bug.cgi?id=13871

          Issue ID: 13871
           Summary: [REG] Segmentation fault from std/variant.d:609
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: regression
          Priority: P1
         Component: Phobos
          Assignee: nobody puremagic.com
          Reporter: public dicebot.lv

DMD 8597cda, matching master Phobos

Doing `dub test` for https://github.com/Dicebot/libsdl-d results in
segmentation faul.

07:06:18 {master} ~/devel/libsdl-d$ gdb ./__test__library__ 
GNU gdb (GDB) 7.8.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./__test__library__...done.
(gdb) run
Starting program: /home/dicebot/devel/libsdl-d/__test__library__ 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Unittesting sdlang ast...

Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x0000000000595481 in
_D3std7variant178__T8VariantNVmi32TbTAyaTwTiTlTfTdTeTS3std8datetime4DateTS4lang3sdl5token12DateTimeFracTS3std8datetime7SysTimeTS4lang3sdl5token23DateTimeFracUnknownZoneTS4core4time8DurationTAhTnZ8VariantN217__T8opAssignTS3std7variant178__T8VariantNVmi32TbTAyaTwTiTlTfTdTeTS3std8datetime4DateTS4lang3sdl5token12DateTimeFracTS3std8datetime7SysTimeTS4lang3sdl5token23DateTimeFracUnknownZoneTS4core4time8DurationTAhTnZ8VariantNZ8opAssignMFNeS3std7variant178__T8VariantNVmi32TbTAyaTwTiTlTfTdTeTS3std8datetime4DateTS4lang3sdl5token12DateTimeFracTS3std8datetime7SysTimeTS4lang3sdl5token23DateTimeFracUnknownZoneTS4core4time8DurationTAhTnZ8VariantNZS3std7variant178__T8VariantNVmi32TbTAyaTwTiTlTfTdTeTS3std8datetime4DateTS4lang3sdl5token12DateTimeFracTS3std8datetime7SysTimeTS4lang3sdl5token23DateTimeFracUnknownZoneTS4core4time8DurationTAhTnZ8VariantN
(this=0x7ffff7ecab90, __HID71=0x7ffff7ff2540, rhs=...)
    at /home/dicebot/devel/dlang/phobos/std/variant.d:609
#2  0x000000000058ae51 in
lang.sdl.parser.ValueEvent.opAssign(lang.sdl.parser.ValueEvent)
(this=0x7ffff7ecab70, p=...)
    at source/lang/sdl/parser.d:160
#3  0x00000000005a471c in
_D3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN42__T7handlerTS4lang3sdl6parser10ValueEventZ7handlerFNeE3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN4OpIDPG104hPvZ10tryPuttingFPS4lang3sdl6parser10ValueEventC8TypeInfoPvZb
(target=0x7ffff7ecab70, 
    targetType=0x828ac0 <TypeInfo_S4lang3sdl6parser10ValueEvent.init$>,
src=0x7ffff7ff27a8)
    at /home/dicebot/devel/dlang/phobos/std/variant.d:334
#4  0x00000000005a424a in
_D3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN42__T7handlerTS4lang3sdl6parser10ValueEventZ7handlerFNeE3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN4OpIDPG104hPvZl
(parm=0x7ffff7ecab68, 
    pStore=0x7ffff7ff27a8, selector=<incomplete type>) at
/home/dicebot/devel/dlang/phobos/std/variant.d:365
#5  0x0000000000596342 in
_D3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN252__T8opAssignTS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZ8opAssignMFNeS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantN
(this=0x7ffff7ecab68, __HID74=0x7ffff7ff2828, rhs=...)
    at /home/dicebot/devel/dlang/phobos/std/variant.d:613
#6  0x000000000058a85f in
_D4lang3sdl15libInputVisitor287__T12InputVisitorTS4lang3sdl6parser10PullParserTS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZ12InputVisitor5yieldMFS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZv
(this=0x7ffff7ecab00, elem=...) at source/lang/sdl/libInputVisitor.d:79
#7  0x000000000058c786 in
_D4lang3sdl6parser10PullParser39__T4emitTS4lang3sdl6parser10ValueEventZ4emitMFS4lang3sdl6parser10ValueEventZv
(this=0x7fffffff1440, event=...) at
/home/dicebot/devel/dlang/phobos/std/variant.d:194
#8  0x000000000058bb1c in lang.sdl.parser.PullParser.parseValue()
(this=0x7fffffff1440) at source/lang/sdl/parser.d:371
#9  0x000000000058ba6a in lang.sdl.parser.PullParser.parseValues()
(this=0x7fffffff1440)
    at source/lang/sdl/parser.d:351
#10 0x000000000058b79e in lang.sdl.parser.PullParser.parseTag()
(this=0x7fffffff1440) at source/lang/sdl/parser.d:286
#11 0x000000000058b562 in lang.sdl.parser.PullParser.parseTags()
(this=0x7fffffff1440) at source/lang/sdl/parser.d:240
#12 0x000000000058b468 in lang.sdl.parser.PullParser.parseRoot()
(this=0x7fffffff1440) at source/lang/sdl/parser.d:219
#13 0x000000000058b3ca in
_D4lang3sdl6parser10PullParser5visitMFC4lang3sdl15libInputVisitor287__T12InputVisitorTS4lang3sdl6parser10PullParserTS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZ12InputVisitorZv
(this=0x7fffffff1440, v=0x7ffff7ecab00) at source/lang/sdl/parser.d:201
#14 0x000000000058a6fb in
_D4lang3sdl15libInputVisitor287__T12InputVisitorTS4lang3sdl6parser10PullParserTS3std7variant213__T8VariantNVmi104TS4lang3sdl6parser14FileStartEventTS4lang3sdl6parser12FileEndEventTS4lang3sdl6parser13TagStartEventTS4lang3sdl6parser11TagEndEventTS4lang3sdl6parser10ValueEventTS4lang3sdl6parser14AttributeEventZ8VariantNZ12InputVisitor3runMFZv
(this=0x7ffff7ecab00) at source/lang/sdl/libInputVisitor.d:45
#15 0x00000000005e14ba in core.thread.Fiber.run() ()
#16 0x00000000005e13cd in fiber_entryPoint ()
#17 0x0000000000000000 in ?? ()

This is regression from 2.066.1, I have not found what exactly has introduced
it though

--
Dec 16 2014