| Age | Commit message (Collapse) | Author | Lines |
|
This reverts commit 2cb9a65684dba47c52de8fa938febf97a73e70a9, reversing
changes made to 750bd1a7ff3e010611b97ee75d30b7cbf5f3a03c.
(cherry picked from commit fc43df0333d5862a219f16d294ae38b14b9191d3)
|
|
|
|
|
|
In practice, it was only ever used with `ArenaCacheSelector`. Change it to a single boolean
`arena_cache` rather than allowing queries to specify an arbitrary type.
|
|
- Disallow multiple macros callbacks in the same invocation. In practice, this was never used.
- Remove the `[]` brackets around the macro name
- Require an `ident`, not an arbitrary `tt`
|
|
It's not actually necessary and it makes the code harder to read.
|
|
|
|
Compute lifetimes in scope at diagnostic time
The set of available lifetimes is currently computed during lifetime resolution on HIR. It is only used for one diagnostic.
In this PR, HIR lifetime resolution just reports whether elided lifetimes are well-defined at the place of use. The diagnostic code is responsible for building a list of lifetime names if elision is not allowed.
This will allow to remove lifetime resolution on HIR eventually.
|
|
|
|
|
|
remove region_scope_tree from RegionCtxt
Apply suggestions from code review
Co-authored-by: Niko Matsakis <niko@alum.mit.edu>
|
|
valtree_to_const_val
|
|
Generate synthetic object file to ensure all exported and used symbols participate in the linking
Fix #50007 and #47384
This is the synthetic object file approach that I described in https://github.com/rust-lang/rust/pull/95363#issuecomment-1079932354, allowing all exported and used symbols to be linked while still allowing them to be GCed.
Related #93791, #95363
r? `@petrochenkov`
cc `@carbotaniuman`
|
|
This is currently a wrapper to `SymbolExportLevel` but it allows
later addition of extra information.
|
|
foreign crate
Adding diagnostic data on generators to the crate metadata and using it to provide
a better diagnostic on failure to meet send bound on futures originated from a foreign crate
|
|
This change was made as per suspicion that this struct was never renamed after consistent use of DropCk.
This also clarifies the meaning behind the name of this structure.
|
|
Signed-off-by: codehorseman <cricis@yeah.net>
|
|
|
|
This was largely just caching the shard value at this point, which is not
particularly useful -- in the use sites the key was being hashed nearby anyway.
|
|
|
|
|
|
The data structure previously used here required Ord.
As part of #90317, we do not want DefId to implement Ord.
|
|
Also rename `module_exports`/`export_map` to `module_reexports`/`reexport_map` for clarity.
|
|
Import `SimplifiedType` more
|
|
See #91867
This was mostly straightforward. In several places, I take advantage
of the fact that lifetimes are non-hygenic: a macro declares the
'tcx' lifetime, which is then used in types passed in as macro
arguments.
|
|
|
|
extern providers
|
|
|
|
Move ICH to rustc_query_system
Based on https://github.com/rust-lang/rust/pull/89183
The StableHashingContext does not need to be in rustc_middle.
This PR moves it to rustc_query_system. This will avoid a dependency between rustc_ast_lowering and rustc_middle in https://github.com/rust-lang/rust/pull/89124.
|
|
|
|
The previous macro_rules! parsers failed when an additional modifier was added
with ambiguity errors. The error is pretty unclear as to what exactly the cause
here is, but this change simplifies the argument parsing code such that the
error is avoided.
|
|
|
|
|
|
|