Skip to content

Commit 293f3f1

Browse files
T-GroCopilot
andcommitted
Simplify TcNameOfExpr and TcLongIdentThen to pass result tuples directly
Revert to pre-#19505 patterns: use '_ as res' in TcNameOfExpr and pass-through binding in TcLongIdentThen instead of destructuring and reconstructing the 5-tuple. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent ee8af42 commit 293f3f1

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

src/Compiler/Checking/Expressions/CheckExpressions.fs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8666,7 +8666,7 @@ and TcNameOfExpr (cenv: cenv) env tpenv (synArg: SynExpr) =
86668666
let nameResolutionResult = ResolveLongIdentAsExprAndComputeRange cenv.tcSink cenv.nameResolver (rangeOfLid longId) ad env.eNameResEnv typeNameResInfo longId None
86678667
let resolvesAsExpr =
86688668
match nameResolutionResult with
8669-
| Result (tinstEnclosing, item, mItem, rest, afterRes)
8669+
| Result (_, item, _, _, _ as res)
86708670
when
86718671
(match item with
86728672
| Item.DelegateCtor _
@@ -8677,7 +8677,7 @@ and TcNameOfExpr (cenv: cenv) env tpenv (synArg: SynExpr) =
86778677
| _ -> true
86788678
| _ -> true) ->
86798679
let overallTy = match overallTyOpt with None -> MustEqual (NewInferenceType g) | Some t -> t
8680-
let _, _ = TcItemThen cenv overallTy env tpenv (tinstEnclosing, item, mItem, rest, afterRes) None delayed
8680+
let _, _ = TcItemThen cenv overallTy env tpenv res None delayed
86818681
true
86828682
| _ ->
86838683
false
@@ -8904,11 +8904,11 @@ and TcLongIdentThen (cenv: cenv) (overallTy: OverallTy) env tpenv (SynLongIdent(
89048904

89058905
let ad = env.eAccessRights
89068906
let typeNameResInfo = GetLongIdentTypeNameInfo delayed
8907-
let (tinstEnclosing, item, mItem, rest, afterResolution) =
8907+
let nameResolutionResult =
89088908
let maybeAppliedArgExpr = DelayedItem.maybeAppliedArgForPreferExtensionOverProperty delayed
89098909
ResolveLongIdentAsExprAndComputeRange cenv.tcSink cenv.nameResolver (rangeOfLid longId) ad env.eNameResEnv typeNameResInfo longId maybeAppliedArgExpr
89108910
|> ForceRaise
8911-
TcItemThen cenv overallTy env tpenv (tinstEnclosing, item, mItem, rest, afterResolution) None delayed
8911+
TcItemThen cenv overallTy env tpenv nameResolutionResult None delayed
89128912

89138913
//-------------------------------------------------------------------------
89148914
// Typecheck "item+projections"

0 commit comments

Comments
 (0)