From 3694b20e9afa56ced70b413e7a2a7c02ed44cfde Mon Sep 17 00:00:00 2001 From: Kevin Ransom Date: Sun, 19 Feb 2023 16:23:51 -0800 Subject: [PATCH] Revert "Include end in nested module range. (#14751)" This reverts commit 4247eb9c828c40b50c3e2e4facf7a8089b6bea99. --- src/Compiler/pars.fsy | 26 ++++++---------- .../NestedModuleWithBeginEndAndDecls.fs | 7 ----- .../NestedModuleWithBeginEndAndDecls.fs.bsl | 30 ------------------- .../NestedModule/RangeOfBeginEnd.fs | 5 ---- .../NestedModule/RangeOfBeginEnd.fs.bsl | 16 ---------- 5 files changed, 9 insertions(+), 75 deletions(-) delete mode 100644 tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs delete mode 100644 tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl delete mode 100644 tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs delete mode 100644 tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs.bsl diff --git a/src/Compiler/pars.fsy b/src/Compiler/pars.fsy index 819b61d67f4a..7e515b0ac666 100644 --- a/src/Compiler/pars.fsy +++ b/src/Compiler/pars.fsy @@ -1273,17 +1273,12 @@ moduleDefn: | Some vis -> raiseParseErrorAt (rhs parseState 1) (FSComp.SR.parsIgnoreAttributesOnModuleAbbreviationAlwaysPrivate(vis.ToString())) | None -> () [ SynModuleDecl.ModuleAbbrev(List.head path, eqn, (rhs parseState 3, eqn) ||> unionRangeWithListBy (fun id -> id.idRange) ) ] - | Choice2Of2 (def, mEndOpt) -> + | Choice2Of2 def -> if not (isSingleton path) then raiseParseErrorAt (rhs parseState 3) (FSComp.SR.parsModuleAbbreviationMustBeSimpleName()) let info = SynComponentInfo(attribs @ attribs2, None, [], path, xmlDoc, false, vis, rhs parseState 3) let mEquals = rhs parseState 4 let trivia: SynModuleDeclNestedModuleTrivia = { ModuleKeyword = Some mModule; EqualsRange = Some mEquals } - let m = - (rhs2 parseState 1 4, def) - ||> unionRangeWithListBy (fun (d: SynModuleDecl) -> d.Range) - |> unionRangeWithXmlDoc xmlDoc - let m = match mEndOpt with | None -> m | Some mEnd -> unionRanges m mEnd - [ SynModuleDecl.NestedModule(info, isRec, def, false, m, trivia) ] } + [ SynModuleDecl.NestedModule(info, isRec, def, false, ((rhs2 parseState 1 4, def) ||> unionRangeWithListBy (fun d -> d.Range) |> unionRangeWithXmlDoc xmlDoc), trivia)] } /* unattached custom attributes */ | attributes recover @@ -1344,18 +1339,17 @@ namedModuleDefnBlock: match $2 with | [ SynModuleDecl.Expr (LongOrSingleIdent(false, SynLongIdent(path, _, _), None, _), _) ] -> Choice1Of2 path - | _ -> - Choice2Of2 ($2, None) + | _ -> + Choice2Of2 $2 } | OBLOCKBEGIN moduleDefnsOrExpr recover { // The lex filter ensures we can only get a mismatch in OBLOCKBEGIN/OBLOCKEND tokens if there was some other kind of error, hence we don't need to report this error // reportParseErrorAt (rhs parseState 1) (FSComp.SR.parsUnClosedBlockInHashLight()) - Choice2Of2 ($2, None) } + Choice2Of2 $2 } | OBLOCKBEGIN error oblockend - { let mEnd = rhs parseState 3 - Choice2Of2 ([], Some mEnd) } + { Choice2Of2 [] } | wrappedNamedModuleDefn { Choice2Of2 $1 } @@ -1367,16 +1361,14 @@ namedModuleDefnBlock: /* A module definition that includes a 'begin'...'end' (rarely used in F# with #light syntax) */ wrappedNamedModuleDefn: | structOrBegin moduleDefnsOrExprPossiblyEmpty END - { let mEnd = rhs parseState 3 - $2, Some mEnd } + { $2 } | structOrBegin moduleDefnsOrExprPossiblyEmpty recover { reportParseErrorAt (rhs parseState 1) (FSComp.SR.parsUnmatchedBeginOrStruct()) - $2, None } + $2 } | structOrBegin error END - { let mEnd = rhs parseState 3 - [], Some mEnd } + { [] } tyconDefnAugmentation: diff --git a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs b/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs deleted file mode 100644 index dea32e54043f..000000000000 --- a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs +++ /dev/null @@ -1,7 +0,0 @@ -namespace X - -module Y = - begin - let a = 0 - end - diff --git a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl b/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl deleted file mode 100644 index 2b6d22016244..000000000000 --- a/tests/service/data/SyntaxTree/NestedModule/NestedModuleWithBeginEndAndDecls.fs.bsl +++ /dev/null @@ -1,30 +0,0 @@ -ImplFile - (ParsedImplFileInput - ("/root/NestedModule/NestedModuleWithBeginEndAndDecls.fs", false, - QualifiedNameOfFile NestedModuleWithBeginEndAndDecls, [], [], - [SynModuleOrNamespace - ([X], false, DeclaredNamespace, - [NestedModule - (SynComponentInfo - ([], None, [], [Y], - PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), false, - None, (3,0--3,8)), false, - [Let - (false, - [SynBinding - (None, Normal, false, false, [], - PreXmlDoc ((5,8), FSharp.Compiler.Xml.XmlDocCollector), - SynValData - (None, SynValInfo ([], SynArgInfo ([], false, None)), - None), - Named (SynIdent (a, None), false, None, (5,12--5,13)), - None, Const (Int32 0, (5,16--5,17)), (5,12--5,13), - Yes (5,8--5,17), { LeadingKeyword = Let (5,8--5,11) - InlineKeyword = None - EqualsRange = Some (5,14--5,15) })], - (5,8--5,17))], false, (3,0--6,7), - { ModuleKeyword = Some (3,0--3,6) - EqualsRange = Some (3,9--3,10) })], PreXmlDocEmpty, [], None, - (1,0--6,7), { LeadingKeyword = Namespace (1,0--1,9) })], (true, false), - { ConditionalDirectives = [] - CodeComments = [] }, set [])) diff --git a/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs b/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs deleted file mode 100644 index ea56b5fbb02a..000000000000 --- a/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs +++ /dev/null @@ -1,5 +0,0 @@ -namespace X - -module Y = - begin end - diff --git a/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs.bsl b/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs.bsl deleted file mode 100644 index aaa37f539714..000000000000 --- a/tests/service/data/SyntaxTree/NestedModule/RangeOfBeginEnd.fs.bsl +++ /dev/null @@ -1,16 +0,0 @@ -ImplFile - (ParsedImplFileInput - ("/root/NestedModule/RangeOfBeginEnd.fs", false, - QualifiedNameOfFile RangeOfBeginEnd, [], [], - [SynModuleOrNamespace - ([X], false, DeclaredNamespace, - [NestedModule - (SynComponentInfo - ([], None, [], [Y], - PreXmlDoc ((3,0), FSharp.Compiler.Xml.XmlDocCollector), false, - None, (3,0--3,8)), false, [], false, (3,0--4,13), - { ModuleKeyword = Some (3,0--3,6) - EqualsRange = Some (3,9--3,10) })], PreXmlDocEmpty, [], None, - (1,0--4,13), { LeadingKeyword = Namespace (1,0--1,9) })], - (true, false), { ConditionalDirectives = [] - CodeComments = [] }, set []))