summaryrefslogtreecommitdiffstats
path: root/qmake
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@nokia.com>2012-09-05 21:26:28 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-20 15:20:26 +0200
commit5957a8e01ba46c948e302e36a2652bd52fafd1f8 (patch)
tree6d5a618ebf0341798f1f7b91e397fedfb8740c8a /qmake
parent119b53be83f52aa621a83a4ae1962030980ee0b4 (diff)
update size calculations for assignment statements
this was forgotten when the value lists were extended by a size hint. Change-Id: I6f9b55ed671224a9b8735c8d937f94aac4a73a42 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> (cherry picked from qtcreator/f24c9865306624c2fc150d4bd262a5c4d5a3689a) Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'qmake')
-rw-r--r--qmake/library/proitems.h1
-rw-r--r--qmake/library/qmakeparser.cpp8
2 files changed, 5 insertions, 4 deletions
diff --git a/qmake/library/proitems.h b/qmake/library/proitems.h
index cd7af34108..13693837b9 100644
--- a/qmake/library/proitems.h
+++ b/qmake/library/proitems.h
@@ -275,6 +275,7 @@ enum ProToken {
TokRemove, // variable -=
TokReplace, // variable ~=
// previous literal/expansion is a variable manipulation
+ // - lower bound for expected output length (1)
// - value expression + TokValueTerminator
TokValueTerminator, // assignment value terminator
TokLiteral, // literal string (fully dequoted)
diff --git a/qmake/library/qmakeparser.cpp b/qmake/library/qmakeparser.cpp
index 557a779717..49b5429130 100644
--- a/qmake/library/qmakeparser.cpp
+++ b/qmake/library/qmakeparser.cpp
@@ -298,12 +298,12 @@ bool QMakeParser::read(ProFile *pro, const QString &in, int line, SubGrammar gra
// Worst-case size calculations:
// - line marker adds 1 (2-nl) to 1st token of each line
// - empty assignment "A=":2 =>
- // TokHashLiteral(1) + hash(2) + len(1) + "A"(1) + TokAssign(1) +
- // TokValueTerminator(1) == 7 (8)
+ // TokHashLiteral(1) + hash(2) + len(1) + "A"(1) + TokAssign(1) + 0(1) +
+ // TokValueTerminator(1) == 8 (9)
// - non-empty assignment "A=B C":5 =>
- // TokHashLiteral(1) + hash(2) + len(1) + "A"(1) + TokAssign(1) +
+ // TokHashLiteral(1) + hash(2) + len(1) + "A"(1) + TokAssign(1) + 2(1) +
// TokLiteral(1) + len(1) + "B"(1) +
- // TokLiteral(1) + len(1) + "C"(1) + TokValueTerminator(1) == 13 (14)
+ // TokLiteral(1) + len(1) + "C"(1) + TokValueTerminator(1) == 14 (15)
// - variable expansion: "$$f":3 =>
// TokVariable(1) + hash(2) + len(1) + "f"(1) = 5
// - function expansion: "$$f()":5 =>