{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreigqckek2msj7fyq7gjs5q4xscshm2bdt5tftg3hjcpkz2usvmvrgi",
    "uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mnto6tzcuig2"
  },
  "path": "/t/pre-rfc-explicit-overload-sets-for-mixed-arity-function-calls/24372#post_6",
  "publishedAt": "2026-06-09T07:09:38.000Z",
  "site": "https://internals.rust-lang.org",
  "textContent": "chrefr:\n\n> What I didn't emphasized enough though was that the experiment is for the purposes of FFI only, although that won't be enough to stop users.\n\nAnd exactly that is why I think the FFI focused experiments with overloading are misguided. Making FFI slightly easier isn't worth the cost to devex for the rest of the language.\n\nI have yet to see a convincing argument as to why you can't just rename the function at the language boarder. The mangled name in C++ differs anyway, so why not just expose it as `foo_i32(a: i32)` and `foo_f32(a: f32)` or such? That targets FFI, is doable with current language features and attributes, and doesn't pollute the rest of the language.",
  "title": "Pre-RFC: Explicit overload sets for mixed-arity function calls"
}