diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-09-29 04:35:58 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-29 04:35:58 +0200 |
| commit | 37333b5131ba867007964dfd9b20fe59a5c191ef (patch) | |
| tree | 72b8bffece74edb60ba1a63398bff3bd28b8cbaf /src/test/ui/iterators/iter-sum-overflow-overflow-checks.rs | |
| parent | b61e69433951e31f7bd746e22f516a48ad41623b (diff) | |
| parent | 057f23d3ddabf8c89e5da371d724d1995e9655da (diff) | |
| download | rust-37333b5131ba867007964dfd9b20fe59a5c191ef.tar.gz rust-37333b5131ba867007964dfd9b20fe59a5c191ef.zip | |
Rollup merge of #63492 - eddyb:cvarargs, r=nagisa,matthewjasper
Remove redundancy from the implementation of C variadics.
This cleanup was first described in https://github.com/rust-lang/rust/issues/44930#issuecomment-497163539:
* AST doesn't track `c_variadic: bool` anymore, relying solely on a trailing `CVarArgs` type in fn signatures
* HIR doesn't have a `CVarArgs` anymore, relying solely on `c_variadic: bool`
* same for `ty::FnSig` (see tests for diagnostics improvements from that)
* `{hir,mir}::Body` have one extra argument than the signature when `c_variadic == true`
* `rustc_typeck` and `rustc_mir::{build,borrowck}` need to give that argument the right type (which no longer uses a lifetime parameter, but a function-internal scope)
* `rustc_target::abi::call` doesn't need special hacks anymore (since it never sees the `VaListImpl` now, it's all inside the body)
r? @nagisa / @rkruppe cc @dlrobertson @oli-obk
Diffstat (limited to 'src/test/ui/iterators/iter-sum-overflow-overflow-checks.rs')
0 files changed, 0 insertions, 0 deletions
