Bug 410170

Summary: "Update signature definition" breaks definition updated method
Product: [Applications] kdevelop Reporter: Piotr Mierzwinski <piotr.mierzwinski>
Component: Code completionAssignee: kdevelop-bugs-null
Status: REPORTED ---    
Severity: normal    
Priority: NOR    
Version First Reported In: 5.3.3   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Piotr Mierzwinski 2019-07-24 22:20:34 UTC
SUMMARY
Class in namespace. I update declaration of method just adding next parameter. Declaration is underlying I click into "Update signature definition". In result in definition is added _twice_ namespace name and removed opening curly bracket. Example please find below:

Original class:

namespace Preview {

class ImageViewer : public Viewer
{
	Q_OBJECT
public:
	ImageViewer();
	~ImageViewer() {}

	void init( QWidget *pParent, QList <QActionGroup *> *pToolbarActionsLst );

	[next methods]
};


Original definition:

void ImageViewer::init( QWidget *pParent )
{
	m_pParent = pParent;
        [rest of code]
}

OBSERVED RESULT
Declaration after update:
	void init( QWidget *pParent, QList <QActionGroup *> *pToolbarActionsLst );


Definition after update:
void Preview::Preview::ImageViewer::init ( QWidget* pParent, QList< QActionGroup* >* pToolbarActionsLst )

	m_pParent    = pParent;
        [rest of code]


EXPECTED RESULT
Declaration after update:
	void init( QWidget *pParent, QList <QActionGroup *> *pToolbarActionsLst );


Definition after update:
void ImageViewer::init( QWidget *pParent, QList< QActionGroup* > *pToolbarActionsLst )
{
	m_pParent    = pParent;
        [rest of code]


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: YES
(available in About System)
KDE Plasma Version: 5.16.3
KDE Frameworks Version: 5.60
Qt Version: 5.13


ADDITIONAL INFORMATION
Please notice I reported (long time ago) couple similar issues, where completion just breaks code.