UI: Replace generic parameters with ScrollableWidget #598
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Many of the examples in
examples/
(e.g. demo_scrollview.v) will immediately fault when compiled with the-prod
flag. I've also seen similar faults in my own project,github/mike-ward/Kite
. I found that the faults consistently occurred in functions that used generic parameters inInterface_Scrollable.v
.Using a debugger and some printf statements, I determined that pointers in these methods were sometimes corrupt, although I could never deduce why. The corruptions only occurred when building with the
-prod
flag.I noticed that the functions in question could have their generic parameters replaced with
ScrollableWidget
. After making this change, most of the example programs no longer faulted when built with the-prod
flag. A few examples, notably,examples\layout\dynamic_layout.v
will fault when interacted with. I plan to investigate this later.I also took the opportunity to remove some redundant checks for
has_scrollview()
in said functions.While this issue in not definitive, there is cause to think an issue with generic parameters and
-prod
may be lurking in V.