Skip to content

Conversation

@alexcrichton
Copy link
Member

This will hopefully bring us closer to #11937. We're still using gcc's idea of
"startup files", but this should prevent us from leaking in dependencies that we
don't quite want (libgcc for example once compiler-rt is what we use).

This will hopefully bring us closer to rust-lang#11937. We're still using gcc's idea of
"startup files", but this should prevent us from leaking in dependencies that we
don't quite want (libgcc for example once compiler-rt is what we use).
@alexcrichton alexcrichton mentioned this pull request Feb 4, 2014
@alexcrichton
Copy link
Member Author

It looks like this is failing on osx due to a missing symbol. Some googling leads me to believe that this symbol comes from libgcc or compiler-rt. Right now we don't know which compiler we're linking with (gcc or clang), so I don't think that this is possible until we bundle compiler-rt ourselves.

flip1995 pushed a commit to flip1995/rust that referenced this pull request Jan 11, 2024
…ogiq

Lint nested binary operations and handle field projections in `eager_transmute`

This PR makes the lint a bit stronger. Previously it would only lint `(x < 4).then_some(transmute(x))` (that is, a single binary op in the condition). With this change, it understands:
- multiple, nested binary ops: `(x < 4 && x > 1).then_some(...)`
- local references with projections: `(x.field < 4 && x.field > 1).then_some(transmute(x.field))`

changelog: [`eager_transmute`]: lint nested binary operations and look through field/array accesses

r? llogiq (since you reviewed my initial PR rust-lang#11981, I figured you have the most context here, sorry if you are too busy with other PRs, feel free to reassign to someone else then)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants