about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDylan DPC <dylan.dpc@gmail.com>2020-05-29 02:33:14 +0200
committerGitHub <noreply@github.com>2020-05-29 02:33:14 +0200
commit235f3827316200db2ce4b535507528725cfeb7a3 (patch)
treefaadcaef22580da39a459025bace87d2a2194bc1
parent3bcf6973b65ecd1b09ff5b00df0dd41f6d5938dc (diff)
parent5548e692260c7d468294e5eccbeb63c3a829ee94 (diff)
downloadrust-235f3827316200db2ce4b535507528725cfeb7a3.tar.gz
rust-235f3827316200db2ce4b535507528725cfeb7a3.zip
Rollup merge of #72605 - GuillaumeGomez:cleanup-e0617, r=Dylan-DPC
Add working example for E0617 explanation

r? @Dylan-DPC
-rw-r--r--src/librustc_error_codes/error_codes/E0617.md11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/librustc_error_codes/error_codes/E0617.md b/src/librustc_error_codes/error_codes/E0617.md
index f4357ff755e..61b56766c26 100644
--- a/src/librustc_error_codes/error_codes/E0617.md
+++ b/src/librustc_error_codes/error_codes/E0617.md
@@ -17,3 +17,14 @@ Certain Rust types must be cast before passing them to a variadic function,
 because of arcane ABI rules dictated by the C standard. To fix the error,
 cast the value to the type specified by the error message (which you may need
 to import from `std::os::raw`).
+
+In this case, `c_double` has the same size as `f64` so we can use it directly:
+
+```no_run
+# extern {
+#     fn printf(c: *const i8, ...);
+# }
+unsafe {
+    printf(::std::ptr::null(), 0f64); // ok!
+}
+```