Felix S. Klock II
b82795244e
Associate multiple with a crate too.
2022-03-03 18:45:25 -05:00
Felix S. Klock II
e9035f7bef
refactor: prepare to associate multiple spans with a module.
2022-03-03 14:38:50 -05:00
mark
e489a94dee
rename ErrorReported -> ErrorGuaranteed
2022-03-02 09:45:25 -06:00
Eduard-Mihai Burtescu
b7e95dee65
rustc_errors: let DiagnosticBuilder::emit
return a "guarantee of emission".
2022-02-23 06:38:52 +00:00
est31
2ef8af6619
Adopt let else in more places
2022-02-19 17:27:43 +01:00
Nicholas Nethercote
b1c934ebb8
Remove unnecessary sigils around Ident::as_str()
calls.
2021-12-15 17:32:42 +11:00
Nicholas Nethercote
8cddcd39ba
Remove SymbolStr
.
...
By changing `as_str()` to take `&self` instead of `self`, we can just
return `&str`. We're still lying about lifetimes, but it's a smaller lie
than before, where `SymbolStr` contained a (fake) `&'static str`!
2021-12-15 13:30:26 +11:00
Eric Huss
75f058dbfd
Check for macros in built-in attributes that don't support them.
2021-09-25 09:03:15 -07:00
Léo Lanteri Thauvin
fde1b76b4b
Use if-let guards in the codebase
2021-08-25 20:24:35 +02:00
Deadbeef
4617b03316
E0583: Include secondary path in error message
2021-05-06 09:40:05 +08:00
hi-rustin
461f52071d
use full path for E0761
2021-05-03 18:57:48 +08:00
hi-rustin
f758eb664e
use double quotes for E0761
2021-05-03 16:02:54 +08:00
Vadim Petrochenkov
a4cc3cae04
expand: Resolve and expand inner attributes on out-of-line modules
2021-03-14 18:10:29 +03:00
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
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
Vadim Petrochenkov
4a88165124
ast: Keep expansion status for out-of-line module items
...
Also remove `ast::Mod` which is mostly redundant now
2021-02-18 13:07:49 +03:00
Vadim Petrochenkov
eb65f15c78
ast: Stop using Mod
in Crate
...
Crate root is sufficiently different from `mod` items, at least at syntactic level.
Also remove customization point for "`mod` item or crate root" from AST visitors.
2021-02-18 13:07:49 +03:00
David Tolnay
fd4dd00dde
Syntactically permit unsafety on mods
2020-09-10 06:56:33 -07:00
Caleb Cartwright
08e35155b4
rustc_expand: remove pub visibility for rustfmt
2020-09-04 19:44:11 -05:00
mark
9e5f7d5631
mv compiler to compiler/
2020-08-30 18:45:07 +03:00