Commit Graph

154 Commits

Author SHA1 Message Date
Robert Wilhelm 9821da5546 vbscript: Remove overzealous check in parse_hex_literal.
is_identifier_char also triggers on logical operators like "or".

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50179
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-27 21:59:40 +01:00
Robert Wilhelm c39cd37383 vbscript: Support property set with parameters.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=33996
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-23 21:05:04 +01:00
Robert Wilhelm a839ac952a vbscript: Support properties with parameters.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=33996
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-18 20:28:19 +01:00
Robert Wilhelm 04b43c721a vbscript: Allow keywords to be used as property name.
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-10 10:46:00 +01:00
Robert Wilhelm 72977a75a4 vbscript: Allow keywords to be used as function name.
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-06 18:20:32 +01:00
Robert Wilhelm 16fe2037fb vbscript: Support class default sub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=35744
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 20:41:23 +02:00
Kevin Puetz 335cfefbb6 vbscript: Implement redim preserve.
Signed-off-by: Kevin Puetz <PuetzKevinA@JohnDeere.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-06 21:47:56 +02:00
Robert Wilhelm 53cd1a27ad vbscript: Allow public and private declarations in global scope.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46588
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-28 20:16:05 +02:00
Robert Wilhelm fe59d1a5d3 vbscript: Fix vanishing statements.
When adding multiple statements (e.g. colon separated SimpleStatements)
in function source_add_statement(), tail of linked list was not adjusted.

Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-23 15:59:49 +02:00
Robert Wilhelm a31023a678 vbscript: Parse decimal literals between -1 and 1 without 0 in front.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49820
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-15 21:30:46 +02:00
Robert Wilhelm 5adbabe90c vbscript: Colon used in for loop.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=35782
Signed-off-by: Robert Wilhelm <robert.wilhelm@gmx.net>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-08 21:20:39 +02:00
Dmitry Kislyuk 18e7e07a77 vbscript: Parse empty CASE ELSE clause.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49439
Signed-off-by: Dmitry Kislyuk <dimaki@rocketmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-25 23:08:30 +02:00
Jacek Caban 8def4dfa0e vbscript: Don't convert hex literals ending with '&' to short in parse_hex_literal.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:04 +01:00
Jacek Caban d26998d6e5 vbscript: Allow any call expression to be used in set statement.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-30 22:34:09 +01:00
Jacek Caban 47f3abb633 vbscript: Fix VT_UNKNOWN handling in is expressions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:45:10 +01:00
Jacek Caban 1c194f3b21 vbscript: Fix VT_UNKNOWN handling in set statements.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:45:05 +01:00
Jacek Caban cd1918948f vbscript: Overflow hex literals in 16-bit range.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-27 14:44:56 +01:00
Francois Gouget 975bc319d5 vbscript/tests: Fix the spelling of a vbscript comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-11 21:51:28 +01:00
Jacek Caban 107bba1563 vbscript: Always treat keywords after dot as identifiers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-12 21:39:40 +01:00
Jacek Caban 509044296d vbscript: Fix parsing call expressions.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=41119
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-05 16:17:27 +01:00
Jacek Caban 52bbac0a36 vbscript: Replace existing function for duplicated functions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Jacek Caban ef737598e6 vbscript: Support using function return value in expressions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-01 20:30:14 +01:00
Jacek Caban 39e79c76c9 vbscript/tests: Add redim statement tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-01 20:30:11 +01:00
Jacek Caban 37e2729607 vbscript: Allow 'with' as an identifier.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-01 20:30:02 +01:00
Jacek Caban 18117ccbab vbscript: Support VT_EMPTY in stack_pop_bool.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 19:25:31 +01:00
Jacek Caban 666f7501d0 vbscript/tests: Add with statement tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-29 23:30:47 +01:00
Jacek Caban 2d419b7d7b vbscript: Always pass arguments inside parentheses by value.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 20:12:38 +01:00
Jacek Caban 216f7146ef vbscript: Ignore parentheses in call expression.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 19:19:34 +01:00
Jacek Caban 273a3a5869 vbscript/tests: Add more call tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 19:19:34 +01:00
Jacek Caban 9e3c806e53 vbscript: Fix array reference handling in do_icall.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-23 18:53:33 +02:00
Jacek Caban 79f39c2a8c vbscript: Fix NULL IDispatch handling in get_disp_value.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-18 18:05:32 +02:00
Gabriel Ivăncescu 848c6e4f93 vbscript/tests: Test lack of newline parsing before End statements.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-09 16:25:55 +02:00
Jacek Caban 0131a9c47b vbscript: Suport + sign in exponential literals.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-26 19:21:33 +02:00
Jacek Caban 17c5a25091 vbscript: Support unary + expressions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 21:56:17 +02:00
Francois Gouget c05a2ae4a7 vbscript/tests: A spelling fix in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 17:42:42 +01:00
Brendan McGrath 78078b65b2 vbscript: Allow most keywords to be used as 'dot' identifiers.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46318
Signed-off-by: Brendan McGrath <brendan@redmandi.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:30 +01:00
Brendan McGrath d2937bfff2 vbscript: Allow more keywords to be used as identifiers.
Signed-off-by: Brendan McGrath <brendan@redmandi.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-15 15:07:06 +01:00
Piotr Caban c8a94b5d7a vbscript: Add for each tests on array.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:21:59 +01:00
Dmitry Kislyuk 31ef99245a vbscript: Improve parsing of separators in functions and classes.
Signed-off-by: Dmitry Kislyuk <dimaki@rocketmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:33:06 +01:00
Dmitry Kislyuk 5193b6fa69 vbscript: Improve parsing of separators after Option Explicit.
Signed-off-by: Dmitry Kislyuk <dimaki@rocketmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 14:23:27 +02:00
Piotr Caban 0b5473c166 vbscript: Reimplement array_access function.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 14:23:25 +02:00
Piotr Caban 8f0d12e261 vbscript/tests: Add more function call tests with array arguments.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 14:23:22 +02:00
Dmitry Kislyuk 56b31ba2e1 vbscript: Improve parsing of separators in loops and switches.
Signed-off-by: Dmitry Kislyuk <dimaki@rocketmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 19:45:37 +02:00
Dmitry Kislyuk 4ecc00f6ff vbscript: Allow colons at the end of first line of loops.
Signed-off-by: Dmitry Kislyuk <dimaki@rocketmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-03 17:15:05 +02:00
Nikolay Sivov e584edd379 vbscript: Support 'End If' for single line If statements. 2015-01-16 17:33:00 +01:00
Jacek Caban f0e85ee2f3 vbscript: Added support for exponential form of numeric literals. 2014-06-11 16:16:02 +02:00
Piotr Caban 7c7ccc0ef5 vbscript: Parse doubles with bigger precision in parse_numeric_literal. 2014-05-19 09:47:22 +02:00
Jacek Caban 0f50cb323e vbscript: Allow property getters to take arguments. 2014-04-30 15:15:31 +02:00
Jacek Caban f123556f07 vbscript: Allow creating RegExp object by new expression. 2014-03-18 16:10:38 +01:00
Jacek Caban 69bee9f004 vbscript: Allow empty brackets in argument declarations. 2014-03-13 20:22:21 +01:00