-
Notifications
You must be signed in to change notification settings - Fork 163
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
gccrs: feat: Made changes to ensure no wrong assignments are done. #3300
base: master
Are you sure you want to change the base?
Conversation
41640eb
to
167b909
Compare
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.
There are changes required here i think we can get away wit this check but not totally convinced yet
Also it will need to be applied to the other assignments such as:
x +=1 etc
9bd6356
to
5748d31
Compare
fc569e4
to
2a551f5
Compare
Can you give me more information about the case we are missing as x+= 1 is valid as long as x is mutable in rust. |
1089291
to
e6a88dc
Compare
You have to adjust the visitor for |
Would probably be good to make |
gcc/rust/ChangeLog: * backend/rust-compile-base.cc (HIRCompileBase::lvalue_p): Created a function that checks for lvalue. * backend/rust-compile-base.h: Created the Signature for above function. * backend/rust-compile-expr.cc (CompileExpr::visit): Made changes to ensure proper readability and checking for wrong assignments. gcc/testsuite/ChangeLog: * rust/compile/issue-3297.rs: New test. Signed-off-by: Sri Ganesh Thota <[email protected]>
e6a88dc
to
c9d729f
Compare
gcc/rust/ChangeLog:
gcc/testsuite/ChangeLog:
Fixes #3287
make check-rust
passes locallyclang-format
gcc/testsuite/rust/