1017 Commit

Autore SHA1 Messaggio Data
e727453ccf Fix var_dump() for mixed arrays.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-11-13 20:24:55 +01:00
7a34716298 Add TODO list.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-11-07 19:53:15 +01:00
8724cebf71 Do not actually support references in the same scope.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-28 19:45:31 +01:00
ec47190874 Array dump format.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-27 19:56:13 +02:00
e5fb7d625e Allow only a colon as variable separator.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-27 19:49:24 +02:00
6f13c347d8 Set the proper type of array.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-26 19:45:10 +02:00
03cf969c31 Check for a type of array.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-11 15:15:48 +02:00
b66515516e First check if array or object.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-01 22:46:35 +02:00
6293b8f5bf Do not try to dump empty array.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-10-01 22:43:23 +02:00
c00080e190 Correct comment.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 19:20:23 +02:00
b5eb268ce1 Do not allow to set a value of different type to the variable.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 19:17:46 +02:00
5f2f9d9c08 Set proper data type for static variables;
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 19:16:44 +02:00
6e7bc74949 Put comment in right place.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 13:39:50 +02:00
f26095658d Treat empty object as false.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 13:38:33 +02:00
2db1954779 Another bunch of fixes for object type.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 13:34:22 +02:00
550107235c Do not try to dump a non-instantiated object.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 12:22:58 +02:00
369cadfcda Tryeing to call a non-instantiated object should result in an error.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 12:10:19 +02:00
f72d6c3922 Load data from array/object only if there is anything stored.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 11:47:30 +02:00
59fda6d797 Unref hashmap and object only if there is any data stored.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-24 11:29:51 +02:00
ba0c250911 Fix test.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-23 19:07:03 +02:00
08296110fb Temporarily fix tests.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-23 17:51:47 +02:00
dd774be005 Fix for() loop, do not use iP1 for OP_LOAD.
Alcuni controlli hanno segnalato errori
The build has failed.
2018-09-23 17:51:09 +02:00
ae0fde152c Create a variable only on OP_LOAD.
Alcuni controlli hanno segnalato errori
The build has failed.
2018-09-23 17:40:26 +02:00
28a5fa59ad Duplicate variable name. Fix variable declaration.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-22 17:54:59 +02:00
514e07c7f3 Fix static variables not containing any value.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-21 22:18:11 +02:00
f927667d85 Strictly check for data type of static variable declaration.
Alcuni controlli hanno segnalato errori
The build has failed.
2018-09-21 22:06:36 +02:00
79e4bac7eb Remove no longer used PH7_CompileStatic().
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-21 00:22:29 +02:00
bd4d146d0a Initial version of variable definition.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-21 00:21:15 +02:00
241c7d8168 First step to declare a variable with specified data type.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-20 17:06:23 +02:00
e6e59d299e Fix method parameters.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-19 19:27:50 +02:00
9884f8288b Do not allow typecasting to unset a variable.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-18 22:11:57 +02:00
5a6af65cfa Object of wrong type passed as argument should be generate error.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-17 22:06:53 +02:00
82998ffd0f Silently typecast integer value to float.
Tutti i controlli sono stati effettuati con successo
The build was successful.
This is a necessary step, to allow passing integer numbers. Otherwise, every float variable would need a floating point value. In other words, "float $x = 5" is allowed construct. Without this simple change, only accepted
construction was "float $x = 5.0".
2018-09-16 20:02:34 +02:00
58103ea5fe Mark method/closure call frame as active.
Tutti i controlli sono stati effettuati con successo
The build was successful.
It is impossible to dump the frame during its initialization, as it does not contain all necessary information. Such frame should be skipped. After initialization is done, the frame has to be marked as active just before
evaluating a function body.
2018-09-16 19:52:24 +02:00
3a16eced8a Push error if argument type does not match.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-15 14:13:46 +02:00
5504579566 Passing an object of different type as expected should result in error.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-14 22:27:38 +02:00
faca9b7fb2 Another fix in debug trace.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-14 22:22:37 +02:00
94ae7d187b No data type for argument specified leads to E_ERROR.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-14 21:33:31 +02:00
ca00cadba7 Use strict type hinting in all tests.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-14 21:32:08 +02:00
8b48786f29 Add missing data types.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-14 08:47:16 +02:00
ecebbb6094 Use type hinting in standard library.
Alcuni controlli hanno segnalato errori
The build has failed.
2018-09-14 08:36:00 +02:00
74b1c196f9 Treat invalid type name as error.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-13 18:56:01 +02:00
d4992ff4ba At least try to report correct line number.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-12 19:24:48 +02:00
1e5538fc67 Remove useless fields in pVm.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-11 17:52:28 +02:00
58b7ceeae9 Get rid of $GLOBALS completely.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-11 17:49:20 +02:00
0804407582 Correct typo.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-11 13:58:03 +02:00
e383536dc4 Do not store script arguments in $GLOBALS.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-11 06:47:48 +02:00
9ebc3dc61a Extract a list of parameters and pass them to Program::main();
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-10 23:12:08 +02:00
82e5dc1565 Add SyStrtok() declaration.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-10 23:02:25 +02:00
10d3bfe5e1 Correct comments.
Tutti i controlli sono stati effettuati con successo
The build was successful.
2018-09-10 20:17:42 +02:00