| Summary: | CPP language parser does not c++14 understand digit separators | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | rjwgnr27 |
| Component: | Language Support: CPP (Clang-based) | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED NOT A BUG | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | 5.0.80 | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
Never mind, I found this as a new option under project configuration, under "Language Support", "C/C++ Parser". Setting the parser profile to C++ 14 resolves this. |
Using C++14 digit separators, the CPP semantic analysis reports an error: Ex: if ( value > 100'000'000'000'000'000ll) { suffix = "P"; if (isSet(fmt, xfmt::round)) value += 500'000'000'000'000ll; value /= 1'000'000'000'000'000ll; } else if ( value > 100'000'000'000'000ll) { suffix = "T"; if (isSet(fmt, xfmt::round)) value += 500'000'000'000ll; value /= 1'000'000'000'000ll; } else if ( value > 100'000'000'000ll) { Hovering over the 'if' line, the pop-up says: "Problem in semantic analysis Location: ... Expected ')'..." Hovering over the first "value += ..." I get: "expected ';' after expression." Hovering over the second else-if: "Missing terminating ' character"