Bug 71689

Summary: Certain C syntax puts parser in loop
Product: [Applications] kdevelop Reporter: Jon Smirl <jonsmirl>
Component: Language Support: CPP (old)Assignee: KDevelop Developers <kdevelop-devel>
Status: RESOLVED WORKSFORME    
Severity: normal    
Priority: NOR    
Version: git master   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Jon Smirl 2004-01-02 19:15:10 UTC
Version:           CVS (using KDE Devel)
Installed from:    Compiled sources

I had this code in a file that I tried to add to a project:

#define LRMI_CONCAT2(a, b) 	a ## b
#define LRMI_CONCAT(a, b) 	LRMI_CONCAT2(a, b)
#define LRMI_MAKENAME(a) 	LRMI_CONCAT(LRMI_PREFIX, a)


Adding the file locks kdevelop in a loop. I suspect the parser is having touble with 'a ## b'.

I wish the parser could just be taught C instead of treating C like C++.
Comment 1 Matt Rogers 2004-10-27 03:53:21 UTC
I can't reproduce this anymore with KDevelop from CVS (2004-10-26). I took the source code from the bug report, put it in a file, and then added that file to my project, and kdevelop didn't hang. 

Thanks for the bug report.
Comment 2 Aleix Pol 2013-03-31 00:51:50 UTC
Moving all the bugs from the CPP Parser. It was not well defined the difference between it and C++ Language Support and people kept reporting in both places indistinctively