Summary: | Crash when parsing php project | ||
---|---|---|---|
Product: | [Applications] kdevelop | Reporter: | Yörn Jünger <greggel> |
Component: | general | Assignee: | kdevelop-bugs-null |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | anbugge, werner |
Priority: | NOR | ||
Version First Reported In: | 4.2.60 | ||
Target Milestone: | 4.2.0 | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
New crash information added by DrKonqi
Console output (kdevelop 2> error.log) |
Description
Yörn Jünger
2011-05-14 20:30:39 UTC
Created attachment 60163 [details]
New crash information added by DrKonqi
kdevelop (4.2.60) on KDE Platform 4.6.2 (4.6.2) using Qt 4.7.2
I have experienced the same crash the last couple weeks or so. Compiling sources from git.
-- Backtrace (Reduced):
#11 0x00007f675fea606a in Php::ExpressionVisitor::buildNamespaceUses (this=0x7f6754e63280, namespaces=0x7f67586f1420, identifier=...) at /home/audun/projects/kde4/kdev-php/duchain/expressionvisitor.cpp:707
#12 0x00007f675fea3a07 in Php::ExpressionVisitor::visitFunctionCall (this=0x7f6754e63280, node=0x7f67586f13d8) at /home/audun/projects/kde4/kdev-php/duchain/expressionvisitor.cpp:322
#13 0x00007f675fc34eaa in Php::Visitor::visitNode (this=0x7f6754e63280, node=0x7f67586f13d8) at /home/audun/projects/.build/kde4/kdev-php/parser/phpvisitor.cpp:181
#14 0x00007f675fea268b in Php::ExpressionVisitor::visitNode (this=0x7f6754e63280, node=0x7f67586f13d8) at /home/audun/projects/kde4/kdev-php/duchain/expressionvisitor.cpp:131
#15 0x00007f675fc36195 in Php::DefaultVisitor::visitBaseVariableWithFunctionCalls (this=0x7f6754e63280, node=0x7f67586f13a8) at /home/audun/projects/.build/kde4/kdev-php/parser/phpdefaultvisitor.cpp:91
Created attachment 60164 [details]
Console output (kdevelop 2> error.log)
can you please try to find out which file it is crashing at? run kdebugdialog and enable the php + kdevplatform language debug areas then open your crashing project in kdevelop again and take a look at the command line output - it should output the name of the parsed file some lines before the crash. then attach that file here so I can investigate The lines just before it crashes: kdevelop(19452)/kdevelop (php support) Php::ContextBuilder::build: compiling "/var/www/banto/modules/wolframalpha/language/norwegian.php" ASSERT: "identifier.count() == namespaces->namespaceNameSequence->count()" in file /home/audun/projects/kde4/kdev-php/duchain/expressionvisitor.cpp, line 707 kdevelop: Fatal IO error: client killed KCrash: Application 'kdevelop' crashing... norwegian.php is a quite small file: <?php $this->lang_mod = array( 'MODULE_NAME' => 'Wolfram Alpha', 'NO_RESPONSE' => 'Ingen respons', 'NOT_INITIALIZED' => 'Ikke klargjort', 'FETCH_CONTENT' => 'Hent innhold', 'GOTO' => 'Vis i Wolfram|Alpha', 'SHOW_MORE' => 'Vis mer', 'QUERY' => 'Forespørsel:' ); ?> I suspected the pipe character could be the problem, and removing it seemed to fix this file. Which led me to the next crashing file: <?php /* * To change this template, choose Tools | Templates * and open the template in the editor. */ ?> Another pipe! Actually, the first time I removed the pipe it didn't fix it. Deleting everything in the file did (It obviously didn't do anything..), and led me to the next file: http://paste.kde.org/76051/ No pipe char there. Side note: I recreated the Tools | Templates file, it crashed on that file again, I then removed the pipe and it failed on another file again. (Compared to still failing on the same file containing just the comment without the pipe previously). Another failed file (funny how it's always small, simple files that fail): <?php function gallery_autoexec() { banto()->modules->addCreateMenu('gallery', 'create', 'GALLERY_CREATE_NEW'); } ?> And so the story goes. It always fails on the same assertion, line 707. Don't hesitate to ask for more information, I love kdevelop with php support and will be happy to help. I'd take a look at the source myself, but I don't have time atm.. I'm still using the git version from a couple of weeks ago, btw. I'll update now and let you know if anything has changed since that. I now have removed my kdevelop installation completely, cloned git again and recompiled, and this bug seems to be gone. I had some issues compiling kdev-php, something about Php::Php not being defined in duchain.moc, this was fixed by removing the build directory and recompiling. I changed from -DCMAKE_BUILD_TYPE=debugfull to RelWithDebInfo in the process according to instructions at kdevelop.org, could this be related to anything? I'm still using a very old version of your bash_setup_kde4_programming, guess I should update that anyways.. I'm digressing. The point is: This bug is gone for me after rebuilding everything :) debugfull is better for compiled stuff as it will ensure best-quality backtraces. Anyhow, RelWithDebInfo should be fine for now. Anyhow, Yörn could you try the same as Audun? If it does not help you, please reopen the bug. *** Bug 272308 has been marked as a duplicate of this bug. *** I'm back from holiday :) At the time i have deleted cache, user settings and rebuilded whole kdev*. And it changed nothing. Yesterday i have rebuilded (Gentoo) everything from cloned git, but without changing flags. Magically it doesn't crash anymore. Therefore bug keeps closed. |