Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scalar type hints v5 #1185

Merged
merged 69 commits into from
Mar 20, 2015
Merged

Scalar type hints v5 #1185

merged 69 commits into from
Mar 20, 2015

Commits on Feb 10, 2015

  1. Configuration menu
    Copy the full SHA
    c3c0f53 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    75a225d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d4dd2a9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a13d134 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a03af7f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1a28ad0 View commit details
    Browse the repository at this point in the history
  7. Inline

    hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    5544e37 View commit details
    Browse the repository at this point in the history
  8. It Begins

    hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    cc01e37 View commit details
    Browse the repository at this point in the history
  9. Per-file

    hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    02ec357 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    fe663cc View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    ca49012 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    e1a2386 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    b112c13 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    2985944 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    86b0685 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    17b3707 View commit details
    Browse the repository at this point in the history
  17. Fix fix

    hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    c6e8048 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    187a95f View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    0af3b7c View commit details
    Browse the repository at this point in the history
  20. Fix merge error

    hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    cbbaea0 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    c7719ab View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    6b6b2b4 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    44ed070 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    5a7ac0f View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    0294485 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    b5513cd View commit details
    Browse the repository at this point in the history
  27. Fixed use after free on the following code

    sapi/cli/php -r 'function hello(string $world) : string { var_dump(bin2hex($world)); return $world; } echo "foo" . hello(6) . "\n";'
    dstogov authored and hikari-no-yume committed Feb 10, 2015
    Configuration menu
    Copy the full SHA
    d6bea5b View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2015

  1. 2 Configuration menu
    Copy the full SHA
    00b3e77 View commit details
    Browse the repository at this point in the history
  2. Merge in master

    ircmaxell committed Feb 18, 2015
    Configuration menu
    Copy the full SHA
    9109e48 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e2053fa View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ac2ece8 View commit details
    Browse the repository at this point in the history
  5. Skip the tests if multibyte isn't loaded to prevent them from being f…

    …ragile based on encoding availability
    ircmaxell committed Feb 18, 2015
    Configuration menu
    Copy the full SHA
    37604b4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d5aaebc View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c6996a2 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    c859079 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2015

  1. Configuration menu
    Copy the full SHA
    dc35868 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7c8d1e0 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2015

  1. Configuration menu
    Copy the full SHA
    d22bfb8 View commit details
    Browse the repository at this point in the history
  2. Refactor error implementation significantly to centralize error mode …

    …behavior. Add zend_internal_type_error() function
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    7feebea View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    dd9f4f9 View commit details
    Browse the repository at this point in the history
  4. Fix executor issue with ignoring strict types, which cleans up a bunc…

    …h of errors. Additionally fix the expected error of 2 unrelated tests that was caused by a change to the core error messages
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    0529eeb View commit details
    Browse the repository at this point in the history
  5. Clean up API renames for zend_wrong_param_count to maintain BC, intro…

    …ducing a zend_wrong_param_count_ex() function when you know strict value
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    8be4266 View commit details
    Browse the repository at this point in the history
  6. Style cleanup, as well as fixing bug with missing argument for WRONG_…

    …PARAM_COUNT_WITH_RETVAL
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    579e7fa View commit details
    Browse the repository at this point in the history
  7. Revert gd and mysqli to former calls for arg count errors. Fix first …

    …identified issues with zend_compile.c from nikic. Add tests for generator returns prior to first yield
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    1df033c View commit details
    Browse the repository at this point in the history
  8. Refactor error messages to only append defined in the event of render…

    …ing as a fatal error. Fix relative typehints to not work
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    724f711 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    94fe6c4 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    f040538 View commit details
    Browse the repository at this point in the history
  11. Fix return type separation with references. It now includes a check i…

    …n the opcode handler and properly separates the value in both cases
    ircmaxell committed Mar 18, 2015
    Configuration menu
    Copy the full SHA
    427ecdc View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    d8ef608 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    78d2399 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2015

  1. Fix severity issues with callbacks, start work porting ZEND_STRLEN op…

    …code to work with strict mode, more refactoring to come
    ircmaxell committed Mar 19, 2015
    Configuration menu
    Copy the full SHA
    0ef80ac View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7044f9c View commit details
    Browse the repository at this point in the history
  3. Add support and tests for null constant default values. Refactor comp…

    …lex conditionals into an extracted function for clarity and code-reuse
    ircmaxell committed Mar 19, 2015
    Configuration menu
    Copy the full SHA
    62fc556 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    aaf0c8b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c11cab3 View commit details
    Browse the repository at this point in the history
  6. Reduce the number of times that the zval needs to be separated in ret…

    …urn type checking to those that are necessary
    ircmaxell committed Mar 19, 2015
    Configuration menu
    Copy the full SHA
    2e44015 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    8c76c33 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2015

  1. Merge branch 'scalar_type_hints_v5' of github.com:ircmaxell/php-src i…

    …nto scalar_type_hints_v5
    
    * 'scalar_type_hints_v5' of github.com:ircmaxell/php-src: (54 commits)
      Add check for maintaining reference all the way through both type and return values
      Reduce the number of times that the zval needs to be separated in return type checking to those that are necessary
      Add test to ensure namespaced code can't use scalar types as class names
      Disallow relative namespace type declarations
      Add support and tests for null constant default values. Refactor complex conditionals into an extracted function for clarity and code-reuse
      Refactor as to not use call info, but add the flag to the op_array.
      Fix severity issues with callbacks, start work porting ZEND_STRLEN opcode to work with strict mode, more refactoring to come
      Fix C89 compatibility by moving a misplaced if statement
      Refactor gotos into more elaborate ifs to eliminate goto failure
      Fix return type separation with references. It now includes a check in the opcode handler and properly separates the value in both cases
      Add error case with invalid type declaration default value
      Add tests for using constants as defaults with scalar type declarations
      Refactor error messages to only append defined in the event of rendering as a fatal error. Fix relative typehints to not work
      Revert gd and mysqli to former calls for arg count errors. Fix first identified issues with zend_compile.c from nikic. Add tests for generator returns prior to first yield
      Style cleanup, as well as fixing bug with missing argument for WRONG_PARAM_COUNT_WITH_RETVAL
      Clean up API renames for zend_wrong_param_count to maintain BC, introducing a zend_wrong_param_count_ex() function when you know strict value
      Fix executor issue with ignoring strict types, which cleans up a bunch of errors. Additionally fix the expected error of 2 unrelated tests that was caused by a change to the core error messages
      Fix more tests, improve error messages in failure output for thrown exception
      Refactor error implementation significantly to centralize error mode behavior. Add zend_internal_type_error() function
      Refactor declare placement detection, allow encoding declares before type declares
      ...
    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    aee2985 View commit details
    Browse the repository at this point in the history
  2. Fixed white spaces

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    44669e8 View commit details
    Browse the repository at this point in the history
  3. Improved type hinting:

    EX_PREV_USES_STRICT_TYPES() and family changed/renamed to fit with other macros
    Optimized zend_verify_internal_arg_type() and family (they don't need "strict" argument anymore)
    Standerd ZPP is called from VM only for weak type check or strict exception (int -> double)
    Fixed ZEND_RECV_VARIADIC
    Fixed ZEND_STRLEN
    
    TODO: should we accept IS_NULL for non-nullable arguments?
    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    5935612 View commit details
    Browse the repository at this point in the history
  4. Fixed error messages

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    7cf05ce View commit details
    Browse the repository at this point in the history
  5. Fixed comments

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    66f16c6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    054591a View commit details
    Browse the repository at this point in the history
  7. Fixed tests

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    139c6c6 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    1cfa4db View commit details
    Browse the repository at this point in the history
  9. cleanup

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    4e5767b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    35f9b90 View commit details
    Browse the repository at this point in the history
  11. Changed SKIPIF messages

    dstogov committed Mar 20, 2015
    Configuration menu
    Copy the full SHA
    3a886a0 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    1f408af View commit details
    Browse the repository at this point in the history