@@ -1373,7 +1373,7 @@ private def resolveLValAux (e : Expr) (eType : Expr) (lval : LVal) : TermElabM L
13731373 throwError m!"Invalid projection: Index `{idx}` is invalid for this structure; {bounds}"
13741374 ++ .note m!"The expression{inlineExpr e}has type{inlineExpr eType}which has only {numFields} {fields}"
13751375 ++ tupleHint
1376- | some structName, LVal.fieldName ref fieldName _ fullRef => withRef ref do
1376+ | some structName, LVal.fieldName ref fieldName _ _ => withRef ref do
13771377 let env ← getEnv
13781378 if isStructure env structName then
13791379 if let some baseStructName := findField? env structName (Name.mkSimple fieldName) then
@@ -1389,12 +1389,12 @@ private def resolveLValAux (e : Expr) (eType : Expr) (lval : LVal) : TermElabM L
13891389 -- Then search the environment
13901390 if let some (baseStructName, fullName) ← findMethod? structName (.mkSimple fieldName) then
13911391 return LValResolution.const baseStructName structName fullName
1392- throwInvalidFieldAt fullRef fieldName fullName
1393- | none, LVal.fieldName _ _ (some suffix) fullRef =>
1392+ throwInvalidFieldAt ref fieldName fullName
1393+ | none, LVal.fieldName ref _ (some suffix) _fullRef =>
13941394 -- This may be a function constant whose implicit arguments have already been filled in:
13951395 let c := e.getAppFn
13961396 if c.isConst then
1397- throwUnknownConstantAt fullRef (c.constName! ++ suffix)
1397+ throwUnknownConstantAt ref (c.constName! ++ suffix)
13981398 else
13991399 throwInvalidFieldNotation e eType
14001400 | _, _ => throwInvalidFieldNotation e eType
0 commit comments