Bug 384072 - kmymoney-9999 doesn't build against gcc 5.4 anymore.
Summary: kmymoney-9999 doesn't build against gcc 5.4 anymore.
Status: RESOLVED UPSTREAM
Alias: None
Product: kmymoney
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-27 12:12 UTC by José Pekkarinen
Modified: 2017-11-11 23:38 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description José Pekkarinen 2017-08-27 12:12:57 UTC
Hi,

Seems after db6b3ec4a489fadfac64cd6606bce234ba83c7de, kmymoney build against gcc 5.4 triggers an internal compiler error shown like this:

/home/pekkari/kmymoney/kmymoney/models/accountsmodel.cpp: In instantiation of ‘AccountsModel::setColumnVisibility(AccountsModel::Columns, bool)::<lambda(auto:3&&, QStandardItem*)> [with auto:3 = AccountsModel::setColumnVisibility(AccountsModel::Columns, bool)::<lambda(auto:3&&, QStandardItem*)>&]’:
/home/pekkari/kmymoney/kmymoney/models/accountsmodel.cpp:696:53:   required from here
/home/pekkari/kmymoney/kmymoney/models/accountsmodel.cpp:689:34: internal compiler error: Segmentation fault
           childItem->removeColumn(ixCol);

The code seems correct, though the commit seems huge. It should be recommendable to split it and integrate piece by piece, removing the commented code, and other possible bugs.

Thanks!

José.
Comment 1 Thomas Baumgart 2017-08-27 14:24:32 UTC
Using 'clang' as compiler solves the issue for me. Otherwise, this is an upstream tool problem because the code is correct and clang compiles it producing the right behavior of the application (maybe also newer version of gcc do, but I don't have any at hand).
Comment 2 Jack 2017-08-27 17:03:34 UTC
aturm said (IRC) that it also compiles with gcc-6.4.0 so even if it is a gcc bug, it looks like it's fixed.