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

Fix ctx implicits under case unapplySeq #21748

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Commits on Oct 10, 2024

  1. Fix ctx implicits under case unapplySeq

    A case class with a varargs has a unapplySeq extractor instead of
    unapply.  When we type an unapply, in typedUnapply, we first look for
    unapply methods before unapplySeq methods.  But when searching for
    unapply, if a class method isn't found, then an extension method is
    looked for, which causes context implicits to be cached.  The bindings
    from a pattern (such as from an unapply or unapplySeq extractor) are
    added to the context in indexPattern.  But Context's `implicitCache`
    doesn't account for the scope changing.
    
    I opted for giving the body its own scope context, rather than making
    indexPattern reset the context implicits cache.
    dwijnand committed Oct 10, 2024
    Configuration menu
    Copy the full SHA
    69f5f73 View commit details
    Browse the repository at this point in the history