- 10 7月, 2017 2 次提交
-
-
由 Vadim Petrochenkov 提交于
-
由 bors 提交于
Add spacing between trait functions Fixes #42988. <img width="1440" alt="screen shot 2017-07-09 at 17 02 16" src="https://user-images.githubusercontent.com/3050060/27995068-672a3208-64c8-11e7-9bc7-c7288f2cd27b.png">
-
- 09 7月, 2017 10 次提交
-
-
由 bors 提交于
Fix stage 2 builds with a custom libdir. When copying libstd for the stage 2 compiler, the builder ignores the configured libdir/libdir_relative configuration parameters. This causes the compiler to fail to find libstd, which cause any tools built with the stage 2 compiler to fail. To fix this, make the copy steps of rustbuild aware of the libdir_relative parameter when the stage >= 2. Also update the dist target to be aware of the new location of libstd.
-
由 Guillaume Gomez 提交于
-
由 bors 提交于
Redox: Fix Condvar.wait(); do not lock mutex twice The atomic_xchg() loop locks the mutex, so the call to mutex_lock is incorrect, and blocks.
-
由 bors 提交于
Implemented `TypeFoldable` for `TypeError`s. This is quite handy in some user code, for instance to pull out type errors from an inference context when `fresh_substs_for_item` has been used before.
-
由 bors 提交于
Raise alignment limit from 2^15 to 2^31 - 1 Fixes #42960
-
由 Inokentiy Babushkin 提交于
-
由 bors 提交于
Fix links for typeck diagnostics without tripping tidy Pick up #42624 to fix #43070 (cc @frewsxcv). I fixed a few other links while I was at it.
-
由 Lee Bousfield 提交于
-
由 bors 提交于
Remove unused code from librustc_errors While extracting librustc_errors into a [reusable library](https://github.com/kevinmehall/codemap-diagnostic), I noticed some obsolete code that the `dead_code` warning missed because it was marked `pub` but not used elsewhere.
-
由 Lee Bousfield 提交于
-
- 08 7月, 2017 27 次提交
-
-
由 bors 提交于
Fold E0612, E0613 into E0609 As discussed in #42945, with PR 1506 tuple indices are no longer considered a separate case from normal field. This PR folds E06012 ("tuple index out of bounds") and E0613 ("type is not a tuple") into E0609 ("type does not have field with that name") Resolves #42945
-
由 Lee Bousfield 提交于
-
由 Lee Bousfield 提交于
-
由 bors 提交于
Fix Rustbuild linking on Illumos Illumos (an OpenSolaris fork) expects to get several extra library references for some system functions used by Rust standard library. This commit adds required linker options to rustbuild, which is currently doesn't work on Illumos-based operating systems.
-
由 bors 提交于
Implement O(1)-time Iterator::nth for Range*, and slim the Step trait Fixes #43064. Fixes part of #39975. Fixes items 1 <s>and 3</s> of #42168. CC #27741. I think #42310 and #43012 should not have landed without the `nth` part of this PR, but oh well.
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 Simon Sapin 提交于
-
由 bors 提交于
Skip the main thread's manual stack guard on Linux Linux doesn't allocate the whole stack right away, and the kernel has its own stack-guard mechanism to fault when growing too close to an existing mapping. If we map our own guard, then the kernel starts enforcing a rather large gap above that, rendering much of the possible stack space useless. Instead, we'll just note where we expect rlimit to start faulting, so our handler can report "stack overflow", and trust that the kernel's own stack guard will work. Fixes #43052. r? @alexcrichton ### Kernel compatibility: Strictly speaking, Rust claims support for Linux kernels >= 2.6.18, and stack guards were only added to mainline in 2.6.36 for [CVE-2010-2240]. But since that vulnerability was so severe, the guards were backported to many stable branches, and Red Hat patched this all the way back to RHEL3's 2.4.21! I think it's reasonable for us to assume that any *supportable* kernel should have these stack guards. At that time, the kernel only enforced one page of padding between the stack and other mappings, but thanks to [Stack Clash] that padding is now much larger, causing #43052. The kernel side of those fixes are in [CVE-2017-1000364], which Red Hat has backported to at least RHEL5's 2.6.18 so far. [CVE-2010-2240]: https://access.redhat.com/security/cve/CVE-2010-2240 [CVE-2017-1000364]: https://access.redhat.com/security/cve/CVE-2017-1000364 [Stack Clash]: https://access.redhat.com/security/vulnerabilities/stackguard
-
由 Matthew Dawson 提交于
When copying libstd for the stage 2 compiler, the builder ignores the configured libdir/libdir_relative configuration parameters. This causes the compiler to fail to find libstd, which cause any tools built with the stage 2 compiler to fail. To fix this, make the copy steps of rustbuild aware of the libdir_relative parameter when the stage >= 2. Also update the dist target to be aware of the new location of libstd.
-
由 bors 提交于
Make sufficiently old or low-impact compatibility lints deny-by-default Needs crater run before proceeding. r? @nikomatsakis
-
由 Vadim Petrochenkov 提交于
Fix some tests on Linux
-
由 Vadim Petrochenkov 提交于
This is going to be a hard error while all private-in-public errors from rustc_privacy will be reclassified into lints.
-
由 Vadim Petrochenkov 提交于
-
由 Vadim Petrochenkov 提交于
-
由 bors 提交于
Replace the global fulfillment cache with the evaluation cache This uses the new "Chalk" ParamEnv refactoring to check "global" predicates in an empty environment, which should be correct because global predicates aren't affected by a consistent environment. Fixes #39970. Fixes #42796. r? @nikomatsakis
-
由 boreeas 提交于
Resolves #42945
-
由 bors 提交于
remove associated_consts feature gate Currently struggling to run tests locally (something about jemalloc target missing). cc #29646
-
由 Ariel Ben-Yehuda 提交于
This helps avoid cache pollution. Also add more comments explaining that.
-
由 Ariel Ben-Yehuda 提交于
The evaluation cache already exists, and it can handle differing parameter environments natively. Fixes #39970. Fixes #42796.
-
由 Ariel Ben-Yehuda 提交于
This is just duplicating the logic from the old fulfillment cache, so I'm not sure it is 100% correct, but it should not be more wrong than the old logic.
-
由 Ariel Ben-Yehuda 提交于
Previously, coinductive matching was only blocked on the fulfillment path, and ignored on the evaluation path.
-
由 Josh Stone 提交于
Linux doesn't allocate the whole stack right away, and the kernel has its own stack-guard mechanism to fault when growing too close to an existing mapping. If we map our own guard, then the kernel starts enforcing a rather large gap above that, rendering much of the possible stack space useless. Instead, we'll just note where we expect rlimit to start faulting, so our handler can report "stack overflow", and trust that the kernel's own stack guard will work. Fixes #43052.
-
- 07 7月, 2017 1 次提交
-
-
由 Ian Douglas Scott 提交于
The atomic_xchg() loop locks the mutex, so the call to mutex_lock is incorrect, and blocks.
-