diff options
| author | bors <bors@rust-lang.org> | 2019-12-20 16:24:12 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-12-20 16:24:12 +0000 |
| commit | 01a46509a4c2dc430ebebf940a26232fdaeeba81 (patch) | |
| tree | 4e6f0da977dffdce7073fdf1a681986d7b38650b /src/librustc_error_codes/error_codes | |
| parent | 6b561b4917e803c4be4ca44d8e552b680cb9e380 (diff) | |
| parent | 43d1532cd7c2d03e8af3e7179edccd89e989897f (diff) | |
| download | rust-01a46509a4c2dc430ebebf940a26232fdaeeba81.tar.gz rust-01a46509a4c2dc430ebebf940a26232fdaeeba81.zip | |
Auto merge of #67455 - Centril:rollup-mf0yc81, r=Centril
Rollup of 5 pull requests Successful merges: - #64588 (Add a raw "address of" operator) - #67031 (Update tokio crates to latest versions) - #67131 (Merge `TraitItem` & `ImplItem into `AssocItem`) - #67354 (Fix pointing at arg when cause is outside of call) - #67363 (Fix handling of wasm import modules and names) Failed merges: r? @ghost
Diffstat (limited to 'src/librustc_error_codes/error_codes')
| -rw-r--r-- | src/librustc_error_codes/error_codes/E0743.md | 16 | ||||
| -rw-r--r-- | src/librustc_error_codes/error_codes/E0745.md | 2 |
2 files changed, 12 insertions, 6 deletions
diff --git a/src/librustc_error_codes/error_codes/E0743.md b/src/librustc_error_codes/error_codes/E0743.md index aaf19d8478c..1780fe59cbd 100644 --- a/src/librustc_error_codes/error_codes/E0743.md +++ b/src/librustc_error_codes/error_codes/E0743.md @@ -1,11 +1,17 @@ -C-variadic has been used on a non-foreign function. +The C-variadic type `...` has been nested inside another type. Erroneous code example: ```compile_fail,E0743 -fn foo2(x: u8, ...) {} // error! +#![feature(c_variadic)] + +fn foo2(x: u8, y: &...) {} // error! ``` -Only foreign functions can use C-variadic (`...`). It is used to give an -undefined number of parameters to a given function (like `printf` in C). The -equivalent in Rust would be to use macros directly. +Only foreign functions can use the C-variadic type (`...`). +In such functions, `...` may only occur non-nested. +That is, `y: &'a ...` is not allowed. + +A C-variadic type is used to give an undefined number +of parameters to a given function (like `printf` in C). +The equivalent in Rust would be to use macros directly. diff --git a/src/librustc_error_codes/error_codes/E0745.md b/src/librustc_error_codes/error_codes/E0745.md index 39bebdcd375..6595691ce78 100644 --- a/src/librustc_error_codes/error_codes/E0745.md +++ b/src/librustc_error_codes/error_codes/E0745.md @@ -11,7 +11,7 @@ fn temp_address() { To avoid the error, first bind the temporary to a named local variable. -```ignore (not yet implemented) +``` # #![feature(raw_ref_op)] fn temp_address() { let val = 2; |
