Vadim Petrochenkov
1fe2eb83ec
expand: Introduce enum for module loading errors and make module loading speculative
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
1e1d574aea
expand: Share some code between inline and out-of-line module treatment
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
29a9ef2818
expand: Align some code with the PR fixing inner attributes on out-of-line modules
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
da3419e18c
rustc_interface: Hide some hacky details of early linting from expand
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
46b67aa74d
expand: Some more consistent naming in module loading
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
3d0b622ab7
expand: Less path cloning during module loading
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
5bdf81d5fa
expand: Determine module directory path directly instead of relying on span
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
39052c55bb
expand: Move module file path stack from global session to expansion data
...
Also don't push the paths on the stack directly in `fn parse_external_mod`, return them instead.
2021-03-05 01:33:43 +03:00
Vadim Petrochenkov
bc18eb4717
expand: Remove obsolete DirectoryOwnership::UnownedViaMod
...
This ownership kind is only constructed in the case of path attributes like `#[path = ".."]` without a file name segment, which always represent some kind of directories and will produce and error on attempt to parse them as a module file.
2021-03-05 01:33:43 +03:00
yn0ga
ccca767834
Add powerpc-unknown-openbsd target
...
Add powerpc-unknown-openbsd target
* Fix missing abi::endian crate
* Missing platform-support.md
2021-03-04 22:43:34 +01:00
Guillaume Gomez
f74231fd27
Rollup merge of #82765 - oli-obk:polymorphization_regression, r=davidtwco
...
Fix polymorphization ICE on associated types in trait decls using const generics in bounds
r? `@davidtwco`
only the last commit actually changes something
2021-03-04 21:56:35 +01:00
Guillaume Gomez
55cec9079d
Also use INVALID_DOC_ATTRIBUTE for "unknown doc attribute" warnings
2021-03-04 21:48:07 +01:00
Guillaume Gomez
a66bf524c2
Add extra check for #[doc(test(...)] attribute
2021-03-04 21:24:35 +01:00
Guillaume Gomez
6f32e3e187
Add new edition 2021 link: INVALID_DOC_ATTRIBUTE
2021-03-04 21:24:35 +01:00
Mateusz Gacek
58d6f80f96
Fix comment with path to symbols!
macro
2021-03-04 10:14:56 -08:00
Oli Scherer
29f4aa753f
Fixes -Zpolymorphize for src/test/ui/const-generics/auxiliary/crayte.rs
2021-03-04 15:45:31 +00:00
Oli Scherer
67a61b9a01
Typo
2021-03-04 15:45:31 +00:00
Oli Scherer
63af264d62
Spread tracing instrumentation into the polymorphization logic
2021-03-04 15:45:31 +00:00
bors
409920873c
Auto merge of #81451 - nikic:llvm-12, r=nagisa
...
Upgrade to LLVM 12
This implements the necessary adjustments to make rustc work with LLVM 12. I didn't encounter any major issues so far.
r? `@cuviper`
2021-03-04 15:16:44 +00:00
Oli Scherer
0559e50a6c
Remove a dead code path
2021-03-04 12:21:36 +00:00
Yuki Okushi
c398871341
Rollup merge of #82717 - estebank:issue-70152, r=lcnr
...
Account for macros when suggesting adding lifetime
Fix #70152 .
2021-03-04 20:01:09 +09:00
Yuki Okushi
761ceab467
Rollup merge of #82697 - jplatte:patch-1, r=davidtwco
...
Fix stabilization version of move_ref_pattern
Both the [changelog](https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1490-2020-12-31 ) and the milestone of the [stabilization PR](https://github.com/rust-lang/rust/pull/76119 ) say 1.49.0, but the source says 1.48.0. I think the former is correct.
2021-03-04 20:01:07 +09:00
Yuki Okushi
f898aa3f5b
Rollup merge of #80527 - jyn514:rustdoc-lints, r=GuillaumeGomez
...
Make rustdoc lints a tool lint instead of built-in
- Rename `broken_intra_doc_links` to `rustdoc::broken_intra_doc_links` (and similar for other rustdoc lints; I don't expect any others to be used frequently, though).
- Ensure that the old lint names still work and give deprecation errors
- Register lints even when running doctests
- Move lint machinery into a separate file
- Add `declare_rustdoc_lint!` macro
Unblocks https://github.com/rust-lang/rust/pull/80300 , https://github.com/rust-lang/rust/pull/79816 , https://github.com/rust-lang/rust/pull/80965 . Makes the strangeness in https://github.com/rust-lang/rust/pull/77364 more apparent to the end user (note that `missing_docs` is *not* moved to rustdoc in this PR). Closes https://github.com/rust-lang/rust/issues/78786 .
## Current status
This is blocked on #82620 (see https://github.com/rust-lang/rust/pull/80527#issuecomment-787401519 )
2021-03-04 20:01:01 +09:00
Ömer Sinan Ağacan
c8a0e8d61b
Refactor confirm_builtin_call, remove partial if
...
Pass callee expr to `confirm_builtin_call`. This removes a partial
pattern match in `confirm_builtin_call` and the `panic` in the `else`
branch. The diff is large because of indentation changes caused by
removing the if-let.
2021-03-04 13:39:41 +03:00
bors
7f32f62aa5
Auto merge of #82304 - LeSeulArtichaut:unpretty-ast, r=spastorino
...
Add `-Z unpretty` flags for the AST
Implements rust-lang/compiler-team#408.
Builds on #82269 , but if that PR is rejected or stalls out, I can implement this without #82269 .
cc rust-lang/rustc-dev-guide#1062
2021-03-04 05:46:43 +00:00
Esteban Küber
c6c243ae1e
Move check only relevant in error case out of critical path
...
Move the check for potentially forgotten `return` in a tail expression
of arbitrary expressions into the coercion error branch to avoid
computing unncessary coercion checks on successful code.
Follow up to #81458 .
2021-03-03 18:28:53 -08:00
bors
6f7673d077
Auto merge of #81114 - bugadani:generator, r=estebank
...
Box generator-related Body fields
Might save some memory on functions that aren't generators.
2021-03-04 00:23:42 +00:00
bors
1c77a1fa3c
Auto merge of #82702 - jyn514:downgrade-err, r=Manishearth
...
Change error about unknown attributes to a warning
Hard errors should go through a future-compatibility phase first, especially since these attributes only have no effect and don't actively cause bugs.
Follow-up to https://github.com/rust-lang/rust/pull/82662 . Fixes ecosystem breakage like https://github.com/rust-lang/rust-clippy/issues/6832 .
r? `@GuillaumeGomez`
2021-03-03 21:35:32 +00:00
Esteban Küber
ae494d147a
Detect match arm body without braces
...
Fix #82524 .
2021-03-03 12:17:26 -08:00
Esteban Küber
5d0697b1be
reworded message
2021-03-03 12:15:26 -08:00
Nikita Popov
9a8acea783
Schedule ThinLTOBuffer passes again after sanitizer passes
...
This works around a design defect in the LLVM 12 pass builder
implementation. In LLVM 13, the PreLink ThinLTO pipeline properly
respects the OptimizerLastEPCallbacks.
2021-03-03 20:48:37 +01:00
bors
476acbf1e9
Auto merge of #82553 - tmiasko:update-tracing, r=Mark-Simulacrum
...
Update tracing to 0.1.25
* Update tracing from 0.1.18 to 0.1.25
* Update tracing-subscriber from 0.2.13 to 0.2.16
* Update tracing-tree from 0.1.6 to 0.1.8
* Add pin-project-lite to the list of allowed dependencies (it is now a direct dependency of tracing).
2021-03-03 18:01:29 +00:00
Oli Scherer
f31481368b
Check the sizes of Operand, Rvalue, AggregateKind and Place
2021-03-03 17:01:38 +00:00
Joshua Nelson
4b2e4e69df
Change error about unknown doc attributes to a warning
...
This prevents breakage across the ecosystem, since the error was just
introduced recently without first having a warning period.
2021-03-03 10:04:36 -05:00
LeSeulArtichaut
61114453ae
Add -Z unpretty
flags for the AST
2021-03-03 15:11:26 +01:00
Henry Boisdequin
d9d69212c3
Fix diagnostic suggests adding type [type error]
...
Fixes #79040
Unresolved questions:
Why does this change output the diagnostic twice?
Why does the CI fail when the errors are pointed out (UI tests)?
2021-03-03 16:50:07 +05:30
Ryan Levick
25637b228d
Warn in doc test
2021-03-03 11:23:33 +01:00
Ryan Levick
1999a3147f
Fix borrow and deref
2021-03-03 11:23:29 +01:00
Ryan Levick
da3995f0ec
Remove lint pass on borrow and deref
2021-03-03 11:23:14 +01:00
Esteban Küber
055db16479
Clean up code rightward drift
2021-03-03 11:22:57 +01:00
Esteban Küber
e48670c34a
Increase accuracy of lint trigger
2021-03-03 11:22:56 +01:00
Ryan Levick
49f32e0c8e
Improve error messages
2021-03-03 11:22:55 +01:00
Ryan Levick
95e330bd01
Update error message
2021-03-03 11:22:54 +01:00
Ryan Levick
217c88655b
Improve warning
2021-03-03 11:22:52 +01:00
Ryan Levick
a6d926d80d
Fix tests
2021-03-03 11:22:44 +01:00
Ryan Levick
f49ed7a6b7
Add tests and support two more noop methods
2021-03-03 11:22:17 +01:00
Ryan Levick
040735c110
First version of noop-lint
2021-03-03 11:22:16 +01:00
Yuki Okushi
651f53e517
Rollup merge of #82706 - klensy:expn-data, r=petrochenkov
...
use outer_expn_data() instead of outer_expn().expn_data()
From the comment in hygiene.rs, so use it:
https://github.com/rust-lang/rust/blob/master/compiler/rustc_span/src/hygiene.rs#L627-L632
2021-03-03 16:27:45 +09:00
Yuki Okushi
64b76da4b6
Rollup merge of #82695 - XAMPPRocky:remove-non-power-of-two-limit, r=nagisa
...
Revert non-power-of-two vector restriction
Removes the power of two restriction from rustc. As discussed in https://github.com/rust-lang/stdsimd/issues/63
r? ```@calebzulawski```
cc ```@workingjubilee``` ```@thomcc```
2021-03-03 16:27:44 +09:00
Esteban Küber
5824917dbb
Account for macros when suggesting adding lifetime
...
Fix #70152 .
2021-03-02 18:24:13 -08:00