Bug 231275 - umbrello crashes while importing boost/bimap.hpp header
Summary: umbrello crashes while importing boost/bimap.hpp header
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: 2.4.2
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-19 08:23 UTC by paolog
Modified: 2014-02-12 01:01 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.13.0


Attachments
New crash information added by DrKonqi (5.59 KB, text/plain)
2010-08-12 15:19 UTC, paolog
Details
screenshot with Umbrello 2.8.4 from the wheezy package vs the current git master (204.59 KB, image/png)
2014-02-02 22:19 UTC, paolog
Details
stack trace (6.51 KB, text/plain)
2014-02-03 07:36 UTC, paolog
Details

Note You need to log in before you can comment on or make changes to this bug.
Description paolog 2010-03-19 08:23:44 UTC
Version:           2.3.2 (using KDE 4.3.2)
OS:                Linux
Installed from:    Ubuntu Packages

open umbrello
take menu command code->import classes 
browse to /usr/include/boost (libboost1.38-dev)

double-click on bimap.hpp

Application: Modellatore UML Umbrello (umbrello), signal: Segmentation fault
[KCrash Handler]
#6  0x0809bb29 in _start ()
Comment 1 Dario Andres 2010-03-19 13:36:03 UTC
- If you can reproduce the crash at will (or you experience this regularly), can you install the "kdesdk-dbg" package and post a complete backtrace here? (you can get more information at http://techbase.kde.org/User:DarioAndres/Basic_Guide_about_Crash_Reporting ) Thanks
Comment 2 paolog 2010-03-19 15:04:16 UTC
Here u go

===

Application: Modellatore UML Umbrello (umbrello), signal: Segmentation fault
[KCrash Handler]
#6  QBasicAtomicInt::ref (this=0xbfea54cc, t=...) at /usr/include/qt4/QtCore/qatomic_i386.h:120
#7  QString (this=0xbfea54cc, t=...) at /usr/include/qt4/QtCore/qstring.h:712
#8  QList<QString>::append (this=0xbfea54cc, t=...) at /usr/include/qt4/QtCore/qlist.h:428
#9  0x0812a017 in QStringList::operator<< (this=0xbfea5940, start=..., end=..., sep=...) at /usr/include/qt4/QtCore/qstringlist.h:87
#10 Parser::toString (this=0xbfea5940, start=..., end=..., sep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:3239
#11 0x0812c9aa in update_pos<AST> (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.h:63
#12 Parser::skipExpression (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:335
#13 0x0812cc48 in Parser::skipCommaExpression (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:269
#14 0x0812e7f3 in Parser::parseInitializer (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:2248
#15 0x081326ee in Parser::parseInitDeclarator (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:2182
#16 0x08136d1f in Parser::parseDeclarationInternal (this=0xbfea5940, node=..., comment=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:3035
#17 0x08138f57 in Parser::parseDeclaration (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:512
#18 0x0813a53c in Parser::parseTranslationUnit (this=0xbfea5940, node=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/parser.cpp:404
#19 0x08112ed5 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:246
#20 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#21 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#22 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#23 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea6080, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#24 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea6080, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#25 PreprocessLexer::handleDirective (this=0xbfea6080, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#26 0x0814671e in PreprocessLexer::nextLine (this=0xbfea6080) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#27 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea6080) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#28 0x0811daba in Lexer::tokenize (this=0xbfea6030) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#29 0x0811df14 in Lexer::setSource (this=0xbfea6030, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#30 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#31 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#32 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#33 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#34 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea6870, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#35 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea6870, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#36 PreprocessLexer::handleDirective (this=0xbfea6870, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#37 0x0814671e in PreprocessLexer::nextLine (this=0xbfea6870) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#38 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea6870) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#39 0x0811daba in Lexer::tokenize (this=0xbfea6820) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#40 0x0811df14 in Lexer::setSource (this=0xbfea6820, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#41 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#42 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#43 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#44 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#45 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea7060, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#46 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea7060, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#47 PreprocessLexer::handleDirective (this=0xbfea7060, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#48 0x0814671e in PreprocessLexer::nextLine (this=0xbfea7060) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#49 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea7060) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#50 0x0811daba in Lexer::tokenize (this=0xbfea7010) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#51 0x0811df14 in Lexer::setSource (this=0xbfea7010, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#52 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#53 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#54 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#55 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#56 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea7850, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#57 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea7850, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#58 PreprocessLexer::handleDirective (this=0xbfea7850, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#59 0x0814671e in PreprocessLexer::nextLine (this=0xbfea7850) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#60 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea7850) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#61 0x0811daba in Lexer::tokenize (this=0xbfea7800) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#62 0x0811df14 in Lexer::setSource (this=0xbfea7800, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#63 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#64 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#65 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#66 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#67 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea8040, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#68 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea8040, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#69 PreprocessLexer::handleDirective (this=0xbfea8040, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#70 0x0814671e in PreprocessLexer::nextLine (this=0xbfea8040) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#71 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea8040) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#72 0x0811daba in Lexer::tokenize (this=0xbfea7ff0) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#73 0x0811df14 in Lexer::setSource (this=0xbfea7ff0, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#74 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#75 0x081128bb in Driver::addDependence (this=0x8e39ed8, fileName=..., dep=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:159
#76 0x0814de33 in PreprocessLexer::addDependence(std::pair<QString, int> const&) const ()
#77 0x0815035f in boost::spirit::parser_result<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >, boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >::type boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > >::parse<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > >(boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> > const&) const
    ()
#78 0x08146103 in parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea8830, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/skip_rule.hpp:86
#79 parse<boost::spirit::sequence<boost::spirit::kleene_star<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::ext::skip_rule_iteration_policy<boost::spirit::rule<boost::spirit::scanner<boost::spirit::position_iterator<QChar const*, boost::spirit::file_position_base<std::basic_string<QChar, std::char_traits<QChar>, std::allocator<QChar> > >, boost::spirit::nil_t>, boost::spirit::scanner_policies<boost::spirit::iteration_policy, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t>, boost::spirit::iteration_policy>, boost::spirit::match_policy, boost::spirit::action_policy> >, boost::spirit::nil_t, boost::spirit::nil_t> >, boost::spirit::action<header, boost::_bi::bind_t<void, boost::_mfi::cmf1<void, PreprocessLexer, std::pair<QString, int> const&>, boost::_bi::list2<boost::_bi::value<PreprocessLexer*>, boost::arg<1> > > > > > (this=0xbfea8830, directive=...)
    at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h:268
#80 PreprocessLexer::handleDirective (this=0xbfea8830, directive=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:687
#81 0x0814671e in PreprocessLexer::nextLine (this=0xbfea8830) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:383
#82 0x08146ac9 in PreprocessLexer::preprocess (this=0xbfea8830) at ../../../umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp:588
#83 0x0811daba in Lexer::tokenize (this=0xbfea87e0) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:403
#84 0x0811df14 in Lexer::setSource (this=0xbfea87e0, source=..., p_filename=...) at ../../../umbrello/umbrello/codeimport/kdevcppparser/lexer.cpp:334
#85 0x08112cf6 in Driver::parseFile (this=0x8e39ed8, fileName=..., onlyPreProcess=false, force=false) at ../../../umbrello/umbrello/codeimport/kdevcppparser/driver.cpp:239
#86 0x08178bc9 in CppImport::parseFile (this=0x912e688, fileName=...) at ../../../umbrello/umbrello/codeimport/cppimport.cpp:133
#87 0x08161a75 in ClassImport::importFiles (this=0x912e688, fileList=...) at ../../../umbrello/umbrello/codeimport/classimport.cpp:45
#88 0x0870dcdd in UMLApp::importFiles (this=0x8bac300, fileList=0xbfea8a58) at ../../../umbrello/umbrello/uml.cpp:2213
#89 0x08718090 in UMLApp::slotImportClasses (this=0x8bac300) at ../../../umbrello/umbrello/uml.cpp:2250
#90 0x0871ead0 in UMLApp::qt_metacall (this=0x8bac300, _c=QMetaObject::InvokeMetaMethod, _id=-1239629567, _a=0xbfea8bf8) at ./uml.moc:276
#91 0xb620e263 in QMetaObject::activate (sender=0x8bff068, from_signal_index=5, to_signal_index=6, argv=0xbfea8bf8) at kernel/qobject.cpp:3113
#92 0xb620e6d8 in QMetaObject::activate (sender=0x8bff068, m=0xb6eb6e48, from_local_signal_index=1, to_local_signal_index=2, argv=0xbfea8bf8) at kernel/qobject.cpp:3207
#93 0xb664e9b1 in QAction::triggered (this=0x8bff068, _t1=false) at .moc/release-shared/moc_qaction.cpp:236
#94 0xb664ff32 in QAction::activate (this=0x8bff068, event=QAction::Trigger) at kernel/qaction.cpp:1160
#95 0xb6a9d9cc in QMenuPrivate::activateCausedStack (this=0x8d2a098, causedStack=..., action=0x8bff068, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:967
#96 0xb6aa403b in QMenuPrivate::activateAction (this=0x8d2a098, action=0x8bff068, action_e=QAction::Trigger, self=<value optimized out>) at widgets/qmenu.cpp:1060
#97 0xb6aa4bf7 in QMenu::mouseReleaseEvent (this=0x8d29d70, e=0xbfea9350) at widgets/qmenu.cpp:2254
#98 0xb72261c5 in KMenu::mouseReleaseEvent (this=0x8d29d70, e=0xbfea9350) at ../../kdeui/widgets/kmenu.cpp:456
#99 0xb66aa012 in QWidget::event (this=0x8d29d70, event=0xbfea9350) at kernel/qwidget.cpp:7549
#100 0xb6aa6e34 in QMenu::event (this=0x8d29d70, e=0xbfea9350) at widgets/qmenu.cpp:2353
#101 0xb6654f54 in QApplicationPrivate::notify_helper (this=0x8abd3b0, receiver=0x8d29d70, e=0xbfea9350) at kernel/qapplication.cpp:4056
#102 0xb665d033 in QApplication::notify (this=0xbfeaad30, receiver=0x8d29d70, e=0xbfea9350) at kernel/qapplication.cpp:3758
#103 0xb713bbfa in KApplication::notify (this=0xbfeaad30, receiver=0x8d29d70, event=0xbfea9350) at ../../kdeui/kernel/kapplication.cpp:302
#104 0xb61f86cb in QCoreApplication::notifyInternal (this=0xbfeaad30, receiver=0x8d29d70, event=0xbfea9350) at kernel/qcoreapplication.cpp:610
#105 0xb665bf6e in QCoreApplication::sendSpontaneousEvent (receiver=0x8d29d70, event=0xbfea9350, alienWidget=0x0, nativeWidget=0x8d29d70, buttonDown=0xb6ecfaa0, lastMouseReceiver=...)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#106 QApplicationPrivate::sendMouseEvent (receiver=0x8d29d70, event=0xbfea9350, alienWidget=0x0, nativeWidget=0x8d29d70, buttonDown=0xb6ecfaa0, lastMouseReceiver=...) at kernel/qapplication.cpp:2924
#107 0xb66cac87 in QETWidget::translateMouseEvent (this=0x8d29d70, event=0xbfeaa99c) at kernel/qapplication_x11.cpp:4343
#108 0xb66c9c4b in QApplication::x11ProcessEvent (this=0xbfeaad30, event=0xbfeaa99c) at kernel/qapplication_x11.cpp:3428
#109 0xb66f6502 in x11EventSourceDispatch (s=0x8ac0568, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#110 0xb5574e88 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#111 0xb5578730 in ?? () from /lib/libglib-2.0.so.0
#112 0xb5578863 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#113 0xb622302c in QEventDispatcherGlib::processEvents (this=0x8aa04e0, flags=...) at kernel/qeventdispatcher_glib.cpp:327
#114 0xb66f5be5 in QGuiEventDispatcherGlib::processEvents (this=0x8aa04e0, flags=...) at kernel/qguieventdispatcher_glib.cpp:202
#115 0xb61f6c79 in QEventLoop::processEvents (this=0xbfeaac94, flags=) at kernel/qeventloop.cpp:149
#116 0xb61f70ca in QEventLoop::exec (this=0xbfeaac94, flags=...) at kernel/qeventloop.cpp:201
#117 0xb61f953f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#118 0xb6654dd7 in QApplication::exec () at kernel/qapplication.cpp:3525
#119 0x086ec2b5 in main (argc=3, argv=0xbfeaaee4) at ../../../umbrello/umbrello/main.cpp:111
Comment 3 paolog 2010-08-12 15:19:07 UTC
Created attachment 50056 [details]
New crash information added by DrKonqi

Reproducible on Lucid Lynx with Umbrello Version 2.4.2 (using KDE 4.4.2)
Comment 4 Ralf Habacker 2014-02-01 13:42:33 UTC
could not be reproduced with git master
Comment 5 paolog 2014-02-02 22:19:43 UTC
Created attachment 84955 [details]
screenshot with Umbrello 2.8.4 from the wheezy package vs the current git master
Comment 6 paolog 2014-02-02 22:22:30 UTC
mmmmh I just git cloned master branch and built it on my debian wheezy.
I'm puzzled because there is no "Code" menu to start with (see screenshot above) so I cant' even **try** to reproduce my own submission of 4 years ago - am I missing something ?
Comment 7 Ralf Habacker 2014-02-03 06:30:58 UTC
(In reply to comment #6)
> mmmmh I just git cloned master branch and built it on my debian wheezy.
> I'm puzzled because there is no "Code" menu to start with (see screenshot
> above) so I cant' even **try** to reproduce my own submission of 4 years ago
> - am I missing something ?
This happens when running an uninstalled umbrello from the build dir. 
I suggest to either install the latest umbrello with your package manager or to follow the from source build instructions at http://umbrello.kde.org/installation.php
Comment 8 paolog 2014-02-03 07:36:50 UTC
Created attachment 84960 [details]
stack trace
Comment 9 paolog 2014-02-03 07:37:41 UTC
aw ! thanks

The crash is reproducible with git master, here are the updated instructions:
- open umbrello
- select menu command code -> code import wizard
- browse to /usr/include/boost/bimap (from package libboost1.49-dev)
- select bimap.hpp, click next
- click on "Start import"

I have attached the stack trace.

This is a parser bug, I believe it would be helpful to apply the delta debbugging technique, for example using C-Reduce (http://embed.cs.utah.edu/creduce/). A prerequisite for that is to be able to start the import process from the command line, so that a script can run it.
Comment 10 Ralf Habacker 2014-02-07 13:25:31 UTC
(In reply to comment #9)
> aw ! thanks
> 
> The crash is reproducible with git master, here are the updated instructions:
Thanks for this report, which is reproducable. You may try to run umbrello build from the 330788-3.5-cpp-parser branch (see http://quickgit.kde.org/?p=umbrello.git&a=shortlog&h=2cf3e190e54b8dd62077d393da4d333eac5e8b54)
Comment 11 paolog 2014-02-11 22:34:05 UTC
Hi,

I have tested the 330788-3.5-cpp-parser branch. With that version, the
reported crash is absent. I have also tested importing a larger codebase
with in turn includes boost/bimap, and it went through to the end.

The process took quite some time, and there were a quite few annoying
questions whether a certain scope was a namespace or a class (something
the parser should be able to discriminate by itself...).
But all in all an acceptable implementation. Please merge that into master !

For the medium term, it would be even better to replace that kdevelop
kde3 cpp parser with a clang-based parser. I hear there is some activity
in KDEvelop to integrate a Clang plugin, maybe there is a chance to
benefit from that once it's stable. This would also answer #297321

Thanks, Paolo

On 07/02/2014 14:25, Ralf Habacker wrote:
> https://bugs.kde.org/show_bug.cgi?id=231275
> 
> Ralf Habacker <ralf.habacker@freenet.de> changed:
> 
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>              Status|UNCONFIRMED                 |CONFIRMED
>          Depends on|                            |330788
>      Ever confirmed|0                           |1
> 
> --- Comment #10 from Ralf Habacker <ralf.habacker@freenet.de> ---
> (In reply to comment #9)
>> aw ! thanks
>>
>> The crash is reproducible with git master, here are the updated instructions:
> Thanks for this report, which is reproducable. You may try to run umbrello
> build from the 330788-3.5-cpp-parser branch (see
> http://quickgit.kde.org/?p=umbrello.git&a=shortlog&h=2cf3e190e54b8dd62077d393da4d333eac5e8b54)
>
Comment 12 Ralf Habacker 2014-02-12 01:01:15 UTC
 (In reply to comment #11)
> Hi,
> 
> I have tested the 330788-3.5-cpp-parser branch. With that version, the
> reported crash is absent. I have also tested importing a larger codebase
> with in turn includes boost/bimap, and it went through to the end.
> 
> The process took quite some time
I recognized increased object insert times with big imports the more the end of the import has been reached. Looks like a problem with object lookups or undo list
> and there were a quite few annoying
> questions whether a certain scope was a namespace or a class (something
> the parser should be able to discriminate by itself...).
Which is caused by the import file order and the fact that the lexer ignores not present files, which may result into created UMLObjects with unknown type.
Got a suggestion from a coworker (Daniel Wendt) : This could be fixed by creating such objects with an "unknown" type first and to retype them later.