-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
Rollup of 17 pull requests #76944
Rollup of 17 pull requests #76944
Commits on Sep 4, 2020
-
shim: monomorphic
FnPtrShim
s during constructionThis commit adjusts MIR shim construction so that substitutions are applied to function pointer shims during construction, rather than during codegen (as determined by `substs_for_mir_body`) - as substitutions will no longer occur during codegen, function pointer shims can now be polymorphic without incurring double substitutions. Signed-off-by: David Wood <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f8376b5 - Browse repository at this point
Copy the full SHA f8376b5View commit details
Commits on Sep 9, 2020
-
Fix segfault if pthread_getattr_np fails
glibc destroys[1] the passed pthread_attr_t if pthread_getattr_np() fails. Destroying it again leads to a segfault. Fix it by only destroying it on success for glibc. [1]: https://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/pthread_getattr_np.c;h=ce437205e41dc05653e435f6188768cccdd91c99;hb=HEAD#l205
Configuration menu - View commit details
-
Copy full SHA for a06edda - Browse repository at this point
Copy the full SHA a06eddaView commit details -
Only call pthread_attr_destroy() after getattr_np() succeeds on all l…
…ibcs The calling convention of pthread_getattr_np() is to initialize the pthread_attr_t, so _destroy() is only necessary on success (and _init() isn't necessary beforehand). On the other hand, FreeBSD wants the attr_t to be initialized before pthread_attr_get_np(), and therefore it should always be destroyed afterwards.
Configuration menu - View commit details
-
Copy full SHA for a684153 - Browse repository at this point
Copy the full SHA a684153View commit details
Commits on Sep 11, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 80ce7fa - Browse repository at this point
Copy the full SHA 80ce7faView commit details -
Configuration menu - View commit details
-
Copy full SHA for ae85bbb - Browse repository at this point
Copy the full SHA ae85bbbView commit details
Commits on Sep 12, 2020
-
Make some methods of
Pin
unstable constMake the following methods unstable const under the `const_pin` feature: - `new` - `new_unchecked` - `into_inner` - `into_inner_unchecked` - `get_ref` - `into_ref` Also adds tests for these methods in a const context. Tracking issue: rust-lang#76654
Configuration menu - View commit details
-
Copy full SHA for 8f27e3c - Browse repository at this point
Copy the full SHA 8f27e3cView commit details
Commits on Sep 13, 2020
-
Only insert StorageDeads if we actually removed one. Fixes an issue where we added StorageDead to a place with no StorageLive
Configuration menu - View commit details
-
Copy full SHA for e5447a2 - Browse repository at this point
Copy the full SHA e5447a2View commit details -
MIR pass to remove unneeded drops on types not needing drop
This is heavily dependent on MIR inlining running to actually see the drop statement
Configuration menu - View commit details
-
Copy full SHA for 9c5d0c1 - Browse repository at this point
Copy the full SHA 9c5d0c1View commit details
Commits on Sep 14, 2020
-
Co-authored-by: Andreas Jonson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9d47ecf - Browse repository at this point
Copy the full SHA 9d47ecfView commit details
Commits on Sep 16, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 94dae60 - Browse repository at this point
Copy the full SHA 94dae60View commit details
Commits on Sep 17, 2020
-
Configuration menu - View commit details
-
Copy full SHA for b7c8bea - Browse repository at this point
Copy the full SHA b7c8beaView commit details -
Don't compile regex at every function call.
Use `SyncOnceCell` to only compile it once. I believe this still adds some kind of locking mechanism?
Configuration menu - View commit details
-
Copy full SHA for f4a7149 - Browse repository at this point
Copy the full SHA f4a7149View commit details -
Remove intrinsics::arith_offset use from libarena
The use of arith_offset was added in 803e9ae before the stable wrapper of the intrinsic was available. https://doc.rust-lang.org/stable/std/intrinsics/fn.arith_offset.html
Configuration menu - View commit details
-
Copy full SHA for b479139 - Browse repository at this point
Copy the full SHA b479139View commit details -
Replace const_generics feature gate with min_const_generics
The latter is on the path to stabilization.
Configuration menu - View commit details
-
Copy full SHA for 4fe6ca3 - Browse repository at this point
Copy the full SHA 4fe6ca3View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebdea01 - Browse repository at this point
Copy the full SHA ebdea01View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f58e00 - Browse repository at this point
Copy the full SHA 5f58e00View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2793672 - Browse repository at this point
Copy the full SHA 2793672View commit details -
Configuration menu - View commit details
-
Copy full SHA for f193593 - Browse repository at this point
Copy the full SHA f193593View commit details -
use strip_prefix over starts_with and manual slicing based on pattern…
… length (clippy::manual_strip)
Configuration menu - View commit details
-
Copy full SHA for 012974d - Browse repository at this point
Copy the full SHA 012974dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 764d307 - Browse repository at this point
Copy the full SHA 764d307View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1dd3df6 - Browse repository at this point
Copy the full SHA 1dd3df6View commit details -
Set BUILD_TRIPLE via build script
This moves build triple discovery for rustbuild from bootstrap.py into a build script, meaning it will "just work" if building rustbuild via Cargo rather than Python.
Configuration menu - View commit details
-
Copy full SHA for 1ccfcb6 - Browse repository at this point
Copy the full SHA 1ccfcb6View commit details -
Remove support for different src directory
This requires that bootstrap is run from the same worktree as the sources it'll build, but this is basically required for the build to work anyway. You can still run it from a different directory, just that the files it builds must be beside it.
Configuration menu - View commit details
-
Copy full SHA for ccdb48a - Browse repository at this point
Copy the full SHA ccdb48aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f0392c2 - Browse repository at this point
Copy the full SHA f0392c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for aac7d9e - Browse repository at this point
Copy the full SHA aac7d9eView commit details -
Configuration menu - View commit details
-
Copy full SHA for afed561 - Browse repository at this point
Copy the full SHA afed561View commit details
Commits on Sep 18, 2020
-
Make some methods of
Pin<&mut T>
unstable constMake the following methods unstable const under the `const_pin` feature: - `into_ref` - `get_mut` - `get_unchecked_mut`
Configuration menu - View commit details
-
Copy full SHA for e3c6e46 - Browse repository at this point
Copy the full SHA e3c6e46View commit details
Commits on Sep 19, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 083f1d7 - Browse repository at this point
Copy the full SHA 083f1d7View commit details -
Stop using the
const_eval
query for initializers of staticsAs a side effect, we now represent most promoteds as `ConstValue::Scalar` again. This is useful because all implict promoteds are just references anyway and most explicit promoteds are numeric arguments to `asm!` or SIMD instructions.
Configuration menu - View commit details
-
Copy full SHA for 2d7ac72 - Browse repository at this point
Copy the full SHA 2d7ac72View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6d3c7bb - Browse repository at this point
Copy the full SHA 6d3c7bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4397d66 - Browse repository at this point
Copy the full SHA 4397d66View commit details -
Configuration menu - View commit details
-
Copy full SHA for b1bd34d - Browse repository at this point
Copy the full SHA b1bd34dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 48f366f - Browse repository at this point
Copy the full SHA 48f366fView commit details -
Configuration menu - View commit details
-
Copy full SHA for a6c60bb - Browse repository at this point
Copy the full SHA a6c60bbView commit details -
Do not call the
const_eval
query in mir interpretation except for c……aching of nulary intrinsics
Configuration menu - View commit details
-
Copy full SHA for dd9702a - Browse repository at this point
Copy the full SHA dd9702aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 40c2087 - Browse repository at this point
Copy the full SHA 40c2087View commit details -
Configuration menu - View commit details
-
Copy full SHA for 69a6be7 - Browse repository at this point
Copy the full SHA 69a6be7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 888afd5 - Browse repository at this point
Copy the full SHA 888afd5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90708c1 - Browse repository at this point
Copy the full SHA 90708c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 182ed85 - Browse repository at this point
Copy the full SHA 182ed85View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3c8c98 - Browse repository at this point
Copy the full SHA c3c8c98View commit details -
Configuration menu - View commit details
-
Copy full SHA for ef04e68 - Browse repository at this point
Copy the full SHA ef04e68View commit details -
Configuration menu - View commit details
-
Copy full SHA for c5889e4 - Browse repository at this point
Copy the full SHA c5889e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for b8e6883 - Browse repository at this point
Copy the full SHA b8e6883View commit details -
Configuration menu - View commit details
-
Copy full SHA for 673935f - Browse repository at this point
Copy the full SHA 673935fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 30dd6cf - Browse repository at this point
Copy the full SHA 30dd6cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 804f673 - Browse repository at this point
Copy the full SHA 804f673View commit details -
cleanup promotion const_kind checks
in particular allow a few more promotions for consistency when they were already allowed in other contexts
Configuration menu - View commit details
-
Copy full SHA for 4d1ef03 - Browse repository at this point
Copy the full SHA 4d1ef03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7febd5a - Browse repository at this point
Copy the full SHA 7febd5aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7b99c8e - Browse repository at this point
Copy the full SHA 7b99c8eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9216eb8 - Browse repository at this point
Copy the full SHA 9216eb8View commit details -
Rollup merge of rust-lang#74949 - oli-obk:validate_const_eval_raw, r=…
…RalfJung Validate constants during `const_eval_raw` This PR implements the groundwork for rust-lang#72396 * constants are now validated during `const_eval_raw` * to prevent cycle errors, we do not validate references to statics anymore beyond the fact that they are not dangling * the `const_eval` query ICEs if used on `static` items * as a side effect promoteds are now evaluated to `ConstValue::Scalar` again (since they are just a reference to the actual promoted allocation in most cases).
Configuration menu - View commit details
-
Copy full SHA for bb11ffc - Browse repository at this point
Copy the full SHA bb11ffcView commit details -
Rollup merge of rust-lang#75346 - davidtwco:issue-69925-polymorphic-i…
…nstancedef-fnptrshim, r=nikomatsakis shim: monomorphic `FnPtrShim`s during construction Fixes rust-lang#69925. This PR adjusts MIR shim construction so that substitutions are applied to function pointer shims during construction, rather than during codegen (as determined by `substs_for_mir_body`). r? @eddyb
Configuration menu - View commit details
-
Copy full SHA for 9d6d856 - Browse repository at this point
Copy the full SHA 9d6d856View commit details -
Rollup merge of rust-lang#76411 - RalfJung:promote-in-const-fn, r=ecs…
…tatic-morse Some promotion cleanup Based on top of both rust-lang#75502 and rust-lang#75585, this does some cleanup of the promotion code. The last 2 commits are new. * Remove the remaining cases where `const fn` is treated different from `fn`. This means no longer promoting ptr-to-int casts, raw ptr operations, and union field accesses in `const fn` -- or anywhere, for that matter. These are all unstable in const-context so this should not break any stable code. Fixes rust-lang#75586. * ~~Promote references to statics even outside statics (i.e., in functions) for consistency.~~ * Promote `&mut []` everywhere, not just in non-`const` functions, for consistency. * Explain why we do not promote deref's of statics outside statics. ~~(This is the only remaining direct user of `const_kind`.)~~ This can only land once the other two PRs land; I am mostly putting this up already because I couldn't wait ;) and to get some feedback from @rust-lang/wg-const-eval .
Configuration menu - View commit details
-
Copy full SHA for 71e3be0 - Browse repository at this point
Copy the full SHA 71e3be0View commit details -
Rollup merge of rust-lang#76521 - tavianator:fix-pthread-getattr-dest…
…roy, r=Amanieu Fix segfault if pthread_getattr_np fails glibc [destroys][1] the passed pthread_attr_t if pthread_getattr_np() fails. Destroying it again leads to a segfault. Fix it by only destroying it on success for glibc. [1]: https://sourceware.org/git/?p=glibc.git;a=blob;f=nptl/pthread_getattr_np.c;h=ce437205e41dc05653e435f6188768cccdd91c99;hb=HEAD#l205
Configuration menu - View commit details
-
Copy full SHA for 2f985d8 - Browse repository at this point
Copy the full SHA 2f985d8View commit details -
Rollup merge of rust-lang#76544 - Mark-Simulacrum:less-python, r=alex…
…crichton De-couple Python and bootstrap slightly This revises rustbuild's entry points from Python to rely less on magic environment variables, preferring to use Cargo-provided environment variables where feasible. Notably, BUILD_DIR and BOOTSTRAP_CONFIG are *not* moved, because both more-or-less have some non-trivial discovery logic and replicating it in rustbuild seems unfortunate; if it moved to Cargo that would be a different story. Best reviewed by-commit.
Configuration menu - View commit details
-
Copy full SHA for fd2251e - Browse repository at this point
Copy the full SHA fd2251eView commit details -
Rollup merge of rust-lang#76581 - lcnr:bound-too-generic, r=eddyb
do not ICE on bound variables, return `TooGeneric` instead fixes rust-lang#73260, fixes rust-lang#74634, fixes rust-lang#76595 r? @nikomatsakis
Configuration menu - View commit details
-
Copy full SHA for 4846b1f - Browse repository at this point
Copy the full SHA 4846b1fView commit details -
Rollup merge of rust-lang#76655 - CDirkx:const-pin, r=ecstatic-morse
Make some methods of `Pin` unstable const Make the following methods unstable const under the `const_pin` feature: - `new` - `new_unchecked` - `into_inner` - `into_inner_unchecked` - `get_ref` - `into_ref` - `get_mut` - `get_unchecked_mut` Of these, `into_inner` and `into_inner_unchecked` require the unstable `const_precise_live_drops`. Also adds tests for these methods in a const context. Tracking issue: rust-lang#76654 r? @ecstatic-morse
Configuration menu - View commit details
-
Copy full SHA for 1f187ac - Browse repository at this point
Copy the full SHA 1f187acView commit details -
Rollup merge of rust-lang#76659 - simonvandel:76432, r=oli-obk
SimplifyComparisonIntegral: fix miscompilation Fixes rust-lang#76432 Only insert StorageDeads if we actually removed one. Fixes an issue where we added StorageDead to a place with no StorageLive r? @oli-obk
Configuration menu - View commit details
-
Copy full SHA for 6a50cfa - Browse repository at this point
Copy the full SHA 6a50cfaView commit details -
Rollup merge of rust-lang#76673 - simonvandel:remove-unneeded-drops, …
…r=oli-obk MIR pass to remove unneeded drops on types not needing drop This is heavily dependent on MIR inlining running to actually see the drop statement. Do we want to special case replacing a call to std::mem::drop with a goto aswell?
Configuration menu - View commit details
-
Copy full SHA for f334470 - Browse repository at this point
Copy the full SHA f334470View commit details -
Rollup merge of rust-lang#76809 - matthiaskrgr:simplify_cond, r=varkor
simplfy condition in ItemLowerer::with_trait_impl_ref()
Configuration menu - View commit details
-
Copy full SHA for 6928c39 - Browse repository at this point
Copy the full SHA 6928c39View commit details -
Rollup merge of rust-lang#76815 - pickfire:patch-6, r=jonas-schievink
Fix wording in mir doc
Configuration menu - View commit details
-
Copy full SHA for bd65273 - Browse repository at this point
Copy the full SHA bd65273View commit details -
Rollup merge of rust-lang#76818 - hbina:dont_compile_regex_all_the_ti…
…me, r=ecstatic-morse Don't compile regex at every function call. Use `SyncOnceCell` to only compile it once. I believe this still adds some kind of locking mechanism? Related issue: rust-lang#76817
Configuration menu - View commit details
-
Copy full SHA for daba283 - Browse repository at this point
Copy the full SHA daba283View commit details -
Rollup merge of rust-lang#76821 - est31:remove_redundant_nightly_feat…
…ures, r=oli-obk,Mark-Simulacrum Remove redundant nightly features Removes a bunch of redundant/outdated nightly features. The first commit removes a `core_intrinsics` use for which a stable wrapper has been provided since. The second commit replaces the `const_generics` feature with `min_const_generics` which might get stabilized this year. The third commit is the result of a trial/error run of removing every single feature and then adding it back if compile failed. A bunch of unused features are the result that the third commit removes.
Configuration menu - View commit details
-
Copy full SHA for 16532d5 - Browse repository at this point
Copy the full SHA 16532d5View commit details -
Rollup merge of rust-lang#76823 - RalfJung:black-box-warn, r=joshtrip…
…lett black_box: silence unused_mut warning when building with cfg(miri)
Configuration menu - View commit details
-
Copy full SHA for 57a51a5 - Browse repository at this point
Copy the full SHA 57a51a5View commit details -
Rollup merge of rust-lang#76825 - lcnr:array-windows-apply, r=varkor
use `array_windows` instead of `windows` in the compiler I do think these changes are beautiful, but do have to admit that using type inference for the window length can easily be confusing. This seems like a general issue with const generics, where inferring constants adds an additional complexity which users have to learn and keep in mind.
Configuration menu - View commit details
-
Copy full SHA for 5824de0 - Browse repository at this point
Copy the full SHA 5824de0View commit details -
Rollup merge of rust-lang#76827 - lcnr:array_windows-docs, r=jonas-sc…
…hievink fix array_windows docs r? @Dylan-DPC
Configuration menu - View commit details
-
Copy full SHA for 0a99fbb - Browse repository at this point
Copy the full SHA 0a99fbbView commit details -
Rollup merge of rust-lang#76828 - matthiaskrgr:clippy_manual_strip, r…
…=lcnr use strip_prefix over starts_with and manual slicing based on pattern length (clippy::manual_strip)
Configuration menu - View commit details
-
Copy full SHA for 1fad825 - Browse repository at this point
Copy the full SHA 1fad825View commit details