Commit graph

25428 commits

Author SHA1 Message Date
Mazdak Farrokhzad
7fdfe8b854 Refer to #50072 re. hack. 2019-07-24 11:37:09 +02:00
Mazdak Farrokhzad
2e193f7db7 Add test self-in-enum-definition 2019-07-24 04:14:09 +02:00
Mazdak Farrokhzad
376382aff3
Rollup merge of #62870 - matklad:issue-62863, r=petrochenkov
fix lexing of comments with many \r

closes #62863
2019-07-22 15:32:29 +02:00
Mazdak Farrokhzad
16f585ca1c
Rollup merge of #62853 - fakenine:normalize_use_of_backticks_compiler_messages_p13, r=Centril
normalize use of backticks in compiler messages for librustc/hir

https://github.com/rust-lang/rust/issues/60532
2019-07-22 15:32:24 +02:00
Mazdak Farrokhzad
1289677821
Rollup merge of #62832 - fakenine:normalize_use_of_backticks_compiler_messages_p12, r=Centril
normalize use of backticks in compiler messages for librustc_incremental

https://github.com/rust-lang/rust/issues/60532
2019-07-22 15:32:22 +02:00
Mazdak Farrokhzad
063268b2bc
Rollup merge of #62812 - fakenine:normalize_use_of_backticks_compiler_messages_p11, r=GuillaumeGomez
normalize use of backticks in compiler messages for librustc_metadata

https://github.com/rust-lang/rust/issues/60532
2019-07-22 15:32:20 +02:00
Mazdak Farrokhzad
17ddfbe49c
Rollup merge of #62810 - fakenine:normalize_use_of_backticks_compiler_messages_p10, r=Centril
normalize use of backticks in compiler messages for librustc_lint

https://github.com/rust-lang/rust/issues/60532
2019-07-22 15:32:18 +02:00
Mazdak Farrokhzad
7dafdd21b1
Rollup merge of #62788 - fakenine:normalize_use_of_backticks_compiler_messages_p9, r=Centril
normalize use of backticks in compiler messages for libcore/ptr

https://github.com/rust-lang/rust/issues/60532
2019-07-22 15:32:15 +02:00
Aleksey Kladov
647bf96b79 fix lexing of comments with many \r
closes #62863
2019-07-22 15:39:06 +03:00
Vadim Petrochenkov
39d144e808 Fix or ignore regressed tests 2019-07-22 11:50:21 +03:00
Samy Kacimi
51ee196235
normalize use of backticks in compiler messages for librustc/hir
https://github.com/rust-lang/rust/issues/60532
2019-07-21 16:54:33 +02:00
Samy Kacimi
0385d64d19
normalize use of backticks in compiler messages for librustc_lint 2019-07-21 11:47:24 +02:00
Samy Kacimi
60ca55cbda
normalize use of backticks in compiler messages for librustc_incremental
https://github.com/rust-lang/rust/issues/60532
2019-07-20 20:57:45 +02:00
Aleksey Kladov
395ee0b79f Introduce rustc_lexer
The idea here is to make a reusable library out of the existing
rust-lexer, by separating out pure lexing and rustc-specific concerns,
like spans, error reporting an interning.

So, rustc_lexer operates directly on `&str`, produces simple tokens
which are a pair of type-tag and a bit of original text, and does not
report errors, instead storing them as flags on the token.
2019-07-20 21:12:34 +03:00
bors
f69b07144a Auto merge of #62710 - estebank:bad-named-args, r=petrochenkov
Specific error for positional args after named args in `format!()`

When writing positional arguments after named arguments in the
`format!()` and `println!()` macros, provide a targeted diagnostic.

Follow up to https://github.com/rust-lang/rust/pull/57522/files#r247278885
2019-07-20 06:18:52 +00:00
Samy Kacimi
19a848d2ea
normalize use of backticks in compiler messages for librustc_metadata
https://github.com/rust-lang/rust/issues/60532
2019-07-19 22:24:56 +02:00
Julien Cretin
6ec4584d84 Implement checks for meta-variables in macros 2019-07-19 19:59:12 +02:00
bors
f9477a77c5 Auto merge of #62694 - lundibundi:help-infer-fn-ret, r=eddyb
rustc_typeck: improve diagnostics for -> _ fn return type

This should implement IIUC the mentioned issue.

~~I'm not sure if there is a better way than `get_infer_ret_ty` to get/check the return type without code duplication.~~

~~Also, is this unwrap be okay `ty::Binder::bind(*tables.liberated_fn_sigs().get(hir_id).unwrap())`?~~

r? @eddyb
Closes: https://github.com/rust-lang/rust/issues/56132
2019-07-19 04:04:17 +00:00
bors
fe499a7b34 Auto merge of #62684 - petrochenkov:scopevisit, r=davidtwco
resolve: Improve candidate search for unresolved macro suggestions

Use same scope visiting machinery for both collecting suggestion candidates and actually resolving the names.

