@@ -192,25 +192,7 @@ private module LocalNameBindingInput implements LocalNameBindingInputSig<Locatio
192192 pattern = stmt .getPattern ( )
193193 )
194194 or
195- exists ( TuplePattern pat |
196- bindingContext ( pat , scope ) and
197- pattern = pat .getElement ( _) .getPattern ( )
198- )
199- or
200- exists ( ConstructorPattern pat |
201- bindingContext ( pat , scope ) and
202- pattern = pat .getElement ( _) .getPattern ( )
203- )
204- or
205- exists ( OrPattern pat |
206- bindingContext ( pat , scope ) and
207- pattern = pat .getPattern ( _)
208- )
209- or
210- exists ( ConditionalPattern pat |
211- bindingContext ( pat , scope ) and
212- pattern = pat .getPattern ( )
213- )
195+ bindingContext ( pattern .( Pattern ) .getEnclosingPattern ( ) , scope )
214196 or
215197 exists ( PatternGuardExpr expr |
216198 pattern = expr .getPattern ( ) and
@@ -230,11 +212,8 @@ private module LocalNameBindingInput implements LocalNameBindingInputSig<Locatio
230212 private OrPattern getEnclosingOrPattern ( Pattern p ) {
231213 p = result .getPattern ( _)
232214 or
233- exists ( Pattern parent | result = getEnclosingOrPattern ( parent ) |
234- p = parent .( ConstructorPattern ) .getElement ( _) .getPattern ( )
235- or
236- p = parent .( TuplePattern ) .getElement ( _) .getPattern ( )
237- )
215+ not p instanceof OrPattern and
216+ result = getEnclosingOrPattern ( p .getEnclosingPattern ( ) )
238217 }
239218
240219 predicate declInScope ( AstNode definingNode , string name , AstNode scope ) {
0 commit comments