Commit Graph

94874 Commits

Author SHA1 Message Date
Josh Stone
c127f537e9 Use for_each in Iterator::partition
We already use this for `unzip`, but `partition` is not much different.
2019-06-10 14:17:48 -07:00
Vadim Petrochenkov
93eb63c9a5 syntax: Rename variants of SyntaxExtension for consistency 2019-06-10 21:34:26 +03:00
Vadim Petrochenkov
0468eb63ad syntax: Improve documentation of SyntaxExtension 2019-06-10 21:33:33 +03:00
Vadim Petrochenkov
8edbbacbca syntax: Remove SyntaxExtension::DeclMacro
It's a less powerful duplicate of `SyntaxExtension::NormalTT`
2019-06-10 21:33:31 +03:00
Vadim Petrochenkov
edb925a91f syntax: Use MultiItemModifier for built-in derives 2019-06-10 21:32:48 +03:00
Vadim Petrochenkov
5a6ebec018 syntax: Remove SyntaxExtension::MultiDecorator and MultiItemDecorator 2019-06-10 21:25:56 +03:00
bors
02564de47b Auto merge of #61694 - Xanewok:update-rls, r=kennytm
Update RLS

This includes https://github.com/rust-lang/rls/pull/1482 which should finally fix the spurious tests RLS in Rust CI (test-pass -> test-fail).

r? @oli-obk
cc @ehuss
2019-06-10 18:24:43 +00:00
Vadim Petrochenkov
97f4e700c2 syntax: Remove SyntaxExtension::IdentTT and IdentMacroExpander 2019-06-10 21:19:40 +03:00
Alex Crichton
8eb7f36a3b std: Remove internal definitions of cfg_if! macro
This is duplicated in a few locations throughout the sysroot to work
around issues with not exporting a macro in libstd but still wanting it
available to sysroot crates to define blocks. Nowadays though we can
simply depend on the `cfg-if` crate on crates.io, allowing us to use it
from there!
2019-06-10 10:58:44 -07:00
Andrew Champion
d3461bf6a0 core: use memcmp optimization for 128 bit integer slices 2019-06-10 18:08:05 +01:00
Jeremy Fitzhardinge
7a22c34be7 Emit artifact notifications for save-analysis output
Issue: https://github.com/rust-lang/rust/issues/61047
2019-06-10 09:43:58 -07:00
David Wood
9ed4674269
typeck: Fix const generic in repeat param ICE.
This commit fixes an ICE that occured when a const generic was used in
a repeat expression. This was due to the code expecting the length of
the repeat expression to be const evaluatable to a constant, but a const
generic parameter is not (however, it can be made into a constant).
2019-06-10 16:58:47 +01:00
Igor Matuszewski
630d5f355f Don't suggest using \r in raw strings 2019-06-10 17:32:15 +02:00
bors
a73ecb3d9c Auto merge of #61716 - Centril:rollup-nxwf5ol, r=Centril
Rollup of 5 pull requests

Successful merges:

 - #59600 (Replaced linear token counting macros with optimized implementation)
 - #61501 (get rid of real_intrinsics module)
 - #61570 (Fix issues with const argument inference)
 - #61683 (Haiku: the maximum stack size is 16 MB)
 - #61697 (submodules: update clippy from 71be6f62 to c0dbd34b)

Failed merges:

r? @ghost
2019-06-10 11:15:07 +00:00
Mazdak Farrokhzad
f90d34874e
Rollup merge of #61697 - matthiaskrgr:submodule_upd, r=Manishearth
submodules: update clippy from 71be6f62 to c0dbd34b

Changes:
````
travis: disable rls integration test.
rustup https://github.com/rust-lang/rust/pull/61669/
Add OUTER_EXPN_INFO lint
````

Should fix clippy toolstate
2019-06-10 13:14:32 +02:00
Mazdak Farrokhzad
2bb390b281
Rollup merge of #61683 - nielx:haiku-stack-limit, r=nagisa
Haiku: the maximum stack size is 16 MB

This keeps the compiler from crashing every time it is invoked. No functional change on other platforms.

This patch is similar to the limitation that is in the [librustdoc/lib.rs](57e13e0325/src/librustdoc/lib.rs (L89)).
2019-06-10 13:14:31 +02:00
Mazdak Farrokhzad
e181139162
Rollup merge of #61570 - varkor:infer-const-arg, r=eddyb
Fix issues with const argument inference

Fixes https://github.com/rust-lang/rust/issues/60724.
Fixes https://github.com/rust-lang/rust/issues/61346.

r? @eddyb
2019-06-10 13:14:29 +02:00
Mazdak Farrokhzad
22244cfab0
Rollup merge of #61501 - RalfJung:intrinsics, r=rkruppe
get rid of real_intrinsics module

instead import intrinsics locally in their wrapper functions.