The PR is better read in per-commit fashion with whitespace changes ignored (the first commit in particular moves some code around).

This should be the last pre-requisite for https://github.com/rust-lang/rust/pull/62086.
r? @davidtwco
2019-07-19 00:24:39 +00:00
Samy Kacimi
886fb218ed
normalize use of backticks in compiler messages for libcore/ptr
https://github.com/rust-lang/rust/issues/60532
2019-07-18 23:33:16 +02:00
bors
a3369981de Auto merge of #61749 - davidtwco:rfc-2203-const-array-repeat-exprs, r=eddyb
rustc/rustc_mir: Implement RFC 2203.

This PR implements RFC 2203, allowing constants in array repeat
expressions. Part of #49147.

r? @eddyb
2019-07-18 20:41:40 +00:00
bors
311376d30d Auto merge of #62782 - Mark-Simulacrum:rollup-1hz5ya6, r=Mark-Simulacrum
Rollup of 15 pull requests

Successful merges:

 - #61926 (Fix hyperlinks in From impls between Vec and VecDeque)
 - #62615 ( Only error about MSVC + PGO + unwind if we're generating code)
 - #62696 (Check that trait is exported or public before adding hint)
 - #62712 (Update the help message on error for self type)
 - #62728 (Fix repeated wording in slice documentation)
 - #62730 (Consolidate hygiene tests)
 - #62732 (Remove last use of mem::uninitialized from std::io::util)
 - #62740 (Add missing link to Infallible in TryFrom doc)
 - #62745 (update data_layout and features for armv7-wrs-vxworks)
 - #62749 (Document link_section arbitrary bytes)
 - #62752 (Disable Z3 in LLVM build)
 - #62764 (normalize use of backticks in compiler messages for librustc/lint)
 - #62774 (Disable simd_select_bitmask test on big endian)
 - #62777 (Self-referencial type now called a recursive type)
 - #62778 (Emit artifact notifications for dependency files)

Failed merges:

 - #62746 ( do not use mem::uninitialized in std::io)

r? @ghost
2019-07-18 17:03:37 +00:00
Mark Rousskov
4544b4d288
Rollup merge of #62777 - gilescope:self-referencial-to-recursion, r=eddyb
Self-referencial type now called a recursive type

As per Boat's suggestion - #62539, this makes the error message clearer.
2019-07-18 11:29:57 -04:00
Mark Rousskov
ed83734a3b
Rollup merge of #62774 - smaeul:pr/simd-tests, r=petrochenkov
Disable simd_select_bitmask test on big endian

Per #59356 it is expected that the interpretation of the bitmask depends
on target endianness.

Closes #59356
2019-07-18 11:29:55 -04:00
Mark Rousskov
0ae9048494
Rollup merge of #62764 - fakenine:normalize_use_of_backticks_compiler_messages_p7, r=alexreg
normalize use of backticks in compiler messages for librustc/lint

https://github.com/rust-lang/rust/issues/60532
2019-07-18 11:29:53 -04:00
Mark Rousskov
aa31ca7128
Rollup merge of #62730 - matthewjasper:hygiene-tests, r=petrochenkov
Consolidate hygiene tests

Some general clean-up extracted out from another PR
2019-07-18 11:29:43 -04:00
Mark Rousskov
988a4bad90
Rollup merge of #62712 - limira:self-type-help, r=estebank
Update the help message on error for self type

Fix #62609
2019-07-18 11:29:40 -04:00
Mark Rousskov
df21a6f040
Rollup merge of #62696 - chocol4te:fix_#62194, r=estebank
Check that trait is exported or public before adding hint

Closes #62194.

This PR checks the `AccessLevels` of a trait to check whether adding the intercrate ambiguity hint is valid or not.

