Skip to content
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

Impose implicit search limit #13886

Merged
merged 7 commits into from Nov 9, 2021
Merged

Impose implicit search limit #13886

merged 7 commits into from Nov 9, 2021

Commits on Nov 5, 2021

  1. Impose implicit search limit

    Impose a configurable limit on the total number of nodes constructed during an implicit search.
    
    Fixes scala#13838
    odersky committed Nov 5, 2021
    Configuration menu
    Copy the full SHA
    34ee767 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    31c1991 View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2021

  1. Give more information when "search too large" is hit

     - show what the root query was
     - under -explain, show the trace until the overflow occurred.
    odersky committed Nov 6, 2021
    Configuration menu
    Copy the full SHA
    b59afe8 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2021

  1. Reduce limit for implicit search too large

    Half the limit so that we fail in a bit less than a minute instead of more than 5 minutes.
    odersky committed Nov 9, 2021
    Configuration menu
    Copy the full SHA
    807743a View commit details
    Browse the repository at this point in the history
  2. Refine checking for underspecified implicit queries

     - Use the wildcard approximation instead of the original type
       since that one determined what is eligible, and the goal
       is to refuse the search if everything is eligible.
     - Also refuse underspecified implicit parameters, not just
       conversions.
     - Treat wildcard types as underspecified.
    
    Two tests had to be reclassified. But the original tests were not meant to compile
    anyway. They were bout misleading error messages (no longer the case) and crashers.
    odersky committed Nov 9, 2021
    Configuration menu
    Copy the full SHA
    db5956b View commit details
    Browse the repository at this point in the history
  3. Fix neg test

    odersky committed Nov 9, 2021
    Configuration menu
    Copy the full SHA
    4fb5b17 View commit details
    Browse the repository at this point in the history
  4. Revive original test

    Make another test to exercise the original large search behavior
    odersky committed Nov 9, 2021
    Configuration menu
    Copy the full SHA
    739dec3 View commit details
    Browse the repository at this point in the history