(These functions are wrapper functions as a preparation to fixing https://github.com/rust-lang/rust/issues/53871.)
2019-06-10 13:14:28 +02:00
Mazdak Farrokhzad
97df8676b7
Rollup merge of #59600 - tobia:master, r=pnkfelix
Replaced linear token counting macros with optimized implementation

There are currently two distinct token-counting macros in the source. Both implement the trivial algorithm, with linear complexity. They may or may not be adequate for their use case, but considering that other people are probably going to copy and paste them whenever they need a token-counting macro, I replaced them with an optimized implementation with logarithmic complexity.
2019-06-10 13:14:26 +02:00
Ralf Jung
0edf46f7d1 comments 2019-06-10 13:08:13 +02:00
Ralf Jung
b823cc1ece const-correctness might be confusing for C++ people 2019-06-10 13:08:13 +02:00
Ralf Jung
f2b49d978c avoid 'const-context' terminology 2019-06-10 13:08:13 +02:00
Ralf Jung
ed02b156c5 replace some mode comparisons by more readable function call, rename some Mode, and more comments 2019-06-10 13:08:13 +02:00
Ralf Jung
ea21a8a38f some more comments for const_qualif 2019-06-10 13:06:49 +02:00
Ralf Jung
7b97cf9431 make sure to_ascii_lowercase actually leaves upper-case non-ASCII characters alone 2019-06-10 12:42:43 +02:00
Philipp Hansch
33137ffdd5
Address review comments
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-06-10 11:47:42 +02:00
Philipp Hansch
e3516a128e
librustc_errors: Add some more documentation 2019-06-10 11:46:32 +02:00
bors
1cbd8a4d68 Auto merge of #61506 - imbrem:mir_body_renaming, r=eddyb
Changed usages of `mir` in librustc::mir and librustc_mir to `body`

Work on part 2 of #60229
2019-06-10 08:07:22 +00:00
Niels Sascha Reedijk
56a7f1e77e Haiku: the maximum stack size is 16 MB
When one tries to create a thread with a requested stack size larger
than 16 MB, the call will fail and the compiler will bail out. Therefore
we should limit the size of the thread stack to 16 MB on Haiku.
2019-06-10 08:10:06 +02:00
bors
5d4aef6055 Auto merge of #61608 - Aaron1011:feature/weird-expr-yield, r=Centril
Add nested 'yield' expression to weird expressions test
2019-06-10 05:17:12 +00:00
Yuki Okushi
3cfceb94cf Add an example 2019-06-10 13:30:45 +09:00
Mazdak Farrokhzad
e62c9d7917 Stabilize underscore_const_names: stage0 -> bootstrap. 2019-06-10 06:17:39 +02:00
Mazdak Farrokhzad
48e863ed69 Harden non-const items to not accept underscore names. 2019-06-10 06:17:39 +02:00
Mazdak Farrokhzad
56d71c2910 Stabilize underscore_const_names. 2019-06-10 06:17:39 +02:00
bors
ad3829fd66 Auto merge of #61706 - petrhosek:bootstrap-cp-r, r=Mark-Simulacrum
Use Build::read_dir instead of fs::read_dir in Build::cp_r

Build::read_dir does better error handling when the directory doesn't
exist; it actually prints the name of the directory rather than just
printing the underlying error "No such file or directory" which on
its own isn't very useful.
2019-06-10 02:35:29 +00:00
Chris Gregory
8e7ade85e6 Reword const fn conditional and loop error text 2019-06-09 19:02:28 -07:00
Wesley Wiser
41e976baa9 Azure: retry failed awscli installs
Fixes #61604
2019-06-09 21:28:47 -04:00
Nicholas Nethercote
35b5f43770 Special-case literals in parse_bottom_expr.
This makes parsing faster, particularly for code with large constants,
for two reasons:
- it skips all the keyword comparisons for literals;
- it replaces the unnecessary `parse_literal_maybe_minus` call with
  `parse_lit`, avoiding an unnecessary allocation via `mk_expr`.
2019-06-10 10:04:25 +10:00
Petr Hosek
449db68910 Use Build::read_dir instead of fs::read_dir in Build::cp_r
Build::read_dir does better error handling when the directory doesn't
exist; it actually prints the name of the directory rather than just
printing the underlying error "No such file or directory" which on
its own isn't very useful.
2019-06-09 16:57:17 -07:00
Petr Hosek
715578ea57 Pass cflags rather than cxxflags to LLVM as CMAKE_C_FLAGS
We mistakenly pass cxxflags from the configuration to LLVM build as
CMAKE_C_FLAGS.
2019-06-09 16:53:46 -07:00
bors
61a60ce7d3 Auto merge of #61229 - Centril:stabilize-repr_align_enum, r=nagisa
Stabilize #![feature(repr_align_enum)] in Rust 1.37.0

On an `enum` item, you may now write:

```rust
#[repr(align(X))]
enum Foo {
    // ...
}
```

This has equivalent effects to first defining:

```rust
#[repr(align(X))]
struct AlignX<T>(T);
```

and then using `AlignX<Foo>` in `Foo`'s stead.

r? @nagisa
2019-06-09 23:50:04 +00:00
Adrian Friedli
8590074a01
implement nth_back for RangeInclusive 2019-06-09 22:45:11 +02:00
Mark Rousskov
45df52f2cc Properly point at the last opening brace 2019-06-09 14:09:36 -06:00
Mark Rousskov
6b9740bf02 Add comment about raw strings to self.style 2019-06-09 14:09:36 -06:00
Mark Rousskov
b1c357e0c3 Introduce InnerSpan abstraction
This should be used when trying to get at subsets of a larger span,
especially when the larger span is not available in the code attempting
to work with those subsets (especially common in the fmt_macros crate).

This is usually a good replacement for (BytePos, BytePos) and (usize,
usize) tuples.

This commit also removes from_inner_byte_pos, since it took usize
arguments, which is error prone.
2019-06-09 14:09:36 -06:00
Mark Rousskov
a859440092 Shift padding out of suggestions for format strings 2019-06-09 14:06:34 -06:00
Jad Ghalayini
80ff07f30d Changed usages of mir in librustc::mir and librustc_mir to body 2019-06-09 16:05:05 -04:00
Mark Rousskov
dc13072b7b Use Symbol for named arguments in fmt_macros 2019-06-09 13:45:16 -06:00
Mark Rousskov
7795b155e0 Inline raw method 2019-06-09 13:44:55 -06:00
Mark Rousskov
20efb19043 Make a few methods private 2019-06-09 13:44:55 -06:00