Skip to content

Refactor inference #4398

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 168 commits into from
Closed

Conversation

nikomatsakis
Copy link
Contributor

A collection of refactorings that I found it hard/tiresome to divide:

  • Make extern fn() assignable to any closure type, rather than a subtype of the closure types.
  • Remove unused int_ty_set and float_ty_set
  • Refactor variable unification and make it more DRY
  • Do fn sub/lub/glb on the level of fn_sig
  • Rename infer::to_str::ToStr to infer::to_str::InferStr
  • Capitalize names of various types
  • Correct hashing of FnMeta

r? @pcwalton

erickt and others added 30 commits December 20, 2012 21:16
This switches over to using structs and send_maps for
query string parsing.
For example, in let x: char = 42; This was an ICE and is now a
proper type error, as per rust-lang#3477
update after/syntax/rust.vim for removal of <-
bump 0.5 => 0.6, redirect some URLs in docs.
update mandelbrot to pipes, a few other updates
Fix a bug in Result::unwrap_err (and minor cleanup)
Convert core::io to use explicit self (for issue rust-lang#4118 and issue rust-lang#2004)
catamorphism and others added 27 commits January 7, 2013 16:14
… ty_err

In general it would be good to suppress any messages involving types that
have ty_err as a sub-component, but this works for now.
This reverts commit d771830.
That is, treat `self` as if it has dynamic scope. This seems to
be harmless, and prevents an ICE as per rust-lang#3563
This'll be less confusing for anyone who works on match in future.
Rename identifiers that still use 'alt' to use 'match'
Ideally we would suppress error messages involving any types that
contain ty_err, but that's awkward to do right now.
Necessary to allow supertrait methods to be called in default methods.

r=nikomatsakis
eliminating use of deprecated features and more forwards compatible
with fn reform.
- Make `extern fn()` assignable to any closure type, rather than
  a subtype.
- Remove unused int_ty_set and float_ty_set
- Refactor variable unification and make it more DRY
- Do fn sub/lub/glb on the level of fn_sig
- Rename infer::to_str::ToStr to infer::to_str::InferStr
- Capitalize names of various types
- Correct hashing of FnMeta
bors pushed a commit to rust-lang-ci/rust that referenced this pull request May 15, 2021
RalfJung added a commit to RalfJung/rust that referenced this pull request Jun 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.