Commit Graph

44943 Commits

Author SHA1 Message Date
Felix S. Klock II
2d68d09b46 review feedback: common-subexpression-elim across functions in pushpop_safe impl. 2015-07-23 23:39:28 +02:00
Felix S. Klock II
44bb0dd4a3 review feedback: Use checked-arith instead of saturated-arith for push_unsafe! and pop_unsafe!. 2015-07-23 23:39:25 +02:00
Antti Keränen
e981311ec2 eval_const_expr_partial now returns ConstVal::Struct instead of None for unit-struct path expressions. Fixes #27008 2015-07-23 23:23:56 +03:00
bors
c85ba3e9cb Auto merge of #27226 - eefriedman:leftover-negation-lint, r=alexcrichton
r? @pnkfelix
2015-07-23 19:11:51 +00:00
Dave Huseby
39c7a9350c adds snapshots for bitrig and freebsd 2015-07-23 10:20:43 -07:00
Dave Huseby
b208bd9920 switching to gnu archive format per review request 2015-07-23 10:13:49 -07:00
Dave Huseby
8ffbde4443 review feedback fixes 2015-07-23 10:12:48 -07:00
Dave Huseby
01cb16d1bf fixes #27124 for bitrig 2015-07-23 10:12:47 -07:00
Steve Klabnik
a319d32a57 Link Deref{,Mut} to TRPL on coercions.
FIxes #26927
2015-07-23 12:57:22 -04:00
Alisdair Owens
e66817512a Add diagnostics for E0120 2015-07-23 17:35:24 +01:00
bors
7911d9979f Auto merge of #27221 - dotdash:no_empty_clean, r=luqmana
When compiling libsyntax this removes about 30k basic blocks that only
contain a single unconditional jump and reduces the peak memory usage by
about 10MB (from 681MB down to 671MB).
2015-07-23 15:59:20 +00:00
Guillaume Gomez
0efc7f143f Fix typo and improve explanation 2015-07-23 16:19:37 +02:00
Alisdair Owens
38c5af86a1 Add long diagnostics for E0373 2015-07-23 15:07:26 +01:00
Felix S. Klock II
565df576e8 Update suggestion from parenthesized-box-expr-message to reflect new output spacing. 2015-07-23 16:02:27 +02:00
Felix S. Klock II
5682e2a1aa fix pretty printing tests by opting into the features that the expanded code needs. 2015-07-23 16:02:27 +02:00
Felix S. Klock II
225298c377 fix doc-tests by opting into placement_in_syntax feature where necessary. 2015-07-23 16:02:26 +02:00
Felix S. Klock II
73df224f05 Review feedback: add unstable marker to Placer API and put in bound that now works. 2015-07-23 16:02:26 +02:00
Tobias Bucher
a700546fea Fix thread::catch_panic documentation to mention its return value on success
Fixes #27027.
2015-07-23 15:44:06 +02:00
bors
2e5b165e18 Auto merge of #27203 - marcusklaas:fix-range-span, r=alexcrichton
Right trims the span for certain range expressions.

Closes https://github.com/rust-lang/rust/issues/27162.
2015-07-23 12:52:21 +00:00
Tobias Bucher
0eb552a835 wtf8, char: Replace uses of mem::transmute with more specific functions 2015-07-23 13:55:37 +02:00
Guillaume Gomez
8a75dcdadf Add E0424 error explanation 2015-07-23 12:44:59 +02:00
Guillaume Gomez
d6b9e0bed9 Add E0417 error explanation 2015-07-23 12:28:01 +02:00
bors
d6a6178637 Auto merge of #26588 - eefriedman:foreign-lifetime, r=nrc
Pretty straightforward; just need to make sure to explicitly handle
the generic parameters of each ast::ForeignItemFn.

