qt5base-lts/tests/auto
Edward Welbourne 515b905150 Adapt qmake's raw-string parser to avoid confusion by macros
A macro name ending in R might expand to a string; if this precedes a
string constant, we're juxtaposing the strings.  My first parser for
raw strings would mistake it for a raw string instead, ignoring the
part of the identifier before R.  Re-worked the exploration of what
came before the string to catch these cases, too.

The backwards parsing would also allow any messy jumble of [RLUu8]* as
prefix for the string; but in fact R must (if present) be last in the
prefix and *it* can have at most one prefix, [LUu] or u8.  Anything
else is an identifier that happens to precede the string.  Reworked
the parsing to allow only one prefix and not treat R specially unless
it's immediately (modulo BSNL) before the string's open-quotes.

Add link to the cppreference page about string literals, on which the
grammar now parsed is based.

Added a test for the issue this addresses.
Verified that this fails on 5.6, dev and 5.9 without the fix.
Expanded the existing test to cover R-with-prefix cases.

Task-number: QTBUG-55633
Change-Id: I541486c2ec909cfb42050907c84bee83ead4a2f4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-08-24 14:27:50 +00:00
..
android
bic/data Update binary compatibility files for Qt 5.9.0 for QtBase 2017-08-14 13:48:17 +00:00
cmake tests: Unify license to GPL-EXCEPT 2017-04-03 07:18:46 +00:00
compilerwarnings/data
concurrent Remove tst_qtconcurrentiteratekernel blockSize test 2017-07-29 09:35:16 +00:00
corelib Autotest: Fix test when running on a non-Unicode-capable locale 2017-08-12 07:56:39 +00:00
dbus Use QSharedPointer::create() more 2017-07-19 13:40:42 +00:00
gui Block input to a window shown while an application modal dialog is visible 2017-08-16 13:13:55 +00:00
guiapplauncher
installed_cmake
network Fix crash when reading a PKCS12 file with no private key 2017-08-17 06:43:49 +00:00
opengl Switch to RGB(A|X)8888[_Premultiplied] for QOpenGLFBO readbacks on GLES 2017-03-28 11:17:52 +00:00
other tst_qfocusevent activateWindow for Win 10 2017-08-03 06:58:19 +00:00
printsupport tst_QPrinter: Share printers in testPageRectAndPaperRect/testMargin 2017-08-23 08:09:12 +00:00
shared Make self-contained test of condensed font matching and width 2016-10-16 00:11:13 +00:00
sql Fix invalid placeholder name in tst_qsqlthread.cpp 2017-08-23 12:48:32 +00:00
testlib Add flowId to messages when logging in TeamCity format 2017-08-04 18:48:48 +00:00
tools Adapt qmake's raw-string parser to avoid confusion by macros 2017-08-24 14:27:50 +00:00
widgets QWidget: Call appropriate QWindow method from setGeometry_sys() 2017-08-23 08:42:44 +00:00
xml Merge remote-tracking branch 'origin/5.7' into 5.8 2016-11-01 06:02:55 +01:00
auto.pro Remove remains of wince in .pro files 2017-07-03 05:32:51 +00:00
network-settings.h Merge remote-tracking branch 'origin/5.6' into 5.7 2016-05-06 15:36:44 +02:00