-
Notifications
You must be signed in to change notification settings - Fork 5.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix: Disallow structs in getters for old encoder. #5526
Conversation
* Optimizer: Fix nondeterminism bug related to the boost version and constants representation. The bug only resulted in less optimal but still correct code because the generated routine is always verified to be correct. | ||
* Type Checker: Properly detect different return types when overriding an external interface function with a public contract function. | ||
* Type Checker: Disallow struct return types for getters of public state variables unless the new ABI encoder is active. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The code seems to allow simple structs though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, need to think whether this can be rephrased, but it's hard. If the resulting type is only a struct, then it is broken up and the getter actually returns multiple values instead of a struct.
Codecov Report
@@ Coverage Diff @@
## develop #5526 +/- ##
===========================================
- Coverage 88.19% 88.18% -0.02%
===========================================
Files 319 319
Lines 31650 31659 +9
Branches 3792 3797 +5
===========================================
+ Hits 27914 27917 +3
Misses 2459 2459
- Partials 1277 1283 +6
|
c762453
to
9ba3532
Compare
Updated. |
I really, really don't understand codecov... |
Fixes #5520