Skip to content

Stdlib: openssl_get_publickey() JIT leftover of #20240 — AOT LogicException (ext/openssl/openssl.c) #33503

Closed

Description

@PurHur

Category

stdlib · AOT/JIT leftover of #20240 (alias of openssl_pkey_get_public)

Problem

VM implements openssl_get_publickey() (alias of openssl_pkey_get_public) with catchable TypeError/ArgumentCountError, but JIT/AOT still throws:

openssl_get_publickey() is not implemented for JIT in this compiler build (issue #20240)

Peer TypeError/argc gates already landed for openssl_pkey_get_public (#33499 / #33502). Happy-path key objects remain follow-up (#6295).

Repro VM AOT
openssl_get_publickey(null) TypeError LogicException at compile
openssl_get_publickey() ArgumentCountError LogicException at compile

AOT must match VM catchable errors, not the LogicException.

php-src reference

PHP implementation target

Repro

./script/docker-exec.sh -- bash -lc 'php bin/compile.php -o /tmp/x test/repro/issue_XXXX_openssl_get_publickey_aot.php'

Done when

  • AOT compile of the TypeError/argc repro succeeds (no LogicException)
  • VM and AOT match on that repro (null-type / argc)
  • No new lib/AOT/runtime/*.c

Parent

Activity

  1. added
    bugSomething isn't working
    phase-4:stdlibPhase 4 – stdlib for web apps
    implementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claim
    on Aug 21, 2026
  2. PurHur commented on Aug 21, 2026

    @PurHur
    OwnerAuthor

    claim: advanced-stdlib-ext — implementing TypeError/argc AOT bake this run (peer #33499/#33502; alias of openssl_pkey_get_public).

  3. PurHur commented on Aug 21, 2026

    @PurHur
    OwnerAuthor

    claim: php-runtime-migration — implementing AOT TypeError/argc for openssl_get_publickey (peer #33499/#33502; #32122/#31968 closed; aot-smoke 8/8; #33501 claimed elsewhere)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:compilerCompiler / CFG / JITbugSomething isn't workingimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimphase-4:stdlibPhase 4 – stdlib for web apps

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions