Python Version (output of python --version): 3.10.4
What's your issue about?
The destination of byte arrays and dynamic arrays copying is evaluated multiple times as cache_when_complex is not used. This includes make_byte_array_copier and _dynarray_make_setter (both cases: src.value == "multi" and src.value != "multi").
This contract fails to compile with the following error: AssertionError: non-unique symbols {'self.bar()2'}.
Version Information
vyper --version
): https://github.com/vyperlang/vyper/commit/9e3b9a2b8ae55aa83b5450080f750be15f819de7python --version
): 3.10.4What's your issue about?
The destination of byte arrays and dynamic arrays copying is evaluated multiple times as
cache_when_complex
is not used. This includesmake_byte_array_copier
and_dynarray_make_setter
(both cases:src.value == "multi"
andsrc.value != "multi"
).This contract fails to compile with the following error:
AssertionError: non-unique symbols {'self.bar()2'}.
reported by @trocher
How can it be fixed?
Fill this in if you know how to fix it.