| Summary: | Parser error example | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | leon pollak <leonp> |
| Component: | Language Support: CPP (old) | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | aleixpol, cponnapalli |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | 5.0.0 | |
| Sentry Crash Report: | |||
| Attachments: | Parser error resolved in Kdevelop 5 | ||
Created attachment 99010 [details]
Parser error resolved in Kdevelop 5
Reproduced the code sample given.
Kdevelop 5 does not produce any parser errors.
I took my cursor to 'Cmnd' variable(which is highlighted) and no parser errors are shown nor any pop-ups suggestions.
The issue is fixed in Kdevelop 5.
Attached the screenshot for reference
|
I wrote the code similar to the following (reduced example, but work and illustrates the issue): #define DEF1() void Test(int i) { typedef int ttCmnd; \ ttCmnd& Cmnd=*(ttCmnd*)&i; DEF1() Cmnd = 0; } This code compiles fine, but parser insists that it does not know the Cmnd variable and pops-up the call-out suggesting to define it each time I hoover the cursor over the 'Cmnd' variable. Reproducible: Always