- enhancement: improve code completion for std iterators defined with "using namespace std"
This commit is contained in:
parent
3cc00eaf8f
commit
35b986a358
3
NEWS.md
3
NEWS.md
|
@ -7,6 +7,9 @@ Red Panda C++ Version 2.23
|
|||
- fix: Goto definition/Goto declaration/Info tips can't be correctly triggered when mouse pointer is at the last half character of current word.
|
||||
- fix: Use "/" as path seperator when starting app by double clicking c/c++ files in the explorer.
|
||||
- enhancement: differenciate -> and . when displaying completion suggestion infos.
|
||||
- enhancement: improve code completion for std iterators defined with "using namespace std"
|
||||
- enhancement: improve pointer calculation when inferencing type info
|
||||
- enhancement: improve parsing for multiple vars defined in one line
|
||||
|
||||
Red Panda C++ Version 2.22
|
||||
|
||||
|
|
|
@ -756,8 +756,8 @@ QSet<QString> CppParser::internalGetFileUsings(const QString &filename) const
|
|||
QSet<QString> result;
|
||||
if (filename.isEmpty())
|
||||
return result;
|
||||
if (mParsing)
|
||||
return result;
|
||||
// if (mParsing)
|
||||
// return result;
|
||||
PFileIncludes fileIncludes= mPreprocessor.includesList().value(filename,PFileIncludes());
|
||||
if (fileIncludes) {
|
||||
foreach (const QString& usingName, fileIncludes->usings) {
|
||||
|
@ -3817,7 +3817,7 @@ void CppParser::handleVar(const QString& typePrefix,bool isExtern,bool isStatic)
|
|||
return;
|
||||
case '=':
|
||||
if (mIndex+1<tokenCount
|
||||
&& isIdentifier(mTokenizer[mIndex+1]->text)
|
||||
&& mTokenizer[mIndex+1]->text!="{"
|
||||
&& addedVar
|
||||
&& !(addedVar->properties & StatementProperty::spFunctionPointer)
|
||||
&& AutoTypes.contains(addedVar->type)) {
|
||||
|
@ -3963,7 +3963,7 @@ void CppParser::handleVar(const QString& typePrefix,bool isExtern,bool isStatic)
|
|||
}
|
||||
}
|
||||
} else
|
||||
addedVar->type = aliasStatement->baseType + aliasStatement->templateParams;
|
||||
addedVar->type = aliasStatement->baseType + aliasStatement->templateParams;
|
||||
if (aliasStatement->pointerLevel>0)
|
||||
addedVar->type += QString(aliasStatement->pointerLevel,'*');
|
||||
}
|
||||
|
@ -5312,8 +5312,6 @@ PStatement CppParser::doParseEvalTypeInfo(
|
|||
if (bracketLevel == 0 && templateLevel ==0) {
|
||||
if (token == "*")
|
||||
pointerLevel++;
|
||||
else if (token == "&")
|
||||
pointerLevel--;
|
||||
else if (syntaxer.getTokenAttribute()->tokenType() == QSynedit::TokenType::Identifier) {
|
||||
baseType += token;
|
||||
} else if (token == "[") {
|
||||
|
@ -5367,8 +5365,6 @@ PStatement CppParser::doParseEvalTypeInfo(
|
|||
if (bracketLevel == 0 && templateLevel ==0) {
|
||||
if (token == "*")
|
||||
pointerLevel++;
|
||||
else if (token == "&")
|
||||
pointerLevel--;
|
||||
else if (syntaxer.getTokenAttribute()->tokenType() == QSynedit::TokenType::Identifier) {
|
||||
baseType += token;
|
||||
} else if (token == "[") {
|
||||
|
|
Loading…
Reference in New Issue