diff options
author | Alex Light <allight@google.com> | 2019-11-06 10:28:21 -0800 |
---|---|---|
committer | Treehugger Robot <treehugger-gerrit@google.com> | 2019-11-11 16:58:12 +0000 |
commit | 2462789806df0281c52fa9bb60fa37fe3ff606b6 (patch) | |
tree | a26da1d669e88b34b10b0f6c76b06abd8b694473 /compiler/optimizing/graph_visualizer.cc | |
parent | 28b6efed2c2e38d3df787f8f68e2b8d55efabd06 (diff) |
Ensure structural redefinition can shadow functions/fields
Previously when we structurally redefined a class and a new field or
function shadowed a super type field or function the shadowed version
might still get called. This was due to the old version remaining in
the dex-caches of other classes. To fix this we just remove from all
dex-caches any entries that might be (invisibly) shadowed by a new
function/field. This is any non-virtual methods or non-private field
of a supertype of the redefined class with the same name & signature
as a method/field in the redefined class.
Test: ./test.py --host
Bug: 134162467
Change-Id: Iae8e7a3e7f8ecedbd2f314816b140156fce3e5fd
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
0 files changed, 0 insertions, 0 deletions