I am unsure of both the use of `.unwrap()` as well as removing hints for [downstream *and* [upstream](92b0f52584/src/librustc/traits/select.rs (L112-L142)).
2019-07-18 11:29:39 -04:00
bors
4ed008a420 Auto merge of #62682 - alessandrod:issue-58375, r=eddyb
Normalize type parameters in create_mono_items_for_default_impls.

Fix for https://github.com/rust-lang/rust/issues/58375. I've added a test in `src/tests/run-pass` to reproduce the bug, not sure that's the best place for it.

See https://github.com/rust-lang/rust/issues/58375#issuecomment-509156977 for more context.
2019-07-18 13:09:01 +00:00
Vadim Petrochenkov
a7726ce086 resolve: Attempt to resolve unresolved paths in macro namespace 2019-07-18 13:42:45 +03:00
Vadim Petrochenkov
329c05251a resolve: Visit all scopes to collect suggestion candidates for unresolved macros 2019-07-18 13:42:45 +03:00
Vadim Petrochenkov
79f0d88de8 resolve: Use feature(custom_attribute) fallback only if the feature is enabled
Normally `#![feature(...)]` shouldn't change behavior, but custom attributes in particular are in the process of retirement, and we should not produce a message telling to enable them.
It also helps with unifying diagnostics for unresolved macros.
2019-07-18 13:42:45 +03:00
Giles Cope
c56c5a861a Self-referencial type renamed to recursive type. 2019-07-18 07:30:51 +01:00
bors
2c3b05d90d Auto merge of #62669 - estebank:suggest-assoc-type, r=cramertj
Suggest assoc type on type not found in trait method definition

Given

```
trait A {
    type Bla;
    fn to_bla(&self) -> Bla;
}
```
suggest using `Self::Bla`:

```
error[E0412]: cannot find type `Bla` in this scope
  --> file.rs:3:25
   |
LL |     fn to_bla(&self) -> Bla;
   |                         ^^^ help: try: `Self::Bla`
```

Fix #62650.
2019-07-18 05:07:36 +00:00
Samuel Holland
60529a72de Disable simd_select_bitmask test on big endian
Per #59356 it is expected that the interpretation of the bitmask depends
on target endianness.

Closes #59356
2019-07-17 20:26:59 -05:00
Samy Kacimi
e5e1397adb
normalize use of backticks in compiler messages for librustc/lint
https://github.com/rust-lang/rust/issues/60532
2019-07-17 22:49:48 +02:00
Giles Cope
387b6c3e78 Test case for #62506. 2019-07-17 21:38:08 +01:00
Denys Otrishko
f8681f0c05
rustc_typeck: improve diagnostics for -> _ fn return type
Closes: https://github.com/rust-lang/rust/issues/56132
2019-07-17 16:59:08 +03:00
bors
38798c6d68 Auto merge of #62592 - nikic:actually-update-llvm, r=alexcrichton
Update to LLVM 9 trunk

Following the preparatory changes in #62474, this updates the LLVM submodule to https://github.com/rust-lang/llvm-project/tree/rustc/9.0-2019-07-12 and:

 * Changes the LLVM Rust bindings to account for the new SubtargetSubTypeKV.
 * Adjusts a codegen test for the new form of the byval attribute that takes a type.
 * Makes a PGO codegen test more liberal with regard to order and linkage.
 * Builds InstrProfilingPlatformWindows.c as part of libprofiler_builtins.
 * Moves registration of additional passes (in particular sanitizers) to the end of the module pass manager.
 * Disables LLDB on builders.

r? @alexcrichton
2019-07-16 23:05:06 +00:00
Matthew Jasper
a4a7bb9a3f Make pretty-expanded-hygiene a ui test
`normalize-stdout-test` removes the need for Make, and it can be updated
with `--bless` this way
2019-07-16 21:23:29 +01:00
Matthew Jasper
03178f31c4 Change all run-pass hygiene tests to ui tests
Change some tests to `check-pass` that are only testing name resolution.
2019-07-16 21:20:39 +01:00
Mark Rousskov
94b16d4bd0
Rollup merge of #62703 - fakenine:normalize_use_of_backticks_compiler_messages_p6, r=eddyb
normalize use of backticks in compiler messages for libsyntax/parse

https://github.com/rust-lang/rust/issues/60532
2019-07-16 11:38:58 -04:00
Mark Rousskov
4226f14cbb
Rollup merge of #62702 - fakenine:normalize_use_of_backticks_compiler_messages_p5, r=Centril
normalize use of backticks in compiler messages for libsyntax_ext

https://github.com/rust-lang/rust/issues/60532
2019-07-16 11:38:57 -04:00
Ferdia McKeogh
2ced474e80
Check that trait is exported or public before adding intercrate ambiguity hint 2019-07-16 07:53:30 +02:00
Limira
b7cbd4ec47 Update the help message on error for self type 2019-07-16 11:30:48 +07:00
Esteban Küber
33ec1823d7 Specific error for positional args after named args in format!()
When writing positional arguments after named arguments in the
`format!()` and `println!()` macros, provide a targeted diagnostic.
2019-07-15 20:51:32 -07:00
Mark Rousskov
40a74438ad
Rollup merge of #62685 - nathanwhit:as_ref_suggest_fix, r=estebank
Add info about undefined behavior to as_ref suggestions

Fixes #61786. A very small fix, but suggestions on wording/content are welcomed.
2019-07-15 19:55:14 -04:00
Mark Rousskov
879c610557
Rollup merge of #62673 - RalfJung:validity-msg, r=oli-obk
miri validation: better error messages for dangling references

Cc @oli-obk
2019-07-15 19:55:11 -04:00
Mark Rousskov
f9576a6fce
Rollup merge of #62668 - goodmanjonathan:fix-62660, r=estebank
Fix #62660

If the explicitly given type of a `self` parameter fails to parse correctly, we need to propagate the error rather than dropping it and causing an ICE.

Fixes #62660.
2019-07-15 19:55:10 -04:00
Mark Rousskov
4efdff7dbb
Rollup merge of #62646 - estebank:wording, r=petrochenkov
Tweak wording in feature gate errors
2019-07-15 19:55:07 -04:00