Fixes #26587.
2015-07-23 09:16:08 +00:00
Manish Goregaokar
4337e822fb Add long diagnostic for E0269 2015-07-23 12:49:26 +05:30
Manish Goregaokar
d6be183af1 Improve E0260 2015-07-23 12:49:26 +05:30
Manish Goregaokar
74768e9a6c Add long diagnostics for E0139 (type parameters in transmute) 2015-07-23 12:49:25 +05:30
Manish Goregaokar
3080df36e2 Add long diagnostic for E0138 2015-07-23 12:49:25 +05:30
Manish Goregaokar
e9c15307a9 Add long diagnostic for E0136 2015-07-23 12:49:25 +05:30
Manish Goregaokar
29d7147dda Review fixes 2015-07-23 12:49:25 +05:30
Manish Goregaokar
950c2d8135 Add huge explanation for E0038 (object safety) 2015-07-23 12:49:24 +05:30
Manish Goregaokar
37a84bc821 Add error explanation for E0022 2015-07-23 12:47:05 +05:30
Manish Goregaokar
5d31deeae4 Add error explanation for E0017 2015-07-23 12:45:11 +05:30
Manish Goregaokar
688a09910a Move E0006 into E0005 2015-07-23 12:45:11 +05:30
Manish Goregaokar
36d852918f Improve E0001-E0003 2015-07-23 12:45:11 +05:30
eternaleye
4e67f9c611 Write deterministic archives
Currently, `rustc` generates nondeterministic archives, which contain system timestamps. These don't really serve any useful purpose, and enabling deterministic archives moves us a little closer to completely deterministic builds. For a small toy library using `std::ops::{Deref,DerefMut}`, this change actually results in a bit-for-bit identical build every time.
2015-07-22 23:54:59 -07:00
Eli Friedman
b2213498c4 Resolve lifetime parameters for foreign functions.
Pretty straightforward; just need to make sure to explicitly handle
the generic parameters of each ast::ForeignItemFn.

Fixes #26587.
2015-07-22 22:37:20 -07:00
bors
8d91bbd90a Auto merge of #27192 - dotdash:inline_eq_slice, r=luqmana
eq_slice_() used to be a common implementation for two function that
both called it, but of those only eq_slice() is left, so we can as well
directly inline the code.
2015-07-23 02:24:06 +00:00
Eli Friedman
312f886d03 Remove orphaned unsigned_negation lint reference. 2015-07-22 17:47:01 -07:00
bors
cb4f102e38 Auto merge of #27191 - pnkfelix:sidestep-unary-negate-warning, r=alexcrichton
Work around unary negation to-be-feature-gated warning by replacing references to `-1` as a `ast::NodeId` with `ast::DUMMY_NODE_ID`, which seems like a better notation to use (it is currently also `-1`.

(AFAICT the code is not *relying* on the value `-1` anywhere, it really just needed a dummy value for when the input is `None`.)
2015-07-22 23:37:37 +00:00
Alex Crichton
70e8220166 trans: Consolidate creating pass manager builders
The LTO pass in the compiler forgot to call the `LLVMRustAddBuilderLibraryInfo`
function and configure other options such as merge_functions, vectorize_slp,
etc. This ended up causing linker errors on MSVC targets because the optimizer
didn't have the right knowledge that some system functions are missing on these
platforms.

This commit consolidates creation of PassManagerBuilder instances to one
function which is then called when needed. This ensures that the pass manager is
always correctly configured with the various target-specific information that
LLVM needs.

Overall, this fixes `-C lto -C opt-level=3` on 32-bit MSVC targets.
2015-07-22 16:22:51 -07:00
Felix S. Klock II
1905a49875 address review feedback: remove dupe feature opt-in. 2015-07-22 23:25:52 +02:00
Felix S. Klock II
abad7d6bba placate make tidy. 2015-07-22 23:23:36 +02:00
Björn Steinbrink
a66af8788d Avoid creating basic blocks for empty cleanup scopes
When compiling libsyntax this removes about 30k basic blocks that only
contain a single unconditional jump and reduces the peak memory usage by
about 10MB (from 681MB down to 671MB).
2015-07-22 23:15:01 +02:00
Andrew Paseltiner
cf8a1636ef add diagnostics for E0437 and E0438 2015-07-22 16:53:50 -04:00
bors
4234c4487a Auto merge of #27188 - pnkfelix:sidestep-warning-for-E0045, r=alexcrichton
Sidestep warning about repeated E0045 `span_err!` invocation.

(That is, take the two expressions with the same message and unify them into one subroutine.)
2015-07-22 20:44:39 +00:00
Jason Schein
c80bff0186 Added how to use labels to break nested loops to trpl. 2015-07-22 13:00:51 -07:00
Aidan Hobson Sayers
b6a0d9e178 Additional notes to link-args 2015-07-22 18:15:23 +01:00
Aidan Hobson Sayers
a8a49fbfc9 musl static linking not glibc 2015-07-22 18:15:16 +01:00
bors
5542830665 Auto merge of #27219 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #27084, #27127, #27131, #27140, #27146, #27147, #27151, #27154, #27155, #27156, #27157, #27158, #27163, #27164, #27166, #27167, #27170, #27175, #27183, #27201, #27202
- Failed merges: #26778
2015-07-22 16:58:56 +00:00
Steve Klabnik
5f04b1b384 Rollup merge of #27202 - apasel422:issue-21174, r=alexcrichton 2015-07-22 12:56:52 -04:00