diff options
author | Richard Leach <richardleach@users.noreply.github.com> | 2022-06-13 11:41:42 +0000 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2022-06-15 16:20:40 -0600 |
commit | 5af5b232a2dc0e42e74fa716f7cf429ba9e386ac (patch) | |
tree | cd74f23139db9329d4a9fb7baacb0745ac1362e5 /globvar.sym | |
parent | 0bf91cc9654c61052c0c525b894604f08b8d3069 (diff) | |
download | perl-5af5b232a2dc0e42e74fa716f7cf429ba9e386ac.tar.gz |
pp_aelemfast: include fast return for non-lvals
Within the "inlined av_fetch() for simple cases" fast path, we already
operate within the bounding conditions of the if() statement. Once
AvARRAY(av)[key] is found to be null, a call of av_fetch(av,key,lval)
here just boils down to a single line:
return lval ? av_store(av,key,newSV_type(SVt_NULL)) : NULL;
Checking the rest of pp_aelemfast, it's clear that within the fast
path, if (!sv) and (!lval), the function must eventually
PUSHs(&PL_sv_undef). So the fast path might as well do that directly.
Diffstat (limited to 'globvar.sym')
0 files changed, 0 insertions, 0 deletions