Summary: | Crash due to infinite recursion in Cpp::TemplateDeclaration::setSpecializedFrom | ||
---|---|---|---|
Product: | [Applications] kdevelop | Reporter: | Maciej Cencora <m.cencora> |
Component: | Language Support: CPP (old) | Assignee: | Andreas Pakulat <apaku> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | gladhorn, olivier.jg |
Priority: | NOR | ||
Version: | git master | ||
Target Milestone: | 4.3.0 | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/kdevelop/61e585a694addd4c4850e6019244732a9bb4f307 | Version Fixed In: | |
Sentry Crash Report: | |||
Attachments: | Example project triggering this crash |
Description
Maciej Cencora
2013-04-17 08:33:49 UTC
Created attachment 81450 [details]
Example project triggering this crash
The attached project allows to reproduce the problem. In the example project just copy/pasting the function worked for me, but as soon as I tried to edit the main.cpp further kdevelop crashed. In the real case where I encountered this KDevelop actually crashed already right after pasting the copy of the template specialization.
Even though the current state of the main.cpp does not compile, KDevelop shouldn't crash here since its just an intermediate step when writing a new specialization for the template function.
Well turns out the second specialization does not even need to be using the same signature. The same issue occurs for me when changing the signature. Git commit 61e585a694addd4c4850e6019244732a9bb4f307 by Andreas Pakulat. Committed on 31/07/2013 at 22:28. Pushed by apaku into branch '4.5'. Merge branch '318492/prevent_endless_recursion_setSpecializedFrom' into 4.5 REVIEW: 111796 http://commits.kde.org/kdevelop/61e585a694addd4c4850e6019244732a9bb4f307 *** Bug 328467 has been marked as a duplicate of this bug. *** |