Xinchen Hui
dbd729e86b
Req #74963 (Improved error message on fetching property of non-object)
2017-07-31 11:43:14 +08:00
Nikita Popov
99d818f1e9
Don't propagate into ops that error on non-string
...
To properly support this make update_opN_const fallible -- they
are not always called through replace_with_const.
2015-11-07 12:04:51 +01:00
Nikita Popov
00b37e718d
Strip leading backslash in update_opN_const
2015-11-07 12:04:51 +01:00
Nikita Popov
632bee4abb
Fix update_opX_const lowercasing
...
It was lowering in-place.
2015-11-07 12:04:51 +01:00
Aaron Piotrowski
e97d5fab35
Update exception names in tests after formatting changes.
2015-05-17 17:31:43 -05:00
Nikita Popov
3ae995f03c
Tweak uncaught exception message display
...
This implements a reduced variant of #1226 with just the following
change:
-Fatal error: Uncaught exception 'EngineException' with message 'Call to private method foo::bar() from context ''' in %s:%d
+Fatal error: Uncaught EngineException: Call to private method foo::bar() from context '' in %s:%d
The '' wrapper around messages is very weird if the exception
message itself contains ''. Futhermore having the message wrapped
in '' doesn't work for the "and defined" suffix of
TypeExceptions.
2015-05-17 18:47:06 +02:00
Nikita Popov
c9f27ee422
Display EngineExceptions like ordinary exceptions
...
TypeException stays as-is for now because it uses messages that are
incompatible with the way exception messages are displayed.
closure_038.phpt and a few others now show that we're generating
too many exceptions for compound operations on undefined properties
-- this needs to be fixed in a followup.
2015-05-15 23:40:32 +02:00
Nikita Popov
62aabf5d9f
Fix "invalid opcode" error
...
Method call can happen on CONST, it'll just throw an error.
Not forbidding this at compile-time, so this can be overridden in
an extension.
2015-04-22 17:46:25 +02:00
Márcio Almada
1849546ada
add missing test for class member access with deference
...
relates to https://wiki.php.net/rfc/uniform_variable_syntax
2015-02-11 15:23:20 +01:00
Rasmus Lerdorf
388624d359
These tests all have intentional circular references
...
and they will leak and cause failures unless gc is enabled
2015-01-24 16:06:18 -08:00
Veres Lajos
4b9535341a
typo fixes - https://github.com/vlajos/misspell_fixer
2014-11-19 20:23:00 +00:00
Nikita Popov
231dcc94e8
Test use of string names with \ prefix
...
And drop piece of dead code
2014-09-23 20:36:00 +02:00
Nikita Popov
c8aa51f825
Accept static member fetch in new variable (BC)
2014-06-06 17:05:14 +02:00
Nikita Popov
8515b96e53
Handle FUNC_ARG fetches on temporaries
2014-05-31 20:15:55 +02:00
Nikita Popov
96b32ec532
Support isset() on temporaries
2014-05-31 20:05:03 +02:00
Nikita Popov
5c2120b6cf
Forbid writing to temporary expressions
2014-05-31 19:41:39 +02:00
Nikita Popov
72b5e0cac0
Add another static member access test
2014-05-31 18:18:20 +02:00
Nikita Popov
f0ac7f7d7b
Properly handle property read on const/tmp
2014-05-31 17:51:22 +02:00
Nikita Popov
c53a7ea4e5
Property handle calls on [] and '' consts/tmps
2014-05-31 17:37:30 +02:00
Nikita Popov
64e4c9eff1
Support directly calling closure
2014-05-31 17:18:37 +02:00
Nikita Popov
4ec505f9b5
Add two initial tests
2014-05-31 16:33:52 +02:00