344 Commits (cec03af291aff889a97c04ea5005e84f22948ee4)

Author SHA1 Message Date
韩天峰 1c0c02e57e fix(enum): enforce abstract method contracts 1 day ago
韩天峰 939d04d9df fix(enum): reject duplicate backing values at compile time 1 day ago
韩天峰 9d6e8bdc4d fix(enum): enforce case uniqueness and final semantics 2 days ago
韩天峰 b46f62da30 feat(enum): fold backed case constant expressions 2 days ago
韩天峰 5f75c5b48c test(enum): add comprehensive enum method declaration rules tests 2 days ago
韩天峰 d1a9397f6c fix: compose trait declarations before conversion (fix gh-80) 2 days ago
韩天峰 643e49d56e fix: reject unsupported Decimal round modes 2 days ago
Alessio Giacobbe f39f985e16
fix(preprocessor): reject variadic promoted properties and callable property/constant types (#64) --skip-tests 2 days ago
Alessio Giacobbe 4ca9072f36
fix(codegen): register enum-case class constants as real case objects (#51) --skip-tests 2 days ago
Alessio Giacobbe e90d6246ec
fix: enforce interface declaration and merge rules (#59) --skip-tests 3 days ago
Alessio Giacobbe fafd7f25dc
fix: enforce readonly declaration and inheritance rules (#66) 3 days ago
Alessio Giacobbe c578b1d6b0
fix(preprocessor): enforce property-hook placement rules for class properties (#63) --skip-tests 3 days ago
Alessio Giacobbe ea0ea4414a
fix(codegen): keep Zend operand read order around hoisted side effects (#52) --skip-tests 3 days ago
Alessio Giacobbe 8f8ae77ec8
fix(codegen): PHP semantics for division, modulo, shifts and compound assignment on typed scalars (#45) --skip-tests 3 days ago
韩天峰 48c95e9f9b refactor(runtime): optimize request cache storage with single TLS pointer 3 days ago
韩天峰 7768ce177e feat(compiler): add property access caching mechanism for Zend integration 3 days ago
韩天峰 718c3dad25 refactor(translator): replace global variable with singleton pattern 3 days ago
韩天峰 b61b59f808 fix: isolate internal methods from magic call optimization 3 days ago
Echo 3b66b488a3
fix(trait): preserve import context for property defaults (#69) 3 days ago
Alessio Giacobbe 26bfbdda4e
fix(translator): constructor, private-method and abstract redeclaration override rules (#56) --skip-tests 3 days ago
Lucas Raineri Giandon a6cd38ae01
fix(optimizer): round() must not lower a RoundingMode enum to an int (#30) --skip-tests 3 days ago
Alessio Giacobbe 58c3bb64b6
fix(preprocessor): reject abstract method bodies and abstract private class methods (#62) --skip-tests 3 days ago
韩天峰 f03c0b12c6 fix: harden typed constant inheritance 3 days ago
Alessio Giacobbe e2c32adda2
fix(translator): validate overrides of built-in class methods (#55) --skip-tests 3 days ago
Alessio Giacobbe fde9e3a9d8
fix(translator): covariant typed class constants and interface constant contracts (#58) --skip-tests 3 days ago
Alessio Giacobbe 0f1efb52a4
fix(translator): reject static/instance property redeclaration mismatch (#57) --skip-tests 3 days ago
Alessio Giacobbe c6e6997db8
fix(translator): let a trailing child variadic absorb parent parameters (#54) 3 days ago
韩天峰 aa1da2eb54 fix(optimizer): reject foreach-bound loop counters 3 days ago
韩天峰 24924673ec test: cover by-reference return override semantics 3 days ago
韩天峰 35f6110842 devirtualize statically exact magic calls 3 days ago
韩天峰 10f16726e0 optimize non-native integer hot paths 3 days ago
Alessio Giacobbe 20f0b5a284
fix(codegen): evaluate compound ??= RHS only when the target is not set (#47) 3 days ago
Alessio Giacobbe 0c69b8b357
fix(translator): allow overrides to add a by-ref return (#53) --skip-tests 3 days ago
Alessio Giacobbe 407953c094
fix(parser): classify auto-Decimal literals by real mantissa precision (#50) --skip-tests 4 days ago
Alessio Giacobbe d00c63a049
fix(parser): resolve PHP_INT_MAX/MIN folds case-sensitively with namespace rules (#49) --skip-tests 4 days ago
Alessio Giacobbe 284abddba6
fix(gen_stub): spell PHP_INT_MIN constants with ZEND_LONG_MIN (#48) --skip-tests 4 days ago
Alessio Giacobbe e259b3fbd1
fix(parser): parenthesize unary minus operands that can change the C++ parse (#46) --skip-tests 4 days ago
Echo 014d5d55cb
fix(optimizer): handle internal class literals in get_parent_class (#44) 4 days ago
韩天峰 af466b067c fix(parser): handle compound assignment operations on typed properties 4 days ago
xiaoyin199 8c0d52d330
fix(preprocessor): finalize method override flags before conversion (#42) 4 days ago
韩天峰 7d698987d7 fix(trait): preserve late-bound abstract type semantics 5 days ago
Alessio Giacobbe ed65cd2a6b
fix(translator): validate abstract trait requirements, isolate alias flags 5 days ago
韩天峰 f16262142e fix(installer): parse php-config flags safely, fix gh-36 5 days ago
韩天峰 312a796498 fix(optimizer): preserve strict builtin validation 5 days ago
韩天峰 9ad213ea64 fix(optimizer): preserve unpacked call semantics 5 days ago
hafung 9f6e31c539 fix(optimizer): preserve typed builtin argument validation 5 days ago
Giandonn c291d79703 fix(optimizer): keep unpacked and named conversion arguments dynamic 6 days ago
Giandonn 6b6ce4fc82 fix(optimizer): restrict the count() literal fold to provably inert items 6 days ago
韩天峰 b906bfce1a test(generator): restore locale after float formatting test 6 days ago
韩天峰 057c217800 fix(optimizer): preserve class_exists autoload evaluation 6 days ago