Core dump parse D in Doxygen 1.8.11

Nick MacDonald <[email protected]>
Newsgroups gmane.text.doxygen.general
Message-ID <CAGu-nu=uprjWFJDx7_fc0TgCEwmRi9NWLxRjXx=M=6AL6hzz1g@mail.gmail.com>
Hey Dimitri:

I have not posted here in a long, long time, but I hope I am doing
this right.  I am trying to help my friend who is having trouble with
using Doxygen with D for the first time.  He's using the latest DMD
and so the latest D language features, I don't know if that is the
source of the problem. I created a Doxyfile for him, edited it to
include undocumented members and some other obvious changes, and then
ran doxygen and it crashes with a segfault.  Here's some info to help
maybe lead to the problem, although you can follow up with me in
person if you need more specific details or the actual code.

If I comment in the line:  loadedScenes[SceneEnum.TITLESCENE]   = new
TitleScene(); this causes the segfault.  I ran in in gdb and did a
backtrace, which is included.  There is a snippit from scene.d
included.

Nick


Doxygen 1.8.11 on Fedora 24

...
...
Parsing file /home/nick/hz/src/scene/scene.d...

Program received signal SIGSEGV, Segmentation fault.
0x00005555558167e2 in QCString::operator+=(char const*) ()
(gdb) backtrace
#0  0x00005555558167e2 in QCString::operator+=(char const*) ()
#1  0x0000555555a9e13f in scannerYYlex() ()
#2  0x0000555555aa97f9 in CLanguageScanner::parseInput(char const*,
char const*, Entry*, bool, QStrList&) ()
#3  0x00005555557dc8d4 in parseFiles(Entry*, EntryNav*) ()
#4  0x000055555580efe4 in parseInput() ()
#5  0x00005555557bf7b9 in main ()

immutable enum SceneEnum {
   TITLESCENE,
   SELECTSCENE,
   LOADSCENE,
   PLAYINGSCENE,
}

private {
   GameScene[SceneEnum] loadedScenes;
   SceneEnum activeScene;
}

shared static this() {
/* Commenting this back in causes a coredump in Doxygen
   loadedScenes[SceneEnum.TITLESCENE]   = new TitleScene();
   loadedScenes[SceneEnum.SELECTSCENE]  = new SelectScene();
   loadedScenes[SceneEnum.LOADSCENE]    = new LoadScene();
   loadedScenes[SceneEnum.PLAYINGSCENE] = new PlayingScene();
   activeScene = SceneEnum.TITLESCENE;
   loadedScenes[activeScene].enter();
*/
}


-- 
Nick MacDonald
[email protected]

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.