From d9e9c0acebee6595351ad0494e910246622ca712 Mon Sep 17 00:00:00 2001 From: Edoardo Prezioso Date: Mon, 30 Jan 2012 13:15:25 +0100 Subject: [PATCH] Tokenizer::simplifyTypedef: 'tokAt(offset)=>tokOffset': in progress.. --- lib/tokenize.cpp | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/lib/tokenize.cpp b/lib/tokenize.cpp index e219d2374..84d6b6979 100644 --- a/lib/tokenize.cpp +++ b/lib/tokenize.cpp @@ -1014,18 +1014,27 @@ void Tokenizer::simplifyTypedef() tokOffset = tokOffset->next(); } - typeEnd = tok->tokAt(offset++); + ++offset; + typeEnd = tokOffset; + tokOffset = tokOffset->next(); bool atEnd = false; while (!atEnd) { - if (Token::simpleMatch(tok->tokAt(offset), "::")) - typeEnd = tok->tokAt(offset++); + if (tokOffset && tokOffset->str() == "::") { + ++offset; + typeEnd = tokOffset; + tokOffset = tokOffset->next(); + } - if (Token::Match(tok->tokAt(offset), "%type%") && - tok->tokAt(offset + 1) && !Token::Match(tok->tokAt(offset + 1), "[|;|,|(")) - typeEnd = tok->tokAt(offset++); - else if (Token::simpleMatch(tok->tokAt(offset), "const (")) { - typeEnd = tok->tokAt(offset++); + if (Token::Match(tokOffset, "%type%") && + tokOffset->next() && !Token::Match(tokOffset->next(), "[|;|,|(")) { + ++offset; + typeEnd = tokOffset; + tokOffset = tokOffset->next(); + } else if (Token::simpleMatch(tokOffset, "const (")) { + ++offset; + typeEnd = tokOffset; + tokOffset = tokOffset->next(); atEnd = true; } else atEnd = true;