• verwaest's avatar
    [runtime] Make sure that LookupIterator::OWN always performs a HIDDEN lookup as well. · c9a83150
    verwaest authored
    Hidden prototypes are merely an implementation detail. Properties on an object + hidden prototype should look like properties on the object. Hence we should always perform a hidden prototype lookup. This CL removes the option to ignore hidden prototypes to avoid bugs that leak this implementation detail.
    
    Also, the only previously valid cases were either places were we knew we didn't have a hidden prototype; or because we knew we (in the optimizing compiler) would only handle properties from the non-hidden object.The first case is already handled by directly tagging whether a receiver has a hidden prototype. In the second case we can just filter out properties from hidden prototypes.
    
    Review-Url: https://codereview.chromium.org/1975763002
    Cr-Commit-Position: refs/heads/master@{#36235}
    c9a83150
builtins.cc 198 KB