Bug 374889

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:

Description rjwgnr27 2017-01-10 23:32:49 UTC
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"
Comment 1 rjwgnr27 2017-01-10 23:47:16 UTC
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.