diff options
author | Ivan Donchevskii <[email protected]> | 2018-02-20 11:53:00 +0100 |
---|---|---|
committer | Ivan Donchevskii <[email protected]> | 2018-02-22 13:21:38 +0000 |
commit | 1d2b27081ae2f0531a28138dd90510d206b3262e (patch) | |
tree | e4a01816c7c71000395b1d38f02b19edaf840525 | |
parent | 4286a4d507bb22a871604898b115ce3f9610fe11 (diff) |
C++: Fix unit-tests for MatchingText
BackwardScanner required more investigation and this is
the better fix than 413c66ec.
Change-Id: I651a7b416b549cc4a0e086873262d04409a7448e
Reviewed-by: Marco Bubke <[email protected]>
-rw-r--r-- | src/libs/cplusplus/BackwardsScanner.cpp | 5 | ||||
-rw-r--r-- | src/libs/cplusplus/BackwardsScanner.h | 1 | ||||
-rw-r--r-- | src/libs/cplusplus/MatchingText.cpp | 4 |
3 files changed, 8 insertions, 2 deletions
diff --git a/src/libs/cplusplus/BackwardsScanner.cpp b/src/libs/cplusplus/BackwardsScanner.cpp index 6d498eaddcc..e547f831036 100644 --- a/src/libs/cplusplus/BackwardsScanner.cpp +++ b/src/libs/cplusplus/BackwardsScanner.cpp @@ -124,6 +124,11 @@ int BackwardsScanner::size() const return _tokens.size(); } +int BackwardsScanner::offset() const +{ + return _offset; +} + int BackwardsScanner::startOfMatchingBrace(int index) const { const BackwardsScanner &tk = *this; diff --git a/src/libs/cplusplus/BackwardsScanner.h b/src/libs/cplusplus/BackwardsScanner.h index 2ac7a17a365..9d732f85826 100644 --- a/src/libs/cplusplus/BackwardsScanner.h +++ b/src/libs/cplusplus/BackwardsScanner.h @@ -66,6 +66,7 @@ public: int startOfBlock(int index) const; int size() const; + int offset() const; static int previousBlockState(const QTextBlock &block); diff --git a/src/libs/cplusplus/MatchingText.cpp b/src/libs/cplusplus/MatchingText.cpp index 9b3a3f75f54..ade81c9b9f8 100644 --- a/src/libs/cplusplus/MatchingText.cpp +++ b/src/libs/cplusplus/MatchingText.cpp @@ -324,7 +324,7 @@ static bool isRecordLikeToken(const Token &token) static bool isRecordLikeToken(const BackwardsScanner &tokens, int index) { - if (index < tokens.size() - 1) + if (index + tokens.offset() < tokens.size() - 1) return isRecordLikeToken(tokens[index]); return false; } @@ -347,7 +347,7 @@ static bool recordLikeMightFollowToken(const Token &token) static bool isAfterRecordLikeDefinition(const BackwardsScanner &tokens, int index) { - for (; index >= 0; --index) { + for (;; --index) { if (recordLikeHasToFollowToken(tokens[index])) return isRecordLikeToken(tokens, index + 1); |