From be41b8b20ba77d36354f15bae980579c75781f87 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Fri, 2 Jul 2021 02:07:47 +0800 Subject: [PATCH 01/24] Undentation frenzy --- src/fsharp/FSComp.txt | 1 + src/fsharp/LanguageFeatures.fs | 3 + src/fsharp/LanguageFeatures.fsi | 1 + src/fsharp/LexFilter.fs | 383 +- src/fsharp/xlf/FSComp.txt.cs.xlf | 5 + src/fsharp/xlf/FSComp.txt.de.xlf | 5 + src/fsharp/xlf/FSComp.txt.es.xlf | 5 + src/fsharp/xlf/FSComp.txt.fr.xlf | 5 + src/fsharp/xlf/FSComp.txt.it.xlf | 5 + src/fsharp/xlf/FSComp.txt.ja.xlf | 5 + src/fsharp/xlf/FSComp.txt.ko.xlf | 5 + src/fsharp/xlf/FSComp.txt.pl.xlf | 5 + src/fsharp/xlf/FSComp.txt.pt-BR.xlf | 5 + src/fsharp/xlf/FSComp.txt.ru.xlf | 5 + src/fsharp/xlf/FSComp.txt.tr.xlf | 5 + src/fsharp/xlf/FSComp.txt.zh-Hans.xlf | 5 + src/fsharp/xlf/FSComp.txt.zh-Hant.xlf | 5 + .../Basic/OffsideExceptions.fs | 4446 ++++++++++++++++- .../OffsideExceptions/RelaxWhitespace2.fs | 3707 ++++++++++++++ .../OffsideExceptions/RelaxWhitespace2.fs.bsl | 48 + tests/FSharp.Test.Utilities/Compiler.fs | 19 +- .../Xunit/Attributes/DirectoryAttribute.fs | 6 +- 22 files changed, 8518 insertions(+), 161 deletions(-) create mode 100644 tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs create mode 100644 tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl diff --git a/src/fsharp/FSComp.txt b/src/fsharp/FSComp.txt index 33b86c208fc..bd867083f67 100644 --- a/src/fsharp/FSComp.txt +++ b/src/fsharp/FSComp.txt @@ -1528,6 +1528,7 @@ featureDefaultInterfaceMemberConsumption,"default interface member consumption" featureStringInterpolation,"string interpolation" featureWitnessPassing,"witness passing for trait constraints in F# quotations" featureStructActivePattern,"struct representation for active patterns" +featureRelaxWhitespace2,"whitespace relaxation v2" 3353,fsiInvalidDirective,"Invalid directive '#%s %s'" 3360,typrelInterfaceWithConcreteAndVariable,"'%s' cannot implement the interface '%s' with the two instantiations '%s' and '%s' because they may unify." 3361,typrelInterfaceWithConcreteAndVariableObjectExpression,"You cannot implement the interface '%s' with the two instantiations '%s' and '%s' because they may unify." diff --git a/src/fsharp/LanguageFeatures.fs b/src/fsharp/LanguageFeatures.fs index 2e7fd7f4af9..1de3693a77a 100644 --- a/src/fsharp/LanguageFeatures.fs +++ b/src/fsharp/LanguageFeatures.fs @@ -21,6 +21,7 @@ type LanguageFeature = | SingleUnderscorePattern | WildCardInForLoop | RelaxWhitespace + | RelaxWhitespace2 | NameOf | ImplicitYield | OpenTypeDeclaration @@ -79,6 +80,7 @@ type LanguageVersion (specifiedVersionAsString) = LanguageFeature.StringInterpolation, languageVersion50 // F# preview + LanguageFeature.RelaxWhitespace2, previewVersion LanguageFeature.OverloadsForCustomOperations, previewVersion LanguageFeature.ExpandedMeasurables, previewVersion LanguageFeature.FromEndSlicing, previewVersion @@ -145,6 +147,7 @@ type LanguageVersion (specifiedVersionAsString) = | LanguageFeature.SingleUnderscorePattern -> FSComp.SR.featureSingleUnderscorePattern() | LanguageFeature.WildCardInForLoop -> FSComp.SR.featureWildCardInForLoop() | LanguageFeature.RelaxWhitespace -> FSComp.SR.featureRelaxWhitespace() + | LanguageFeature.RelaxWhitespace2 -> FSComp.SR.featureRelaxWhitespace2() | LanguageFeature.NameOf -> FSComp.SR.featureNameOf() | LanguageFeature.ImplicitYield -> FSComp.SR.featureImplicitYield() | LanguageFeature.OpenTypeDeclaration -> FSComp.SR.featureOpenTypeDeclaration() diff --git a/src/fsharp/LanguageFeatures.fsi b/src/fsharp/LanguageFeatures.fsi index e7e0a9c12a9..ebb8fdb25f2 100644 --- a/src/fsharp/LanguageFeatures.fsi +++ b/src/fsharp/LanguageFeatures.fsi @@ -9,6 +9,7 @@ type LanguageFeature = | SingleUnderscorePattern | WildCardInForLoop | RelaxWhitespace + | RelaxWhitespace2 | NameOf | ImplicitYield | OpenTypeDeclaration diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index 2e84a4279f3..cd33da33972 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -38,7 +38,8 @@ type Context = | CtxtMatch of Position | CtxtFor of Position | CtxtWhile of Position - | CtxtWhen of Position + | CtxtWhen of Position + /// A CtxtSeqBlock is guaranteed to be after this context. | CtxtVanilla of Position * bool // boolean indicates if vanilla started with 'x = ...' or 'x.y = ...' | CtxtThen of Position | CtxtElse of Position @@ -179,6 +180,18 @@ let infixTokenLength token = | COLON_QMARK_GREATER -> 3 | _ -> assert false; 1 +/// Matches against a left-parenthesis-like token that is valid in expressions. +let (|TokenLExprParen|_|) = + function + | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true + -> Some TokenLExprParen + | _ -> None +/// Matches against a right-parenthesis-like token that is valid in expressions. +let (|TokenRExprParen|_|) = + function + | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true + -> Some TokenRExprParen + | _ -> None /// Determine the tokens that may align with the 'if' of an 'if/then/elif/else' without closing /// the construct @@ -189,17 +202,31 @@ let rec isIfBlockContinuator token = // then ... // elif ... // else ... - | THEN | ELSE | ELIF -> true + | THEN | ELSE | ELIF -> true // Likewise // if ... then ( // ) elif begin // end else ... - | END | RPAREN -> true + | END | RPAREN -> true // The following arise during reprocessing of the inserted tokens, e.g. when we hit a DONE | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true | ODUMMY token -> isIfBlockContinuator token | _ -> false +/// Given LanguageFeature.RelaxWhitespace2, +/// Determine the token that may align with the 'match' of a 'match/with' without closing +/// the construct +let rec isMatchBlockContinuator token = + match token with + // These tokens may align with the "match" without closing the construct, e.g. + // match ... + // with ... + | WITH -> true + // The following arise during reprocessing of the inserted tokens when we hit a DONE + | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true + | ODUMMY token -> isMatchBlockContinuator token + | _ -> false + /// Determine the token that may align with the 'try' of a 'try/with' or 'try/finally' without closing /// the construct let rec isTryBlockContinuator token = @@ -207,9 +234,9 @@ let rec isTryBlockContinuator token = // These tokens may align with the "try" without closing the construct, e.g. // try ... // with ... - | FINALLY | WITH -> true + | FINALLY | WITH -> true // The following arise during reprocessing of the inserted tokens when we hit a DONE - | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true + | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true | ODUMMY token -> isTryBlockContinuator token | _ -> false @@ -392,9 +419,9 @@ let parenTokensBalance t1 t2 = | (INTERP_STRING_PART _, INTERP_STRING_PART _) | (INTERP_STRING_PART _, INTERP_STRING_END _) | (LBRACK_BAR, BAR_RBRACK) - | (LESS true, GREATER true) - | (BEGIN, END) -> true - | (LQUOTE q1, RQUOTE q2) when q1 = q2 -> true + | (LESS true, GREATER true) + | (BEGIN, END) -> true + | (LQUOTE q1, RQUOTE q2) when q1 = q2 -> true | _ -> false /// Used to save some aspects of the lexbuffer state @@ -677,6 +704,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // Undentation rules //-------------------------------------------------------------------------- + let (|RelaxWhitespace2|_|) x = if lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 then Some x else None let pushCtxt tokenTup (newCtxt: Context) = let rec undentationLimit strict stack = match newCtxt, stack with @@ -684,93 +712,106 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // ignore Vanilla because a SeqBlock is always coming | _, (CtxtVanilla _ :: rest) -> undentationLimit strict rest - - | _, (CtxtSeqBlock _ :: rest) when not strict -> undentationLimit strict rest - | _, (CtxtParen _ :: rest) when not strict -> undentationLimit strict rest + | (_, (CtxtSeqBlock _ :: rest) | _, (CtxtParen _ :: rest)) when not strict + -> undentationLimit strict rest // 'begin match' limited by minimum of two // '(match' limited by minimum of two - | _, (((CtxtMatch _) as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _rest) - -> if ctxt1.StartCol <= ctxt2.StartCol - then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) - else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) - - // 'let ... = function' limited by 'let', precisely - // This covers the common form - // - // let f x = function - // | Case1 -> ... - // | Case2 -> ... - | (CtxtMatchClauses _), (CtxtFunction _ :: CtxtSeqBlock _ :: (CtxtLetDecl _ as limitCtxt) :: _rest) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - - // Otherwise 'function ...' places no limit until we hit a CtxtLetDecl etc... (Recursive) - | (CtxtMatchClauses _), (CtxtFunction _ :: rest) - -> undentationLimit false rest + | _, ((CtxtMatch _ as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _rest) + -> if ctxt1.StartCol <= ctxt2.StartCol + then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) + else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) - // 'try ... with' limited by 'try' - | _, (CtxtMatchClauses _ :: (CtxtTry _ as limitCtxt) :: _rest) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - - // 'fun ->' places no limit until we hit a CtxtLetDecl etc... (Recursive) - | _, (CtxtFun _ :: rest) - -> undentationLimit false rest - - // 'f ...{' places no limit until we hit a CtxtLetDecl etc... - // 'f ...[' places no limit until we hit a CtxtLetDecl etc... - // 'f ...[|' places no limit until we hit a CtxtLetDecl etc... - | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest) - | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) - | _, (CtxtSeqBlock _ :: CtxtParen((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) - -> undentationLimit false rest + // Beginning indentation by zero or more spaces -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) // MAJOR PERMITTED UNDENTATION This is allowing: - // if x then y else - // let x = 3 + 4 - // x + x + // if x then y else + // let x = 3 + 4 + // x + x // This is a serious thing to allow, but is required since there is no "return" in this language. // Without it there is no way of escaping special cases in large bits of code without indenting the main case. - | CtxtSeqBlock _, (CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _rest) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + | CtxtSeqBlock _, (CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _rest) // Permitted inner-construct precise block alignment: - // interface ... - // with ... - // end - // - // type ... - // with ... - // end + // interface ... + // with ... + // end + // + // type ... + // with ... + // end | CtxtWithAsAugment _, ((CtxtInterfaceHead _ | CtxtMemberHead _ | CtxtException _ | CtxtTypeDefns _) as limitCtxt :: _rest) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + // Permitted inner-construct (e.g. "then" block and "else" block in overall + // "if-then-else" block ) block alignment: + // if ... + // then expr + // elif expr + // else expr + | (CtxtIf _ | CtxtElse _ | CtxtThen _), (CtxtIf _ as limitCtxt) :: _rest + + // Permitted inner-construct precise block alignment: + // while ... + // do expr + // done + | (CtxtDo _), ((CtxtFor _ | CtxtWhile _) as limitCtxt) :: _rest + + // 'try ... with' limited by 'try' + // Permitted undentation: + // try + // ... + // with + // | ... + // When RelaxWhitespace2 is available: + // match + // ... + // with + // | ... + | _, (CtxtMatchClauses _ :: (CtxtTry _ | RelaxWhitespace2 (CtxtMatch _) as limitCtxt) :: _rest) + + // 'let ... = function' limited by 'let', precisely + // This covers the common form + // let f x = function + // | Case1 -> ... + // | Case2 -> ... + | CtxtMatchClauses _, (CtxtFunction _ :: CtxtSeqBlock _ :: (CtxtLetDecl _ as limitCtxt) :: _rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + // Beginning recursive cases -> undentationLimit false rest + + // Otherwise 'function ...' places no limit until we hit a CtxtLetDecl 'let x = ... function' etc... (Recursive) + | CtxtMatchClauses _, (CtxtFunction _ :: rest) + + // 'fun ->' places no limit until we hit a CtxtLetDecl 'let x = ... fun ->' etc... (Recursive) + | _, (CtxtFun _ :: rest) // Permit undentation via parentheses (or begin/end) following a 'then', 'else' or 'do': - // if nr > 0 then ( - // nr <- nr - 1 - // acc <- d - // i <- i - 1 - // ) else ( - // i <- -1 - // ) - - // PERMITTED UNDENTATION: Inner construct (then, with, else, do) that dangle, places no limit until we hit the corresponding leading construct CtxtIf, CtxtFor, CtxtWhile, CtxtVanilla etc... *) - // e.g. if ... then ... - // expr - // else - // expr - // rather than forcing - // if ... - // then expr - // else expr - // Also ...... with + // if nr > 0 then ( + // nr <- nr - 1 + // acc <- d + // i <- i - 1 + // ) else ( + // i <- -1 + // ) + + // PERMITTED UNDENTATION: Inner construct (then, with, else, do) that dangle, places no limit + // until we hit the corresponding leading construct CtxtIf, CtxtFor, CtxtWhile, CtxtVanilla etc... + // e.g. + // if ... then ... + // expr + // else + // expr + // rather than forcing + // if ... + // then expr + // else expr + // Also ...... with // ... <-- this is before the "with" // end - | _, ((CtxtWithAsAugment _ | CtxtThen _ | CtxtElse _ | CtxtDo _ ) :: rest) - -> undentationLimit false rest + | _, ((CtxtWithAsAugment _ | CtxtThen _ | CtxtElse _ | CtxtDo _) :: rest) - - // '... (function ->' places no limit until we hit a CtxtLetDecl etc.... (Recursive) + // '... (function ->' places no limit until we hit a CtxtLetDecl 'let f = ...(function ->' etc. (Recursive) // // e.g. // let fffffff() = function @@ -785,74 +826,103 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 0 // | 2 -> ... <---- not allowed | _, (CtxtFunction _ :: rest) - -> undentationLimit false rest - - // 'module ... : sig' limited by 'module' - // 'module ... : struct' limited by 'module' - // 'module ... : begin' limited by 'module' - // 'if ... then (' limited by 'if' - // 'if ... then {' limited by 'if' - // 'if ... then [' limited by 'if' - // 'if ... then [|' limited by 'if' - // 'if ... else (' limited by 'if' - // 'if ... else {' limited by 'if' - // 'if ... else [' limited by 'if' - // 'if ... else [|' limited by 'if' + + // 'let ... = f ... begin' limited by 'let' (given RelaxWhitespace2) + // 'let (' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let [' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let {' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let [|' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let x : {|' limited by 'let' (given RelaxWhitespace2) + // 'let x : Foo<' limited by 'let' (given RelaxWhitespace2) + // 'let (ActivePattern <@' limited by 'let' (given RelaxWhitespace2) + // 'let (ActivePattern <@@' limited by 'let' (given RelaxWhitespace2) + // Same for 'match', 'if', 'then', 'else', 'for', 'while', 'member', 'when', and everything: No need to specify rules like the 'then' and 'else's below over and over again + | _, RelaxWhitespace2 (CtxtParen (TokenLExprParen, _) :: rest) + // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. + // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. + | _, RelaxWhitespace2 (CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest) + + // 'f ... {' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... {' (given no RelaxWhitespace2, added in F# 2.0, see [RFC FS-1054] less strict indentation on common DSL pattern) + // (as part of FS-1054, the case (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest)) was added, rendering some cases below useless) + // 'f ... [' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... [' (given no RelaxWhitespace2, added in F# 4.5 as part of [RFC FS-1054] less strict indentation on common DSL pattern) + // 'f ... [|' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... [|' (given no RelaxWhitespace2, added in F# 4.5 as part of [RFC FS-1054] less strict indentation on common DSL pattern) + // 'f ... (' is handled by RelaxWhitespace2 above + // 'f ... {|' is handled by RelaxWhitespace2 above + // 'f ... begin' is handled by RelaxWhitespace2 above + // 'f ... Foo<' is handled by RelaxWhitespace2 above + // 'f ... <@' is handled by RelaxWhitespace2 above + // 'f ... <@@' is handled by RelaxWhitespace2 above + | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest) // This case was added in F# 4.5 with FS-1054 + | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) // This case was added in F# 2.0, extended with FS-1054 + | _, (CtxtSeqBlock _ :: CtxtParen((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) // This case was added in F# 2.0, extended with FS-1054 + -> undentationLimit false rest + + // Beginning indentation by at least one space -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // 'module ... : sig' limited by 'module' + // 'module ... : struct' limited by 'module' + // 'module ... : begin' limited by 'module' (given no RelaxWhitespace2) + // 'if ... then begin' limited by 'if' (given no RelaxWhitespace2) + // 'if ... then (' limited by 'if' (given no RelaxWhitespace2) + // 'if ... then [' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... then {' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... then {|' limited by 'if' (given no RelaxWhitespace2) + // 'if ... then [|' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... else begin' limited by 'if' (given no RelaxWhitespace2) + // 'if ... else (' limited by 'if' (given no RelaxWhitespace2) + // 'if ... else [' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... else {' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... else {|' limited by 'if' (given no RelaxWhitespace2) + // 'if ... else [|' limited by 'if' (never reached after F# 4.5 with FS-1054) + // 'if ... else [<' limited by 'if' (always) | _, (CtxtParen ((SIG | STRUCT | BEGIN), _) :: CtxtSeqBlock _ :: (CtxtModuleBody (_, false) as limitCtxt) :: _) | _, (CtxtParen ((BEGIN | LPAREN | LBRACK | LBRACE _ | LBRACE_BAR | LBRACK_BAR), _) :: CtxtSeqBlock _ :: CtxtThen _ :: (CtxtIf _ as limitCtxt) :: _) | _, (CtxtParen ((BEGIN | LPAREN | LBRACK | LBRACE _ | LBRACE_BAR | LBRACK_BAR | LBRACK_LESS), _) :: CtxtSeqBlock _ :: CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _) - // 'f ... (' in seqblock limited by 'f' - // 'f ... {' in seqblock limited by 'f' NOTE: this is covered by the more generous case above - // 'f ... [' in seqblock limited by 'f' - // 'f ... [|' in seqblock limited by 'f' - // 'f ... Foo<' in seqblock limited by 'f' + // 'f ... x = begin' in seqblock limited by 'f' (given no RelaxWhitespace2) + // 'f ... x = (' in seqblock limited by 'f' (given no RelaxWhitespace2) + // 'f ... x = Foo<' in seqblock limited by 'f' (given no RelaxWhitespace2) + // 'f ... x = [' in seqblock limited by 'f' (never reached after F# 4.5 with FS-1054) + // 'f ... x = [|' in seqblock limited by 'f' (never reached after F# 4.5 with FS-1054) | _, (CtxtParen ((BEGIN | LPAREN | LESS true | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) - - // 'type C = class ... ' limited by 'type' - // 'type C = interface ... ' limited by 'type' - // 'type C = struct ... ' limited by 'type' - | _, (CtxtParen ((CLASS | STRUCT | INTERFACE), _) :: CtxtSeqBlock _ :: (CtxtTypeDefns _ as limitCtxt) :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // 'type C(' limited by 'type' - | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtTypeDefns _ as limitCtxt) :: _ ) - // 'static member C(' limited by 'static', likewise others - | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtMemberHead _ as limitCtxt) :: _ ) - // 'static member P with get() = ' limited by 'static', likewise others - | _, (CtxtWithAsLet _ :: (CtxtMemberHead _ as limitCtxt) :: _ ) - when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // REVIEW: document these + + // REVIEW: document these (given no RelaxWhitespace2) | _, (CtxtSeqBlock _ :: CtxtParen((BEGIN | LPAREN | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) | (CtxtSeqBlock _), (CtxtParen ((BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: ((CtxtTypeDefns _ | CtxtLetDecl _ | CtxtMemberBody _ | CtxtWithAsLet _) as limitCtxt) :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // Permitted inner-construct (e.g. "then" block and "else" block in overall - // "if-then-else" block ) block alignment: - // if ... - // then expr - // elif expr - // else expr - | (CtxtIf _ | CtxtElse _ | CtxtThen _), (CtxtIf _ as limitCtxt) :: _rest - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - - // Permitted inner-construct precise block alignment: - // while ... - // do expr - // done - | (CtxtDo _), ((CtxtFor _ | CtxtWhile _) as limitCtxt) :: _rest - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + // 'type C = class ... ' limited by 'type' + // 'type C = interface ... ' limited by 'type' + // 'type C = struct ... ' limited by 'type' + | _, (CtxtParen ((CLASS | STRUCT | INTERFACE), _) :: CtxtSeqBlock _ :: (CtxtTypeDefns _ as limitCtxt) :: _) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // Beginning indentation by at least one space when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace + // -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // 'type C(x:int, + // y:int' limited by 'type' (given RelaxWhitespace) + // The 'type C( + // x:int' case is handled by the RelaxWhitespace2 rule above + | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtTypeDefns _ as limitCtxt) :: _) + // 'static member C(x:int, + // y:int' limited by 'static', likewise others (given RelaxWhitespace) + // The 'static member C( + // x:int' case is handled by the RelaxWhitespace2 rule above + | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtMemberHead _ as limitCtxt) :: _) + // 'static member P with get() = ' limited by 'static', likewise others (given RelaxWhitespace) + | _, (CtxtWithAsLet _ :: (CtxtMemberHead _ as limitCtxt) :: _) + when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // When it doesn't match a special rule... // These contexts all require indentation by at least one space | _, ((CtxtInterfaceHead _ | CtxtNamespaceHead _ | CtxtModuleHead _ | CtxtException _ | CtxtModuleBody (_, false) | CtxtIf _ | CtxtWithAsLet _ | CtxtLetDecl _ | CtxtMemberHead _ | CtxtMemberBody _) as limitCtxt :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) // These contexts can have their contents exactly aligning | _, ((CtxtParen _ | CtxtFor _ | CtxtWhen _ | CtxtWhile _ | CtxtTypeDefns _ | CtxtMatch _ | CtxtModuleBody (_, true) | CtxtNamespaceBody _ | CtxtTry _ | CtxtMatchClauses _ | CtxtSeqBlock _) as limitCtxt :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) match newCtxt with // Don't bother to check pushes of Vanilla blocks since we've @@ -1230,22 +1300,15 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu match token with | Parser.EOF _ -> true | SEMICOLON_SEMICOLON -> not (tokenBalancesHeadContext token stack) - | END + | TokenRExprParen | ELSE | ELIF | DONE | IN - | RPAREN - | GREATER true - | RBRACE _ - | BAR_RBRACE - | RBRACK - | BAR_RBRACK | WITH | FINALLY | INTERP_STRING_PART _ - | INTERP_STRING_END _ - | RQUOTE _ -> + | INTERP_STRING_END _ -> not (tokenBalancesHeadContext token stack) && // Only close the context if some context is going to match at some point in the stack. // If none match, the token will go through, and error recovery will kick in in the parser and report the extra token, @@ -1274,12 +1337,12 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _ :: CtxtParen((BEGIN|STRUCT), _) :: CtxtSeqBlock(_, _, _) :: _ -> nextOuterMostInterestingContextIsNamespaceOrModule(offsideStack.Tail.Tail) // at the top of the stack there is an implicit module | _ :: [] -> true - // anything else is a non-namespace/module + // aTokenLExprParense is a non-namespace/module | _ -> false while not offsideStack.IsEmpty && (not(nextOuterMostInterestingContextIsNamespaceOrModule offsideStack)) && (match offsideStack.Head with // open-parens of sorts - | CtxtParen((LPAREN|LBRACK|LBRACE _ |LBRACE_BAR|LBRACK_BAR), _) -> true + | CtxtParen(TokenLExprParen, _) -> true // seq blocks | CtxtSeqBlock _ -> true // vanillas @@ -1378,7 +1441,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu hwTokenFetch useBlockRule // Balancing rule. Encountering a ')' or '}' balances with a '(' or '{', even if not offside - | ((END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true | INTERP_STRING_END _ | INTERP_STRING_PART _) as t2), (CtxtParen (t1, _) :: _) + | ((TokenRExprParen | INTERP_STRING_END _ | INTERP_STRING_PART _) as t2), (CtxtParen (t1, _) :: _) when parenTokensBalance t1 t2 -> if debug then dprintf "RPAREN/RBRACE/BAR_RBRACE/RBRACK/BAR_RBRACK/RQUOTE/END at %a terminates CtxtParen()\n" outputPos tokenStartPos popCtxt() @@ -1595,6 +1658,34 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu replaceCtxt tokenTup (CtxtSeqBlock (FirstInSeqBlock, offsidePos, addBlockEnd)) // No change to offside stack: another statement block starts... insertTokenFromPrevPosToCurrentPos OBLOCKSEP + + // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns + // let ( member Foo ( for x in ( while ( + // ... ... ... ... + // ) = ... ) = ... ) do ... ) do ... + // let [ member Foo [ for x in [ while f [ + // ... ... ... ... + // ] = ... ] = ... ] do ... ] do ... + // let { member Foo { for x in { while f { + // ... ... ... ... + // } = ... } = ... } do ... } do ... + // let [| member Foo [| for x in [| while f [| + // ... ... ... ... + // |] = ... |] = ... |] do ... |] do ... + // let x : {| member Foo : {| for x in f {| while f {| + // ... ... ... ... + // |} = ... |} = ... |} do ... |} do ... + // let x : Foo< + // ... + // > = ... // Due to current lexing, this is currently not achievable + // type Foo( + // ... + // ) = ... + // ODUMMY is a context closer token, after its context is closed + | RelaxWhitespace2 (ODUMMY TokenRExprParen, offsideCtxt :: _) when tokenStartCol = offsideCtxt.StartCol -> + // The contents of this branch should be synced with the | ODUMMY(_), _ rule below + pool.Return tokenTup + hwTokenFetch useBlockRule // Offside rule for CtxtLetDecl // let .... = @@ -1691,7 +1782,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu insertToken ODECLEND | _, (CtxtMatch offsidePos :: _) - when isSemiSemi || tokenStartCol <= offsidePos.Column -> + when isSemiSemi || (if lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 && isMatchBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtMatch\n" popCtxt() reprocess() @@ -1925,7 +2016,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // $".... { ... } ... { ....} " pushes a block context at first { // ~~~~~~~~ // ^---------INTERP_STRING_BEGIN_PART - | (BEGIN | LPAREN | SIG | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true | INTERP_STRING_BEGIN_PART _), _ -> + | (TokenLExprParen | SIG | INTERP_STRING_BEGIN_PART _), _ -> if debug then dprintf "LPAREN etc., pushes CtxtParen, pushing CtxtSeqBlock, tokenStartPos = %a\n" outputPos tokenStartPos let pos = match token with | INTERP_STRING_BEGIN_PART _ -> tokenTup.LexbufState.EndPos diff --git a/src/fsharp/xlf/FSComp.txt.cs.xlf b/src/fsharp/xlf/FSComp.txt.cs.xlf index 3e021f74a7c..e987f894189 100644 --- a/src/fsharp/xlf/FSComp.txt.cs.xlf +++ b/src/fsharp/xlf/FSComp.txt.cs.xlf @@ -177,6 +177,11 @@ uvolnění prázdných znaků + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern vzor s jedním podtržítkem diff --git a/src/fsharp/xlf/FSComp.txt.de.xlf b/src/fsharp/xlf/FSComp.txt.de.xlf index 8a093810da2..ac8f00a824d 100644 --- a/src/fsharp/xlf/FSComp.txt.de.xlf +++ b/src/fsharp/xlf/FSComp.txt.de.xlf @@ -177,6 +177,11 @@ Lockerung für Leerraum + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern Muster mit einzelnem Unterstrich diff --git a/src/fsharp/xlf/FSComp.txt.es.xlf b/src/fsharp/xlf/FSComp.txt.es.xlf index 7883347a3b5..124494dd3d6 100644 --- a/src/fsharp/xlf/FSComp.txt.es.xlf +++ b/src/fsharp/xlf/FSComp.txt.es.xlf @@ -177,6 +177,11 @@ relajación de espacio en blanco + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern patrón de subrayado simple diff --git a/src/fsharp/xlf/FSComp.txt.fr.xlf b/src/fsharp/xlf/FSComp.txt.fr.xlf index 89ce2d2d3ac..98043db4425 100644 --- a/src/fsharp/xlf/FSComp.txt.fr.xlf +++ b/src/fsharp/xlf/FSComp.txt.fr.xlf @@ -177,6 +177,11 @@ assouplissement de la mise en retrait avec des espaces blancs + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern modèle de trait de soulignement unique diff --git a/src/fsharp/xlf/FSComp.txt.it.xlf b/src/fsharp/xlf/FSComp.txt.it.xlf index a7a5694e5dc..14020bdaefb 100644 --- a/src/fsharp/xlf/FSComp.txt.it.xlf +++ b/src/fsharp/xlf/FSComp.txt.it.xlf @@ -177,6 +177,11 @@ uso meno restrittivo degli spazi vuoti + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern criterio per carattere di sottolineatura singolo diff --git a/src/fsharp/xlf/FSComp.txt.ja.xlf b/src/fsharp/xlf/FSComp.txt.ja.xlf index ded89f6ee73..712bd8dea1a 100644 --- a/src/fsharp/xlf/FSComp.txt.ja.xlf +++ b/src/fsharp/xlf/FSComp.txt.ja.xlf @@ -177,6 +177,11 @@ 空白の緩和 + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern 単一のアンダースコア パターン diff --git a/src/fsharp/xlf/FSComp.txt.ko.xlf b/src/fsharp/xlf/FSComp.txt.ko.xlf index f7b4c5be466..eb8d6810fd0 100644 --- a/src/fsharp/xlf/FSComp.txt.ko.xlf +++ b/src/fsharp/xlf/FSComp.txt.ko.xlf @@ -177,6 +177,11 @@ 공백 완화 + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern 단일 밑줄 패턴 diff --git a/src/fsharp/xlf/FSComp.txt.pl.xlf b/src/fsharp/xlf/FSComp.txt.pl.xlf index ed66a7e0e44..9916fe554d1 100644 --- a/src/fsharp/xlf/FSComp.txt.pl.xlf +++ b/src/fsharp/xlf/FSComp.txt.pl.xlf @@ -177,6 +177,11 @@ rozluźnianie reguł dotyczących odstępów + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern wzorzec z pojedynczym podkreśleniem diff --git a/src/fsharp/xlf/FSComp.txt.pt-BR.xlf b/src/fsharp/xlf/FSComp.txt.pt-BR.xlf index b5d25fdbef5..ec49093d20d 100644 --- a/src/fsharp/xlf/FSComp.txt.pt-BR.xlf +++ b/src/fsharp/xlf/FSComp.txt.pt-BR.xlf @@ -177,6 +177,11 @@ atenuação de espaço em branco + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern padrão de sublinhado simples diff --git a/src/fsharp/xlf/FSComp.txt.ru.xlf b/src/fsharp/xlf/FSComp.txt.ru.xlf index 7bc5ffe2994..e07391e2bb9 100644 --- a/src/fsharp/xlf/FSComp.txt.ru.xlf +++ b/src/fsharp/xlf/FSComp.txt.ru.xlf @@ -177,6 +177,11 @@ уменьшение строгости для пробелов + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern шаблон с одним подчеркиванием diff --git a/src/fsharp/xlf/FSComp.txt.tr.xlf b/src/fsharp/xlf/FSComp.txt.tr.xlf index 6c6d0998d39..f36bd980f4e 100644 --- a/src/fsharp/xlf/FSComp.txt.tr.xlf +++ b/src/fsharp/xlf/FSComp.txt.tr.xlf @@ -177,6 +177,11 @@ boşluk genişlemesi + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern tek alt çizgi deseni diff --git a/src/fsharp/xlf/FSComp.txt.zh-Hans.xlf b/src/fsharp/xlf/FSComp.txt.zh-Hans.xlf index 783834718ef..7fda32f27f0 100644 --- a/src/fsharp/xlf/FSComp.txt.zh-Hans.xlf +++ b/src/fsharp/xlf/FSComp.txt.zh-Hans.xlf @@ -177,6 +177,11 @@ 空格松弛法 + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern 单下划线模式 diff --git a/src/fsharp/xlf/FSComp.txt.zh-Hant.xlf b/src/fsharp/xlf/FSComp.txt.zh-Hant.xlf index 17051040efa..fe4c9572bbf 100644 --- a/src/fsharp/xlf/FSComp.txt.zh-Hant.xlf +++ b/src/fsharp/xlf/FSComp.txt.zh-Hant.xlf @@ -177,6 +177,11 @@ 空白字元放寬 + + whitespace relaxation v2 + whitespace relaxation v2 + + single underscore pattern 單一底線模式 diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 1ca4583fa3b..bd0ad2a9d6f 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -7,14 +7,4456 @@ open FSharp.Test.Utilities.Compiler open FSharp.Test.Utilities.Xunit.Attributes module OffsideExceptions = + type FileAttribute(file) = + inherit DirectoryAttribute(__SOURCE_DIRECTORY__ + "/../../../resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions", Includes=[|file|]) // This test was automatically generated (moved from FSharpQA suite - Conformance/LexicalFiltering/Basic/OffsideExceptions) // - [] - let ``OffsideExceptions - InfixTokenPlusOne.fs - `` compilation = + [] + let InfixTokenPlusOne compilation = compilation |> asFsx |> typecheck |> shouldSucceed |> ignore + [] + let RelaxWhitespace2 compilation = + compilation + |> asFsx + |> withOptions ["--nowarn:25"] // Incomplete pattern matches on this expression. + |> typecheck + |> shouldSucceed + |> ignore + + [] + let RelaxWhitespace2_Warning25 compilation = + compilation + |> asFsx + |> verifyBaseline + |> ignore + + [] + let RelaxWhitespace2_AllowedBefore1() = + Fsx """ +module A + let a = ( + 1 +) + """ + |> withLangVersion50 + |> typecheck + |> shouldSucceed + |> ignore + [] + let RelaxWhitespace2_AllowedBefore2() = + Fsx """ +module A + let a = id {| x = 1; + y = 1 +|} + """ + |> withLangVersion50 + |> typecheck + |> shouldSucceed + |> ignore + [] + let RelaxWhitespace2_AllowedBefore3() = + Fsx """ +module A + let a = {| + y = 1 +|} + """ + |> withLangVersion50 + |> typecheck + |> shouldSucceed + |> ignore + [] + let RelaxWhitespace2_AllowedBefore4() = + Fsx """ +module A + let a = {| y = + 1 +|} + """ + |> withLangVersion50 + |> typecheck + |> shouldSucceed + |> ignore + + [] + let RelaxWhitespace2_Neg1() = + Fsx """ +module A + let a = {| + y = 1 +|} + """ + |> typecheck + |> shouldFail + |> withResult { + Error = Warning 58 + Range = { StartLine = 4 + StartColumn = 5 + EndLine = 4 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3:5). Try indenting this token further or using standard formatting conventions." + } |> ignore + [] + let RelaxWhitespace2_Neg2() = + Fsx """ +module A + let a = id {| + y = 1 +|} + """ + |> typecheck + |> shouldFail + |> withResult { + Error = Warning 58 + Range = { StartLine = 4 + StartColumn = 5 + EndLine = 4 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3:5). Try indenting this token further or using standard formatting conventions." + } |> ignore + [] + let RelaxWhitespace2_Neg3() = + Fsx """ +module A + let a = if {| x = 1; + y = 1 +|} |> isNull then () + """ + |> typecheck + |> shouldFail + |> withResults [ + { Error = Error 10 + Range = { StartLine = 5 + StartColumn = 1 + EndLine = 5 + EndColumn = 3 } + Message = + "Incomplete structured construct at or before this point in expression" }; + { Error = Error 589 + Range = { StartLine = 3 + StartColumn = 13 + EndLine = 3 + EndColumn = 15 } + Message = + "Incomplete conditional. Expected 'if then ' or 'if then else '." }; + { Error = Error 10 + Range = { StartLine = 5 + StartColumn = 31 + EndLine = 5 + EndColumn = 33 } + Message = "Unexpected infix operator in implementation file" } + ] |> ignore + [] + let RelaxWhitespace2_Neg4() = + Fsx """ +module A + let a = {| x = + 1 +|} + """ + |> typecheck + |> shouldFail + |> withResult { + Error = Warning 58 + Range = { StartLine = 4 + StartColumn = 5 + EndLine = 4 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3:5). Try indenting this token further or using standard formatting conventions." + } |> ignore + [] + let RelaxWhitespace2_Neg5() = + Fsx """ +module A + let a = {| x = + 1 +|} + """ + |> withLangVersion50 + |> compile + |> shouldFail + |> withResult { + Error = Warning 58 + Range = { StartLine = 4 + StartColumn = 15 + EndLine = 4 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3:16). Try indenting this token further or using standard formatting conventions." + } |> ignore + + [] + let RelaxWhitespace2_Fs50 compilation = + compilation + |> asFsx + |> withLangVersion50 + |> compile + |> shouldFail + |> (Array.toList >> withResults) [| + { Error = Warning 58 + Range = { StartLine = 14 + StartColumn = 9 + EndLine = 14 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (13:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 18 + StartColumn = 13 + EndLine = 18 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (17:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Error 10 + Range = { StartLine = 37 + StartColumn = 5 + EndLine = 37 + EndColumn = 6 } + Message = + "Incomplete structured construct at or before this point in binding. Expected '=' or other token." }; + { Error = Error 10 + Range = { StartLine = 46 + StartColumn = 5 + EndLine = 46 + EndColumn = 8 } + Message = + "Incomplete structured construct at or before this point in implementation file" }; + { Error = Warning 58 + Range = { StartLine = 48 + StartColumn = 13 + EndLine = 48 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (47:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 95 + StartColumn = 9 + EndLine = 95 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (94:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 98 + StartColumn = 9 + EndLine = 98 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (97:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 102 + StartColumn = 13 + EndLine = 102 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (101:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 106 + StartColumn = 13 + EndLine = 106 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (105:45). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 110 + StartColumn = 13 + EndLine = 110 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (109:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 112 + StartColumn = 13 + EndLine = 112 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (111:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 117 + StartColumn = 9 + EndLine = 117 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (116:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 132 + StartColumn = 13 + EndLine = 132 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (131:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 144 + StartColumn = 9 + EndLine = 144 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (143:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 148 + StartColumn = 13 + EndLine = 148 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (147:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 201 + StartColumn = 9 + EndLine = 201 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (200:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 204 + StartColumn = 9 + EndLine = 204 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (203:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 208 + StartColumn = 13 + EndLine = 208 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (207:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 212 + StartColumn = 13 + EndLine = 212 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (211:39). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 216 + StartColumn = 13 + EndLine = 216 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (215:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 218 + StartColumn = 13 + EndLine = 218 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (217:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 223 + StartColumn = 9 + EndLine = 223 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (222:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 332 + StartColumn = 9 + EndLine = 332 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (331:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 423 + StartColumn = 9 + EndLine = 423 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (422:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 490 + StartColumn = 9 + EndLine = 490 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (489:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 505 + StartColumn = 13 + EndLine = 505 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (504:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 507 + StartColumn = 13 + EndLine = 507 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (506:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 544 + StartColumn = 9 + EndLine = 544 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (543:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 560 + StartColumn = 9 + EndLine = 560 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (559:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 564 + StartColumn = 13 + EndLine = 564 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (563:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 574 + StartColumn = 13 + EndLine = 574 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (573:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 577 + StartColumn = 9 + EndLine = 577 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (576:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 582 + StartColumn = 9 + EndLine = 582 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (581:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 584 + StartColumn = 9 + EndLine = 584 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (583:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 587 + StartColumn = 9 + EndLine = 587 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (586:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 590 + StartColumn = 9 + EndLine = 590 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (589:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 594 + StartColumn = 13 + EndLine = 594 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (593:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 598 + StartColumn = 13 + EndLine = 598 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (597:46). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 602 + StartColumn = 13 + EndLine = 602 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (601:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 604 + StartColumn = 13 + EndLine = 604 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (603:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 609 + StartColumn = 9 + EndLine = 609 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (608:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 647 + StartColumn = 5 + EndLine = 647 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (646:38). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 651 + StartColumn = 9 + EndLine = 651 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (650:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 654 + StartColumn = 9 + EndLine = 654 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (653:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 658 + StartColumn = 13 + EndLine = 658 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (657:36). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 662 + StartColumn = 13 + EndLine = 662 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (661:53). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 666 + StartColumn = 13 + EndLine = 666 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (665:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 668 + StartColumn = 13 + EndLine = 668 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (667:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 671 + StartColumn = 9 + EndLine = 671 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (670:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 673 + StartColumn = 9 + EndLine = 673 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (672:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 676 + StartColumn = 9 + EndLine = 676 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (675:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 678 + StartColumn = 9 + EndLine = 678 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (677:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 681 + StartColumn = 9 + EndLine = 681 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (680:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 684 + StartColumn = 9 + EndLine = 684 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (683:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 688 + StartColumn = 13 + EndLine = 688 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (687:39). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 692 + StartColumn = 13 + EndLine = 692 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (691:56). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 696 + StartColumn = 13 + EndLine = 696 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (695:32). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 698 + StartColumn = 13 + EndLine = 698 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (697:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 703 + StartColumn = 9 + EndLine = 703 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (702:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 742 + StartColumn = 9 + EndLine = 742 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (741:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 745 + StartColumn = 9 + EndLine = 745 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (744:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 749 + StartColumn = 13 + EndLine = 749 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (748:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 753 + StartColumn = 13 + EndLine = 753 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (752:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 757 + StartColumn = 13 + EndLine = 757 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (756:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 759 + StartColumn = 13 + EndLine = 759 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (758:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 764 + StartColumn = 9 + EndLine = 764 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (763:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 769 + StartColumn = 9 + EndLine = 769 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (768:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 802 + StartColumn = 9 + EndLine = 802 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (801:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 805 + StartColumn = 9 + EndLine = 805 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (804:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 809 + StartColumn = 13 + EndLine = 809 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (808:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 813 + StartColumn = 13 + EndLine = 813 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (812:46). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 817 + StartColumn = 13 + EndLine = 817 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (816:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 819 + StartColumn = 13 + EndLine = 819 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (818:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 822 + StartColumn = 9 + EndLine = 822 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (821:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 824 + StartColumn = 9 + EndLine = 824 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (823:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 827 + StartColumn = 9 + EndLine = 827 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (826:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 829 + StartColumn = 9 + EndLine = 829 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (828:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 833 + StartColumn = 9 + EndLine = 833 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (832:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 836 + StartColumn = 9 + EndLine = 836 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (835:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 840 + StartColumn = 13 + EndLine = 840 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (839:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 844 + StartColumn = 13 + EndLine = 844 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (843:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 848 + StartColumn = 13 + EndLine = 848 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (847:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 850 + StartColumn = 13 + EndLine = 850 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (849:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 855 + StartColumn = 9 + EndLine = 855 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (854:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 860 + StartColumn = 9 + EndLine = 860 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (859:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 893 + StartColumn = 9 + EndLine = 893 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (892:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 896 + StartColumn = 9 + EndLine = 896 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (895:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 900 + StartColumn = 13 + EndLine = 900 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (899:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 904 + StartColumn = 13 + EndLine = 904 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (903:49). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 908 + StartColumn = 13 + EndLine = 908 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (907:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 910 + StartColumn = 13 + EndLine = 910 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (909:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 913 + StartColumn = 9 + EndLine = 913 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (912:31). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 915 + StartColumn = 9 + EndLine = 915 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (914:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 918 + StartColumn = 9 + EndLine = 918 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (917:31). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 920 + StartColumn = 9 + EndLine = 920 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (919:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 930 + StartColumn = 9 + EndLine = 930 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (929:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 935 + StartColumn = 9 + EndLine = 935 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (934:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 939 + StartColumn = 13 + EndLine = 939 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (938:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 943 + StartColumn = 13 + EndLine = 943 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (942:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 947 + StartColumn = 13 + EndLine = 947 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (946:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 949 + StartColumn = 13 + EndLine = 949 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (948:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 952 + StartColumn = 9 + EndLine = 952 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (951:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 957 + StartColumn = 9 + EndLine = 957 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (956:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 959 + StartColumn = 9 + EndLine = 959 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (958:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 962 + StartColumn = 9 + EndLine = 962 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (961:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 966 + StartColumn = 13 + EndLine = 966 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (965:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 970 + StartColumn = 13 + EndLine = 970 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (969:48). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 974 + StartColumn = 13 + EndLine = 974 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (973:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 976 + StartColumn = 13 + EndLine = 976 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (975:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 979 + StartColumn = 9 + EndLine = 979 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (978:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 981 + StartColumn = 9 + EndLine = 981 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (980:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 984 + StartColumn = 9 + EndLine = 984 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (983:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 986 + StartColumn = 9 + EndLine = 986 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (985:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 989 + StartColumn = 9 + EndLine = 989 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (988:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 993 + StartColumn = 13 + EndLine = 993 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (992:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 997 + StartColumn = 13 + EndLine = 997 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (996:49). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1001 + StartColumn = 13 + EndLine = 1001 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1000:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1003 + StartColumn = 13 + EndLine = 1003 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1002:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1006 + StartColumn = 9 + EndLine = 1006 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1005:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1008 + StartColumn = 9 + EndLine = 1008 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1007:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1011 + StartColumn = 5 + EndLine = 1011 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1010:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1016 + StartColumn = 5 + EndLine = 1016 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1013:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1017 + StartColumn = 9 + EndLine = 1017 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1016:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1019 + StartColumn = 5 + EndLine = 1019 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1016:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1021 + StartColumn = 13 + EndLine = 1021 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1020:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1023 + StartColumn = 5 + EndLine = 1023 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1019:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1027 + StartColumn = 5 + EndLine = 1027 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1023:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1033 + StartColumn = 5 + EndLine = 1033 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1027:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1038 + StartColumn = 5 + EndLine = 1038 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1033:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1043 + StartColumn = 5 + EndLine = 1043 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1043 + StartColumn = 12 + EndLine = 1043 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1046 + StartColumn = 5 + EndLine = 1046 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1046 + StartColumn = 12 + EndLine = 1046 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1047 + StartColumn = 9 + EndLine = 1047 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1046:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1049 + StartColumn = 5 + EndLine = 1049 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1049 + StartColumn = 12 + EndLine = 1049 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1051 + StartColumn = 13 + EndLine = 1051 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1050:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1053 + StartColumn = 5 + EndLine = 1053 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1053 + StartColumn = 12 + EndLine = 1053 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1057 + StartColumn = 5 + EndLine = 1057 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1057 + StartColumn = 12 + EndLine = 1057 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1063 + StartColumn = 5 + EndLine = 1063 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1063 + StartColumn = 12 + EndLine = 1063 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1064 + StartColumn = 9 + EndLine = 1064 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1063:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1068 + StartColumn = 5 + EndLine = 1068 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1068 + StartColumn = 12 + EndLine = 1068 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1069 + StartColumn = 9 + EndLine = 1069 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1068:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1073 + StartColumn = 5 + EndLine = 1073 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1073 + StartColumn = 21 + EndLine = 1073 + EndColumn = 22 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1076 + StartColumn = 5 + EndLine = 1076 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1076 + StartColumn = 21 + EndLine = 1076 + EndColumn = 22 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1077 + StartColumn = 9 + EndLine = 1077 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1076:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1079 + StartColumn = 5 + EndLine = 1079 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1079 + StartColumn = 21 + EndLine = 1079 + EndColumn = 22 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1081 + StartColumn = 13 + EndLine = 1081 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1080:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1083 + StartColumn = 5 + EndLine = 1083 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1083 + StartColumn = 21 + EndLine = 1083 + EndColumn = 22 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1087 + StartColumn = 5 + EndLine = 1087 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1087 + StartColumn = 21 + EndLine = 1087 + EndColumn = 22 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1093 + StartColumn = 5 + EndLine = 1093 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1094 + StartColumn = 9 + EndLine = 1094 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1093:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1095 + StartColumn = 8 + EndLine = 1095 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1098 + StartColumn = 5 + EndLine = 1098 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1099 + StartColumn = 9 + EndLine = 1099 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1098:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1103 + StartColumn = 5 + EndLine = 1103 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1103 + StartColumn = 17 + EndLine = 1103 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1106 + StartColumn = 5 + EndLine = 1106 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1106 + StartColumn = 17 + EndLine = 1106 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1107 + StartColumn = 9 + EndLine = 1107 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1106:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1109 + StartColumn = 5 + EndLine = 1109 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1109 + StartColumn = 17 + EndLine = 1109 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1111 + StartColumn = 13 + EndLine = 1111 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1110:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1113 + StartColumn = 5 + EndLine = 1113 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1113 + StartColumn = 17 + EndLine = 1113 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1117 + StartColumn = 5 + EndLine = 1117 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1117 + StartColumn = 17 + EndLine = 1117 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1123 + StartColumn = 5 + EndLine = 1123 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1124 + StartColumn = 9 + EndLine = 1124 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1123:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1125 + StartColumn = 8 + EndLine = 1125 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1128 + StartColumn = 5 + EndLine = 1128 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1129 + StartColumn = 9 + EndLine = 1129 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1128:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1133 + StartColumn = 1 + EndLine = 1133 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1134 + StartColumn = 5 + EndLine = 1134 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1133:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1140 + StartColumn = 9 + EndLine = 1140 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1139:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1144 + StartColumn = 13 + EndLine = 1144 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1143:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1170 + StartColumn = 9 + EndLine = 1170 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1169:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1174 + StartColumn = 13 + EndLine = 1174 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1173:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1187 + StartColumn = 9 + EndLine = 1187 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1186:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1192 + StartColumn = 9 + EndLine = 1192 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1191:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1200 + StartColumn = 9 + EndLine = 1200 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1199:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1204 + StartColumn = 13 + EndLine = 1204 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1203:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1217 + StartColumn = 9 + EndLine = 1217 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1216:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1222 + StartColumn = 9 + EndLine = 1222 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1221:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1230 + StartColumn = 9 + EndLine = 1230 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1229:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1234 + StartColumn = 13 + EndLine = 1234 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1233:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1247 + StartColumn = 9 + EndLine = 1247 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1246:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1252 + StartColumn = 9 + EndLine = 1252 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1251:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1257 + StartColumn = 1 + EndLine = 1257 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1418 + StartColumn = 1 + EndLine = 1418 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1470 + StartColumn = 9 + EndLine = 1470 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1469:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1475 + StartColumn = 9 + EndLine = 1475 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1474:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1500 + StartColumn = 9 + EndLine = 1500 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1499:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1505 + StartColumn = 9 + EndLine = 1505 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1504:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1530 + StartColumn = 9 + EndLine = 1530 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1529:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1535 + StartColumn = 9 + EndLine = 1535 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1534:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1539 + StartColumn = 1 + EndLine = 1539 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1591 + StartColumn = 9 + EndLine = 1591 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1590:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1596 + StartColumn = 9 + EndLine = 1596 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1595:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1621 + StartColumn = 9 + EndLine = 1621 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1620:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1626 + StartColumn = 9 + EndLine = 1626 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1625:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1651 + StartColumn = 9 + EndLine = 1651 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1650:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1656 + StartColumn = 9 + EndLine = 1656 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1655:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1660 + StartColumn = 1 + EndLine = 1660 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1661 + StartColumn = 5 + EndLine = 1661 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1660:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1714 + StartColumn = 9 + EndLine = 1714 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1713:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1719 + StartColumn = 9 + EndLine = 1719 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1718:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1744 + StartColumn = 9 + EndLine = 1744 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1743:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1749 + StartColumn = 9 + EndLine = 1749 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1748:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1774 + StartColumn = 9 + EndLine = 1774 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1773:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1779 + StartColumn = 9 + EndLine = 1779 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1778:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1783 + StartColumn = 1 + EndLine = 1783 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1784 + StartColumn = 5 + EndLine = 1784 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1783:25). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1790 + StartColumn = 9 + EndLine = 1790 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1789:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1794 + StartColumn = 13 + EndLine = 1794 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1793:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1804 + StartColumn = 13 + EndLine = 1804 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1803:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1807 + StartColumn = 9 + EndLine = 1807 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1806:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1812 + StartColumn = 9 + EndLine = 1812 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1811:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1814 + StartColumn = 9 + EndLine = 1814 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1813:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1820 + StartColumn = 9 + EndLine = 1820 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1819:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1824 + StartColumn = 13 + EndLine = 1824 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1823:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1834 + StartColumn = 13 + EndLine = 1834 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1833:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1837 + StartColumn = 9 + EndLine = 1837 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1836:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1842 + StartColumn = 9 + EndLine = 1842 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1841:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1844 + StartColumn = 9 + EndLine = 1844 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1843:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1850 + StartColumn = 9 + EndLine = 1850 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1849:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1854 + StartColumn = 13 + EndLine = 1854 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1853:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1864 + StartColumn = 13 + EndLine = 1864 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1863:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1867 + StartColumn = 9 + EndLine = 1867 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1866:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1872 + StartColumn = 9 + EndLine = 1872 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1871:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1874 + StartColumn = 9 + EndLine = 1874 + EndColumn = 25 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1873:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1880 + StartColumn = 9 + EndLine = 1880 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1879:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1884 + StartColumn = 13 + EndLine = 1884 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1883:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1894 + StartColumn = 13 + EndLine = 1894 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1893:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1897 + StartColumn = 9 + EndLine = 1897 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1896:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1902 + StartColumn = 9 + EndLine = 1902 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1901:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1904 + StartColumn = 9 + EndLine = 1904 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1903:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1906 + StartColumn = 1 + EndLine = 1906 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1907 + StartColumn = 5 + EndLine = 1907 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1906:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1910 + StartColumn = 9 + EndLine = 1910 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1909:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1913 + StartColumn = 9 + EndLine = 1913 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1912:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1917 + StartColumn = 13 + EndLine = 1917 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1916:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1921 + StartColumn = 13 + EndLine = 1921 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1920:51). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1925 + StartColumn = 13 + EndLine = 1925 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1924:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1927 + StartColumn = 13 + EndLine = 1927 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1926:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1930 + StartColumn = 9 + EndLine = 1930 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1929:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1932 + StartColumn = 9 + EndLine = 1932 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1931:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1935 + StartColumn = 9 + EndLine = 1935 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1934:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1937 + StartColumn = 9 + EndLine = 1937 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1936:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1940 + StartColumn = 9 + EndLine = 1940 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1939:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1943 + StartColumn = 9 + EndLine = 1943 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1942:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1947 + StartColumn = 13 + EndLine = 1947 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1946:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1951 + StartColumn = 13 + EndLine = 1951 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1950:51). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1955 + StartColumn = 13 + EndLine = 1955 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1954:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1957 + StartColumn = 13 + EndLine = 1957 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1956:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1960 + StartColumn = 9 + EndLine = 1960 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1959:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1962 + StartColumn = 9 + EndLine = 1962 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1961:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1965 + StartColumn = 9 + EndLine = 1965 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1964:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1967 + StartColumn = 9 + EndLine = 1967 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1966:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1970 + StartColumn = 9 + EndLine = 1970 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1969:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1973 + StartColumn = 9 + EndLine = 1973 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1972:32). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1977 + StartColumn = 13 + EndLine = 1977 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1976:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1981 + StartColumn = 13 + EndLine = 1981 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1980:51). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1985 + StartColumn = 13 + EndLine = 1985 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1984:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1987 + StartColumn = 13 + EndLine = 1987 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1986:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1990 + StartColumn = 9 + EndLine = 1990 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1989:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1992 + StartColumn = 9 + EndLine = 1992 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1991:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1995 + StartColumn = 9 + EndLine = 1995 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1994:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 1997 + StartColumn = 9 + EndLine = 1997 + EndColumn = 25 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1996:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2000 + StartColumn = 9 + EndLine = 2000 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1999:25). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2003 + StartColumn = 9 + EndLine = 2003 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2002:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2007 + StartColumn = 13 + EndLine = 2007 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2006:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2011 + StartColumn = 13 + EndLine = 2011 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2010:51). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2015 + StartColumn = 13 + EndLine = 2015 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2014:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2017 + StartColumn = 13 + EndLine = 2017 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2016:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2020 + StartColumn = 9 + EndLine = 2020 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2019:25). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2022 + StartColumn = 9 + EndLine = 2022 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2021:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2025 + StartColumn = 9 + EndLine = 2025 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2024:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2027 + StartColumn = 9 + EndLine = 2027 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2026:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2029 + StartColumn = 1 + EndLine = 2029 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2032 + StartColumn = 9 + EndLine = 2032 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2031:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2035 + StartColumn = 9 + EndLine = 2035 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2034:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2039 + StartColumn = 13 + EndLine = 2039 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2038:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2043 + StartColumn = 13 + EndLine = 2043 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2042:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2047 + StartColumn = 13 + EndLine = 2047 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2046:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2049 + StartColumn = 13 + EndLine = 2049 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2048:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2052 + StartColumn = 9 + EndLine = 2052 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2051:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2054 + StartColumn = 9 + EndLine = 2054 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2053:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2057 + StartColumn = 9 + EndLine = 2057 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2056:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2059 + StartColumn = 9 + EndLine = 2059 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2058:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2062 + StartColumn = 9 + EndLine = 2062 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2061:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2065 + StartColumn = 9 + EndLine = 2065 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2064:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2069 + StartColumn = 13 + EndLine = 2069 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2068:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2073 + StartColumn = 13 + EndLine = 2073 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2072:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2077 + StartColumn = 13 + EndLine = 2077 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2076:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2079 + StartColumn = 13 + EndLine = 2079 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2078:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2082 + StartColumn = 9 + EndLine = 2082 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2081:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2084 + StartColumn = 9 + EndLine = 2084 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2083:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2087 + StartColumn = 9 + EndLine = 2087 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2086:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2089 + StartColumn = 9 + EndLine = 2089 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2088:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2092 + StartColumn = 9 + EndLine = 2092 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2091:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2095 + StartColumn = 9 + EndLine = 2095 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2094:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2099 + StartColumn = 13 + EndLine = 2099 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2098:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2103 + StartColumn = 13 + EndLine = 2103 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2102:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2107 + StartColumn = 13 + EndLine = 2107 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2106:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2109 + StartColumn = 13 + EndLine = 2109 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2108:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2112 + StartColumn = 9 + EndLine = 2112 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2111:38). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2114 + StartColumn = 9 + EndLine = 2114 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2113:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2117 + StartColumn = 9 + EndLine = 2117 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2116:38). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2119 + StartColumn = 9 + EndLine = 2119 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2118:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2122 + StartColumn = 9 + EndLine = 2122 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2121:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2125 + StartColumn = 9 + EndLine = 2125 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2124:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2129 + StartColumn = 13 + EndLine = 2129 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2128:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2133 + StartColumn = 13 + EndLine = 2133 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2132:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2137 + StartColumn = 13 + EndLine = 2137 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2136:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2139 + StartColumn = 13 + EndLine = 2139 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2138:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2142 + StartColumn = 9 + EndLine = 2142 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2141:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2144 + StartColumn = 9 + EndLine = 2144 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2143:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2147 + StartColumn = 9 + EndLine = 2147 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2146:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2149 + StartColumn = 9 + EndLine = 2149 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2148:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2151 + StartColumn = 1 + EndLine = 2151 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2154 + StartColumn = 9 + EndLine = 2154 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2153:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2157 + StartColumn = 9 + EndLine = 2157 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2156:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2161 + StartColumn = 13 + EndLine = 2161 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2160:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2165 + StartColumn = 13 + EndLine = 2165 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2164:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2169 + StartColumn = 13 + EndLine = 2169 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2168:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2171 + StartColumn = 13 + EndLine = 2171 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2170:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2174 + StartColumn = 9 + EndLine = 2174 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2173:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2176 + StartColumn = 9 + EndLine = 2176 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2175:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2179 + StartColumn = 9 + EndLine = 2179 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2178:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2181 + StartColumn = 9 + EndLine = 2181 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2180:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2184 + StartColumn = 9 + EndLine = 2184 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2183:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2187 + StartColumn = 9 + EndLine = 2187 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2186:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2191 + StartColumn = 13 + EndLine = 2191 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2190:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2195 + StartColumn = 13 + EndLine = 2195 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2194:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2199 + StartColumn = 13 + EndLine = 2199 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2198:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2201 + StartColumn = 13 + EndLine = 2201 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2200:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2204 + StartColumn = 9 + EndLine = 2204 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2203:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2206 + StartColumn = 9 + EndLine = 2206 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2205:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2209 + StartColumn = 9 + EndLine = 2209 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2208:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2211 + StartColumn = 9 + EndLine = 2211 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2210:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2214 + StartColumn = 9 + EndLine = 2214 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2213:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2217 + StartColumn = 9 + EndLine = 2217 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2216:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2221 + StartColumn = 13 + EndLine = 2221 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2220:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2225 + StartColumn = 13 + EndLine = 2225 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2224:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2229 + StartColumn = 13 + EndLine = 2229 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2228:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2231 + StartColumn = 13 + EndLine = 2231 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2230:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2234 + StartColumn = 9 + EndLine = 2234 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2233:38). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2236 + StartColumn = 9 + EndLine = 2236 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2235:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2239 + StartColumn = 9 + EndLine = 2239 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2238:38). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2241 + StartColumn = 9 + EndLine = 2241 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2240:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2244 + StartColumn = 9 + EndLine = 2244 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2243:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2247 + StartColumn = 9 + EndLine = 2247 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2246:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2251 + StartColumn = 13 + EndLine = 2251 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2250:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2255 + StartColumn = 13 + EndLine = 2255 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2254:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2259 + StartColumn = 13 + EndLine = 2259 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2258:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2261 + StartColumn = 13 + EndLine = 2261 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2260:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2264 + StartColumn = 9 + EndLine = 2264 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2263:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2266 + StartColumn = 9 + EndLine = 2266 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2265:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2269 + StartColumn = 9 + EndLine = 2269 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2268:34). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2271 + StartColumn = 9 + EndLine = 2271 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2270:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2273 + StartColumn = 1 + EndLine = 2273 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2274 + StartColumn = 5 + EndLine = 2274 + EndColumn = 8 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2273:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2277 + StartColumn = 9 + EndLine = 2277 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2276:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2282 + StartColumn = 9 + EndLine = 2282 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2281:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2286 + StartColumn = 13 + EndLine = 2286 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2285:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2290 + StartColumn = 13 + EndLine = 2290 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2289:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2294 + StartColumn = 13 + EndLine = 2294 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2293:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2296 + StartColumn = 13 + EndLine = 2296 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2295:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2299 + StartColumn = 9 + EndLine = 2299 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2298:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2304 + StartColumn = 9 + EndLine = 2304 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2303:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2308 + StartColumn = 13 + EndLine = 2308 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2307:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2312 + StartColumn = 13 + EndLine = 2312 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2311:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2316 + StartColumn = 13 + EndLine = 2316 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2315:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2318 + StartColumn = 13 + EndLine = 2318 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2317:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2321 + StartColumn = 9 + EndLine = 2321 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2320:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2326 + StartColumn = 9 + EndLine = 2326 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2325:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2330 + StartColumn = 13 + EndLine = 2330 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2329:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2334 + StartColumn = 13 + EndLine = 2334 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2333:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2338 + StartColumn = 13 + EndLine = 2338 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2337:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2340 + StartColumn = 13 + EndLine = 2340 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2339:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2343 + StartColumn = 9 + EndLine = 2343 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2342:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2348 + StartColumn = 9 + EndLine = 2348 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2347:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2352 + StartColumn = 13 + EndLine = 2352 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2351:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2356 + StartColumn = 13 + EndLine = 2356 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2355:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2360 + StartColumn = 13 + EndLine = 2360 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2359:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2362 + StartColumn = 13 + EndLine = 2362 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2361:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2364 + StartColumn = 1 + EndLine = 2364 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2369 + StartColumn = 9 + EndLine = 2369 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2368:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2373 + StartColumn = 13 + EndLine = 2373 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2372:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2403 + StartColumn = 13 + EndLine = 2403 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2402:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2450 + StartColumn = 9 + EndLine = 2450 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2449:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2453 + StartColumn = 9 + EndLine = 2453 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2452:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2457 + StartColumn = 13 + EndLine = 2457 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2456:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2461 + StartColumn = 13 + EndLine = 2461 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2460:45). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2465 + StartColumn = 13 + EndLine = 2465 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2464:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2467 + StartColumn = 13 + EndLine = 2467 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2466:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2472 + StartColumn = 9 + EndLine = 2472 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2471:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2487 + StartColumn = 13 + EndLine = 2487 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2486:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2493 + StartColumn = 1 + EndLine = 2493 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2364:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2498 + StartColumn = 9 + EndLine = 2498 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2497:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2502 + StartColumn = 13 + EndLine = 2502 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2501:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2555 + StartColumn = 9 + EndLine = 2555 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2554:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2558 + StartColumn = 9 + EndLine = 2558 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2557:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2562 + StartColumn = 13 + EndLine = 2562 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2561:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2566 + StartColumn = 13 + EndLine = 2566 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2565:39). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2570 + StartColumn = 13 + EndLine = 2570 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2569:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2572 + StartColumn = 13 + EndLine = 2572 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2571:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2577 + StartColumn = 9 + EndLine = 2577 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2576:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2587 + StartColumn = 1 + EndLine = 2587 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2493:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2628 + StartColumn = 1 + EndLine = 2628 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2587:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2690 + StartColumn = 9 + EndLine = 2690 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2689:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2721 + StartColumn = 1 + EndLine = 2721 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2628:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2783 + StartColumn = 9 + EndLine = 2783 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2782:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2814 + StartColumn = 1 + EndLine = 2814 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2721:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2846 + StartColumn = 9 + EndLine = 2846 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2845:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2861 + StartColumn = 13 + EndLine = 2861 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2860:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2863 + StartColumn = 13 + EndLine = 2863 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2862:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2900 + StartColumn = 9 + EndLine = 2900 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2899:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2910 + StartColumn = 1 + EndLine = 2910 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2814:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2915 + StartColumn = 9 + EndLine = 2915 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2914:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2919 + StartColumn = 13 + EndLine = 2919 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2918:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2929 + StartColumn = 13 + EndLine = 2929 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2928:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2932 + StartColumn = 9 + EndLine = 2932 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2931:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2937 + StartColumn = 9 + EndLine = 2937 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2936:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2939 + StartColumn = 9 + EndLine = 2939 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2938:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2942 + StartColumn = 9 + EndLine = 2942 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2941:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2945 + StartColumn = 9 + EndLine = 2945 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2944:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2949 + StartColumn = 13 + EndLine = 2949 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2948:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2953 + StartColumn = 13 + EndLine = 2953 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2952:46). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2957 + StartColumn = 13 + EndLine = 2957 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2956:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2959 + StartColumn = 13 + EndLine = 2959 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2958:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 2964 + StartColumn = 9 + EndLine = 2964 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2963:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3003 + StartColumn = 1 + EndLine = 3003 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (2910:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3005 + StartColumn = 9 + EndLine = 3005 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3004:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3008 + StartColumn = 9 + EndLine = 3008 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3007:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3012 + StartColumn = 13 + EndLine = 3012 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3011:36). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3016 + StartColumn = 13 + EndLine = 3016 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3015:53). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3020 + StartColumn = 13 + EndLine = 3020 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3019:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3022 + StartColumn = 13 + EndLine = 3022 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3021:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3025 + StartColumn = 9 + EndLine = 3025 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3024:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3027 + StartColumn = 9 + EndLine = 3027 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3026:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3030 + StartColumn = 9 + EndLine = 3030 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3029:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3032 + StartColumn = 9 + EndLine = 3032 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3031:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3035 + StartColumn = 9 + EndLine = 3035 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3034:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3038 + StartColumn = 9 + EndLine = 3038 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3037:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3042 + StartColumn = 13 + EndLine = 3042 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3041:39). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3046 + StartColumn = 13 + EndLine = 3046 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3045:56). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3050 + StartColumn = 13 + EndLine = 3050 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3049:32). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3052 + StartColumn = 13 + EndLine = 3052 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3051:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3057 + StartColumn = 9 + EndLine = 3057 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3056:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3096 + StartColumn = 1 + EndLine = 3096 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3003:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3098 + StartColumn = 9 + EndLine = 3098 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3097:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3101 + StartColumn = 9 + EndLine = 3101 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3100:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3105 + StartColumn = 13 + EndLine = 3105 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3104:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3109 + StartColumn = 13 + EndLine = 3109 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3108:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3113 + StartColumn = 13 + EndLine = 3113 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3112:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3115 + StartColumn = 13 + EndLine = 3115 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3114:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3120 + StartColumn = 9 + EndLine = 3120 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3119:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3125 + StartColumn = 9 + EndLine = 3125 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3124:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3158 + StartColumn = 9 + EndLine = 3158 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3157:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3161 + StartColumn = 9 + EndLine = 3161 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3160:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3165 + StartColumn = 13 + EndLine = 3165 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3164:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3169 + StartColumn = 13 + EndLine = 3169 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3168:46). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3173 + StartColumn = 13 + EndLine = 3173 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3172:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3175 + StartColumn = 13 + EndLine = 3175 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3174:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3178 + StartColumn = 9 + EndLine = 3178 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3177:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3180 + StartColumn = 9 + EndLine = 3180 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3179:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3183 + StartColumn = 9 + EndLine = 3183 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3182:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3185 + StartColumn = 9 + EndLine = 3185 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3184:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3189 + StartColumn = 1 + EndLine = 3189 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3096:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3191 + StartColumn = 9 + EndLine = 3191 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3190:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3194 + StartColumn = 9 + EndLine = 3194 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3193:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3198 + StartColumn = 13 + EndLine = 3198 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3197:29). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3202 + StartColumn = 13 + EndLine = 3202 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3201:37). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3206 + StartColumn = 13 + EndLine = 3206 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3205:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3208 + StartColumn = 13 + EndLine = 3208 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3207:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3213 + StartColumn = 9 + EndLine = 3213 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3212:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3218 + StartColumn = 9 + EndLine = 3218 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3217:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3251 + StartColumn = 9 + EndLine = 3251 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3250:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3254 + StartColumn = 9 + EndLine = 3254 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3253:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3258 + StartColumn = 13 + EndLine = 3258 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3257:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3262 + StartColumn = 13 + EndLine = 3262 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3261:49). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3266 + StartColumn = 13 + EndLine = 3266 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3265:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3268 + StartColumn = 13 + EndLine = 3268 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3267:24). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3271 + StartColumn = 9 + EndLine = 3271 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3270:31). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3273 + StartColumn = 9 + EndLine = 3273 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3272:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3276 + StartColumn = 9 + EndLine = 3276 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3275:31). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3278 + StartColumn = 9 + EndLine = 3278 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3277:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3282 + StartColumn = 1 + EndLine = 3282 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3189:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3287 + StartColumn = 9 + EndLine = 3287 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3286:15). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3292 + StartColumn = 9 + EndLine = 3292 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3291:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3296 + StartColumn = 13 + EndLine = 3296 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3295:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3300 + StartColumn = 13 + EndLine = 3300 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3299:35). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3304 + StartColumn = 13 + EndLine = 3304 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3303:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3306 + StartColumn = 13 + EndLine = 3306 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3305:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3313 + StartColumn = 9 + EndLine = 3313 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3312:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3315 + StartColumn = 9 + EndLine = 3315 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3314:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3318 + StartColumn = 9 + EndLine = 3318 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3317:19). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3322 + StartColumn = 13 + EndLine = 3322 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3321:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3326 + StartColumn = 13 + EndLine = 3326 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3325:48). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3330 + StartColumn = 13 + EndLine = 3330 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3329:27). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3332 + StartColumn = 13 + EndLine = 3332 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3331:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3335 + StartColumn = 9 + EndLine = 3335 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3334:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3337 + StartColumn = 9 + EndLine = 3337 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3336:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3340 + StartColumn = 9 + EndLine = 3340 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3339:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3342 + StartColumn = 9 + EndLine = 3342 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3341:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3345 + StartColumn = 9 + EndLine = 3345 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3344:20). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3349 + StartColumn = 13 + EndLine = 3349 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3348:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3353 + StartColumn = 13 + EndLine = 3353 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3352:49). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3357 + StartColumn = 13 + EndLine = 3357 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3356:28). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3359 + StartColumn = 13 + EndLine = 3359 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3358:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3362 + StartColumn = 9 + EndLine = 3362 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3361:18). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3364 + StartColumn = 9 + EndLine = 3364 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3363:23). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3369 + StartColumn = 1 + EndLine = 3369 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3282:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3370 + StartColumn = 5 + EndLine = 3370 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3369:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3375 + StartColumn = 9 + EndLine = 3375 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3376 + StartColumn = 9 + EndLine = 3376 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3380 + StartColumn = 9 + EndLine = 3380 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3379:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3384 + StartColumn = 13 + EndLine = 3384 + EndColumn = 17 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3385 + StartColumn = 13 + EndLine = 3385 + EndColumn = 18 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3390 + StartColumn = 9 + EndLine = 3390 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3392 + StartColumn = 9 + EndLine = 3392 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3393 + StartColumn = 9 + EndLine = 3393 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3395 + StartColumn = 9 + EndLine = 3395 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3396 + StartColumn = 9 + EndLine = 3396 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3398 + StartColumn = 9 + EndLine = 3398 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3399 + StartColumn = 9 + EndLine = 3399 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3400 + StartColumn = 9 + EndLine = 3400 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3408 + StartColumn = 9 + EndLine = 3408 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3409 + StartColumn = 9 + EndLine = 3409 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3417 + StartColumn = 9 + EndLine = 3417 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3418 + StartColumn = 5 + EndLine = 3418 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3419 + StartColumn = 9 + EndLine = 3419 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3418:22). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3420 + StartColumn = 9 + EndLine = 3420 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3423 + StartColumn = 1 + EndLine = 3423 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3424 + StartColumn = 1 + EndLine = 3424 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3423:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3427 + StartColumn = 1 + EndLine = 3427 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3424:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3430 + StartColumn = 1 + EndLine = 3430 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3431 + StartColumn = 1 + EndLine = 3431 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3434 + StartColumn = 1 + EndLine = 3434 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3431:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3435 + StartColumn = 5 + EndLine = 3435 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3434:12). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3439 + StartColumn = 1 + EndLine = 3439 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3434:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3445 + StartColumn = 1 + EndLine = 3445 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3450 + StartColumn = 1 + EndLine = 3450 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3451 + StartColumn = 5 + EndLine = 3451 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3450:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3456 + StartColumn = 1 + EndLine = 3456 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3457 + StartColumn = 5 + EndLine = 3457 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3456:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3467 + StartColumn = 1 + EndLine = 3467 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3471 + StartColumn = 1 + EndLine = 3471 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3491 + StartColumn = 1 + EndLine = 3491 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3471:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3503 + StartColumn = 1 + EndLine = 3503 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3491:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3524 + StartColumn = 1 + EndLine = 3524 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3503:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3525 + StartColumn = 1 + EndLine = 3525 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3524:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3527 + StartColumn = 1 + EndLine = 3527 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3525:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3529 + StartColumn = 1 + EndLine = 3529 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3527:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3530 + StartColumn = 1 + EndLine = 3530 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3529:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3533 + StartColumn = 5 + EndLine = 3533 + EndColumn = 142 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3532:7). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3537 + StartColumn = 1 + EndLine = 3537 + EndColumn = 2 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3538 + StartColumn = 5 + EndLine = 3538 + EndColumn = 142 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3537:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3544 + StartColumn = 1 + EndLine = 3544 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3545 + StartColumn = 5 + EndLine = 3545 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3546 + StartColumn = 5 + EndLine = 3546 + EndColumn = 34 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3549 + StartColumn = 1 + EndLine = 3549 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3550 + StartColumn = 5 + EndLine = 3550 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3549:48). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3557 + StartColumn = 1 + EndLine = 3557 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3558 + StartColumn = 5 + EndLine = 3558 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3557:10). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3560 + StartColumn = 1 + EndLine = 3560 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3561 + StartColumn = 5 + EndLine = 3561 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3560:7). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3563 + StartColumn = 1 + EndLine = 3563 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3564 + StartColumn = 5 + EndLine = 3564 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3563:14). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3567 + StartColumn = 1 + EndLine = 3567 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3568 + StartColumn = 1 + EndLine = 3568 + EndColumn = 2 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3574 + StartColumn = 1 + EndLine = 3574 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3575 + StartColumn = 1 + EndLine = 3575 + EndColumn = 2 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3578 + StartColumn = 5 + EndLine = 3578 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3577:8). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3585 + StartColumn = 1 + EndLine = 3585 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3588 + StartColumn = 10 + EndLine = 3588 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3587:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3590 + StartColumn = 10 + EndLine = 3590 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3589:13). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3596 + StartColumn = 1 + EndLine = 3596 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3597 + StartColumn = 5 + EndLine = 3597 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3596:16). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3602 + StartColumn = 1 + EndLine = 3602 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3608 + StartColumn = 1 + EndLine = 3608 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3611 + StartColumn = 1 + EndLine = 3611 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3612 + StartColumn = 1 + EndLine = 3612 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3612 + StartColumn = 8 + EndLine = 3612 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3612 + StartColumn = 14 + EndLine = 3612 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3615 + StartColumn = 9 + EndLine = 3615 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3614:21). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3617 + StartColumn = 1 + EndLine = 3617 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3618 + StartColumn = 2 + EndLine = 3618 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3617:5). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3620 + StartColumn = 1 + EndLine = 3620 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3617:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3625 + StartColumn = 17 + EndLine = 3625 + EndColumn = 39 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3624:26). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3632 + StartColumn = 1 + EndLine = 3632 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3620:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3635 + StartColumn = 1 + EndLine = 3635 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3632:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3657 + StartColumn = 5 + EndLine = 3657 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3656:30). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3678 + StartColumn = 1 + EndLine = 3678 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3635:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3688 + StartColumn = 1 + EndLine = 3688 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3678:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3699 + StartColumn = 1 + EndLine = 3699 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3688:1). Try indenting this token further or using standard formatting conventions." }; + { Error = Warning 58 + Range = { StartLine = 3704 + StartColumn = 1 + EndLine = 3704 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3699:1). Try indenting this token further or using standard formatting conventions." } + |] \ No newline at end of file diff --git a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs new file mode 100644 index 00000000000..7e45467e9de --- /dev/null +++ b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs @@ -0,0 +1,3707 @@ +// #Conformance #LexFilter #Exceptions +#light + +[] +type IProvideTestFunctionX = + static member x (y: obj, ?z: obj) = () + static member x'<'T> (y: 'T, ?z: obj) = y + +module BeginEnd = + let a = begin + 2 + end + let b = id begin + 2 + end + let c = + if true then ignore begin + 2 + end + let d = + if true then begin 1 end else begin + 2 + end + let e = + if true then begin + 1 + end else begin + 2 + end + let ( + _ + ) as f = begin + 2 + end + let ( + _ + ) = begin + 3 + end + let h = + if begin + true + end + then begin + end + let i = + if x' begin + false + end + then begin + end + let a0 = begin 2 = + 2 + end + let b0 = x begin y = + 2 + end + let c0 = + if true then x begin y = + 2 + end + let d0 = + if true then x begin y = 1 end else x begin y = + 2 + end + let e0 = + if true then x begin y = + 1 + end else x begin y = + 2 + end + let ( + _ + ) as f0 = x begin y = + 2 + end + let ( + _ + ) = begin 2 = + 3 + end + let h0 = + if begin 2 = + 2 + end + then begin + end + let i0 = + if x' begin y = + true + end + then begin + end + let a1 = begin 2 = 2, + 3 = 2 + end + let b1 = x begin y = 2, + z = 2 + end + let c1 = + if true then x begin y = 2, + z = 3 + end + let d1 = + if true then x begin y = 1 end else x begin y = 2, + z = 3 + end + let e1 = + if true then x begin y = 1, + z = 3 + end else x begin y = 2, + z = 3 + end + let ( + _ + ) as f1 = x begin y = 2, + z = 3 + end + let ( + _ + ) = begin 2 = 3, + 3 = 3 + end + let h1 = + if begin 2 = 2 |> ignore; + 3 = 3 + end + then begin + end + let i1 = + if x' begin y = true, + z = false + end + then begin + end +type Paren = ( + int +) +module Parens = + let a = ( + 2 + ) + let b = id ( + 2 + ) + let c = + if true then ignore ( + 2 + ) + let d = + if true then ( 1 ) else ( + 2 + ) + let e = + if true then ( + 1 + ) else ( + 2 + ) + let ( + _ + ) as f = ( + 2 + ) + let ( + _ + ) = ( + 3 + ) + let a0 = (2 = + 2 + ) + let b0 = x (y = + 2 + ) + let c0 = + if true then x (y = + 2 + ) + let d0 = + if true then x ( y = 1 ) else x (y = + 2 + ) + let e0 = + if true then x (y = + 1 + ) else x (y = + 2 + ) + let ( + _ + ) as f0 = x (y = + 2 + ) + let ( + _ + ) = (2 = + 3 + ) + let a1 = (2 = 2, + 3 = 3 + ) + let b1 = x (y = 2, + z = 3 + ) + let c1 = + if true then x (y = 2, + z = 3 + ) + let d1 = + if true then x ( y = 1 ) else x (y = 2, + z = 3 + ) + let e1 = + if true then x (y = 1, + z = 3 + ) else x (y = 2, + z = 3 + ) + let ( + _ + ) as f1 = x (y = 2, + z = 3 + ) + let ( + _ + ) = (2 = 3, + 3 = 3 + ) +// These are lexed differently but it's visually appealing to still include +module ActivePatterns = + let (| + A + |) = id + let (| + B + |) _ = (| + A + |) + let (|C|) = + if true then ignore (| + A + |) + let d<'a, 'b> = + if true then (| A |) else (| + A + |) + let e<'a, 'b> = + if true then (| + A + |) else (| + A + |) + let (| + F + | + _ + |) as f = Some (| + C + |) + let (| + G + | + _ + |) = (| + F + | + _ + |) +module Lists = + let a = [ + 2 + ] + let b = id [ + 2 + ] + let c = + if true then ignore [ + 2 + ] + let d = + if true then [ 1 ] else [ + 2 + ] + let e = + if true then [ + 1 + ] else [ + 2 + ] + let [ + _ + ] as f = [ + 2 + ] + let [ + _ + ] = [ + 3 + ] + let a0 = [ 2 = + 2 + ] + let b0 = x [ 2 = + 2 + ] + let c0 = + if true then x [ 2 = + 2 + ] + let d0 = + if true then x [ 2 = 1 ] else x [ 2 = + 2 + ] + let e0 = + if true then x [ 2 = + 1 + ] else x [ 2 = + 2 + ] + let [ + _ + ] as f0 = x' [ 2 = + 2 + ] + let [ + _ + ] = [ 2 = + 3 + ] + let a1 = [ 2 = 2, + 3 = 3 + ] + let b1 = x [ 2 = 2, + 3 = 3 + ] + let c1 = + if true then x [ 2 = 2, + 3 = 3 + ] + let d1 = + if true then x [ 2 = 1 ] else x [ 2 = 2, + 3 = 3 + ] + let e1 = + if true then x [ 2 = 1, + 3 = 3 + ] else x [ 2 = 2, + 3 = 3 + ] + let [ + _ + ] as f1 = x' [ 2 = 2, + 3 = 3 + ] + let [ + _ + ] = [ 2 = 3, + 3 = 3 + ] +module Arrays = + let a = [| + 2 + |] + let b = id [| + 2 + |] + let c = + if true then ignore [| + 2 + |] + let d = + if true then [| 1 |] else [| + 2 + |] + let e = + if true then [| + 1 + |] else [| + 2 + |] + let [| + _ + |] as f = [| + 2 + |] + let [| + _ + |] = [| + 3 + |] + let a0 = [| 2 = + 2 + |] + let b0 = x [| 2 = + 2 + |] + let c0 = + if true then x [| 2 = + 2 + |] + let d0 = + if true then x [| 2 = 1 |] else x [| 2 = + 2 + |] + let e0 = + if true then x [| 2 = + 1 + |] else x [| 2 = + 2 + |] + let [| + _ + |] as f0 = x' [| 2 = + 2 + |] + let [| + _ + |] = [| 2 = + 3 + |] + let a1 = [| 2 = 2, + 3 = 3 + |] + let b1 = x [| 2 = 2, + 3 = 3 + |] + let c1 = + if true then x [| 2 = 2, + 3 = 3 + |] + let d1 = + if true then x [| 2 = 1 |] else x [| 2 = 2, + 3 = 3 + |] + let e1 = + if true then x [| 2 = 1, + 3 = 3 + |] else x [| 2 = 2, + 3 = 3 + |] + let [| + _ + |] as f1 = x' [| 2 = 2, + 3 = 3 + |] + let [| + _ + |] = [| 2 = 3, + 3 = 3 + |] +type Record = { + y : int +} +type Record2 = { + x : int; z : Record +} +module Records = + let a = { + y = 2 + } + let b = id { + y = 2 + } + let c = + if true then ignore { + y = 2 + } + let d = + if true then { y = 1 } else { + y = 2 + } + let e = + if true then { + y = 1 + } else { + y = 2 + } + let { + y = _ + } as f = { + y = 2 + } + let { + y = _ + } = { + f with y = 3 + } + let a0 = { y = + 2 + } + let b0 = x { y = + 2 + } + let c0 = + if true then x { y = + 2 + } + let d0 = + if true then x { y = 1 } else x { y = + 2 + } + let e0 = + if true then { y = + 1 + } else { y = + 2 + } + let { z = { + y = _ + }} as f0 = { z = { + y = 2 + }; x = 1} + let { z = { + y = _ + }} = { f0 with z = { + y = 3 + } + } + let a1 = { x = 2; + z = { y = 3 } + } + let b1 = x { x = 2; + z = { y = 3 } + } + let c1 = + if true then x { x = 2; + z = { y = 3 } + } + let d1 = + if true then x { y = 1 } else x { x = 2; + z = { y = 3 } + } + let e1 = + if true then { x = 1; + z = { y = 3 } + } else { x = 2; + z = { y = 3 } + } + let { z = { + y = _ + }} as f1 = { x = 1; + z = { + y = 2 + } } + let { x = _; z = { + y = _ + }} = { f1 with x = 2; z = { + y = 3 + } + } +type AnonymousRecord = {| + y : int +|} +module AnonymousRecords = + let a = {| + y = 2 + |} + let b = id {| + y = 2 + |} + let c = + if true then ignore {| + y = 2 + |} + let d = + if true then {| y = 1 |} else {| + y = 2 + |} + let e = + if true then {| + y = 1 + |} else {| + y = 2 + |} + let f : {| + y : int + |} = {| + y = 2 + |} + let g : {| + y : int + |} = {| + f with y = 3 + |} + let a0 = {| y = + 2 + |} + let b0 = x {| y = + 2 + |} + let c0 = + if true then x {| y = + 2 + |} + let d0 = + if true then x {| y = 1 |} else x {| y = + 2 + |} + let e0 = + if true then x {| y = + 1 + |} else x {| y = + 2 + |} + let f0 : {| y : + int + |} = x' {| y = + 2 + |} + let g0 : {| x : int; + y : int; z : int + |} = {| f0 with x = 1 + z = 3 + |} + let a1 = {| y = 2; + z = 3 + |} + let b1 = x {| y = 2; + z = 3 + |} + let c1 = + if true then x {| y = 2; + z = 3 + |} + let d1 = + if true then x {| y = 1 |} else x {| y = 2; + z = 3 + |} + let e1 = + if true then x {| y = 1; + z = 3 + |} else x {| y = 2; + z = 3 + |} + let f1 : {| y : int; + z : int + |} = x' {| y = 2; + z = 3 + |} + let g1 : {| x : int; + y : int; z : int + |} = {| f1 with x = 1; + z = 3 + |} +type StructAnonymousRecord = (struct {| // Parentheses required to disambiguate from struct ... end + y : int +|}) +module StructAnonymousRecords = + let a = struct {| + y = 2 + |} + let b = id struct {| + y = 2 + |} + let c = + if true then ignore struct {| + y = 2 + |} + let d = + if true then struct {| y = 1 |} else struct {| + y = 2 + |} + let e = + if true then struct {| + y = 1 + |} else struct {| + y = 2 + |} + let f : struct {| + y : int + |} = struct {| + y = 2 + |} + let g : struct {| + y : int + |} = struct {| + f with y = 3 + |} + let a0 = struct {| y = + 2 + |} + let b0 = id struct {| y = + 2 + |} + let c0 = + if true then ignore struct {| y = + 2 + |} + let d0 = + if true then struct {| y = 1 |} else struct {| y = + 2 + |} + let e0 = + if true then struct {| y = + 1 + |} else struct {| y = + 2 + |} + let f0 : struct {| y : + int + |} = x' struct {| y = + 2 + |} + let g0 : struct {| x : int; + y : int; z : int + |} = struct {| f with x = 1 + z = 3 + |} + let a1 = struct {| y = 2; + z = 3 + |} + let b1 = x struct {| y = 2; + z = 3 + |} + let c1 = + if true then x struct {| y = 2; + z = 3 + |} + let d1 = + if true then x struct {| y = 1 |} else x struct {| y = 2; + z = 3 + |} + let e1 = + if true then x struct {| y = 1; + z = 3 + |} else x struct {| y = 2; + z = 3 + |} + let f1 : struct {| y : int; + z : int + |} = x' struct {| y = 2; + z = 3 + |} + let g1 : struct {| x : int; + y : int; z : int + |} = struct {| f1 with x = 1; + z = 3 + |} +module TypedQuotations = + let a = <@ + 2 + @> + let b = id <@ + 2 + @> + let c = + if true then ignore <@ + 2 + @> + let d = + if true then <@ 1 @> else <@ + 2 + @> + let e = + if true then <@ + 1 + @> else <@ + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> f) = <@ + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> _) = <@ + 2 + @> + let a0 = <@ 2 = + 2 + @> + let b0 = x <@ 2 = + 2 + @> + let c0 = + if true then x <@ 2 = + 2 + @> + let d0 = + if true then x <@ 2 = 1 @> else x <@ 2 = + 2 + @> + let e0 = + if true then x <@ 2 = + 1 + @> else x <@ 2 = + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> f0) = x' <@ 2 = + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> _) = <@ 2 = + 2 + @> + let a1 = <@ 2 = 2, + 3 = 3 + @> + let b1 = x <@ 2 = 2, + 3 = 3 + @> + let c1 = + if true then x <@ 2 = 2, + 3 = 3 + @> + let d1 = + if true then x <@ 2 = 1 @> else x <@ 2 = 2, + 3 = 3 + @> + let e1 = + if true then x <@ 2 = 1, + 3 = 3 + @> else x <@ 2 = 2, + 3 = 3 + @> + let (ActivePatterns.B <@ 2 = 2, + 3 = 3 + @> f1) = x' <@ 2 = 2, + 3 = 3 + @> + let (ActivePatterns.B <@ 2 = 2, + 3 = 3 + @> _) = <@ 2 = 2, + 3 = 3 + @> +module UntypedQuotations = + let a = <@@ + 2 + @@> + let b = id <@@ + 2 + @@> + let c = + if true then ignore <@@ + 2 + @@> + let d = + if true then <@@ 1 @@> else <@@ + 2 + @@> + let e = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> f) = <@@ + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> _) = <@@ + 2 + @@> + let a0 = <@@ 2 = + 2 + @@> + let b0 = x <@@ 2 = + 2 + @@> + let c0 = + if true then x <@@ 2 = + 2 + @@> + let d0 = + if true then x <@@ 2 = 1 @@> else x <@@ 2 = + 2 + @@> + let e0 = + if true then x <@@ 2 = + 1 + @@> else x <@@ 2 = + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> f0) = x' <@@ 2 = + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> _) = <@@ 2 = + 2 + @@> + let a1 = <@@ 2 = 2, + 3 = 3 + @@> + let b1 = x <@@ 2 = 2, + 3 = 3 + @@> + let c1 = + if true then x <@@ 2 = 2, + 3 = 3 + @@> + let d1 = + if true then x <@@ 2 = 1 @@> else x <@@ 2 = 2, + 3 = 3 + @@> + let e1 = + if true then x <@@ 2 = 1, + 3 = 3 + @@> else x <@@ 2 = 2, + 3 = 3 + @@> + let (ActivePatterns.B <@@ 2 = 2, + 3 = 3 + @@> f1) = x' <@@ 2 = 2, + 3 = 3 + @@> + let (ActivePatterns.B <@@ 2 = 2, + 3 = 3 + @@> _) = <@@ 2 = 2, + 3 = 3 + @@> +type Id<'T> = 'T -> 'T +type Id2<'T, 'U> = 'T * 'U -> 'T * 'U +let [] id2<'T, 'U> = id<'T * 'U> +module Generics = + // Unlike 'end' / ')' / '|)' / ']' / '|]' / '}' / '|}', + // '>' terminates the declaration automatically, + // so you must indent non-terminating '>'s by at least one space + let a : Id< + 'T + > = id< + 'T + > + let b = id< + int + > + let c = + if true then ignore id< + int + > + let d = + if true then id else id< + int + > + let e = + if true then id< + int + > else id< + int + > + let f< + 'T + > = id< + 'T + > + let a0 : Id<'T * ( + 'T + )> = id<'T * + 'T + > + let b0 = x id + let c0 = + if true then x id + let d0 = + if true then x id else x id + let e0 = + if true then x id else x id + let f0 : Id< + int + > = id |> x'> + let a1 : Id2<'T, + 'T + > = id2<'T, + 'T + > + let b1 = x id2 + let c1 = + if true then x id2 + let d1 = + if true then x id2 else x id2 + let e1 = + if true then x id2 else x id2 + let f1 : Id2 = id2 |> x'> +type BeginEnd( + __ +) = + let a = begin + 2 + end + let b = id begin + 2 + end + let c = + if true then ignore begin + 2 + end + let d = + if true then begin 1 end else begin + 2 + end + let e = + if true then begin + 1 + end else begin + 2 + end + let ( + _ + ) as f = begin + 2 + end + let ( + _ + ) = begin + 3 + end + static let a' = begin + 2 + end + static let b' = id begin + 2 + end + static let c' = + if true then ignore begin + 2 + end + static let d' = + if true then begin 1 end else begin + 2 + end + static let e' = + if true then begin + 1 + end else begin + 2 + end + static let ( + _ + ) as f' = begin + 2 + end + static let ( + _ + ) = begin + 3 + end + static member A = begin + 2 + end + static member B = id begin + 2 + end + static member C = + if true then ignore begin + 2 + end + static member D = + if true then begin 1 end else begin + 2 + end + static member E = + if true then begin + 1 + end else begin + 2 + end + static member F ( + _ + ) = begin + 2 + end + static member G ( + _ + ) = begin + 3 + end + member _.A' = begin + 2 + end + member _.B' = id begin + 2 + end + member _.C' = + if true then ignore begin + 2 + end + member _.D' = + if true then begin 1 end else begin + 2 + end + member _.E' = + if true then begin + 1 + end else begin + 2 + end + member _.F' ( + _ + ) = begin + 2 + end + member _.G' ( + _ + ) = begin + 3 + end +type Parens(__:( + obj +)) = + let a = ( + 2 + ) + let b = id ( + 2 + ) + let c = + if true then ignore ( + 2 + ) + let d = + if true then ( 1 ) else ( + 2 + ) + let e = + if true then ( + 1 + ) else ( + 2 + ) + let ( + _ + ) as f = ( + 2 + ) + let ( + _ + ) = ( + 3 + ) + static let a' = ( + 2 + ) + static let b' = id ( + 2 + ) + static let c' = + if true then ignore ( + 2 + ) + static let d' = + if true then ( 1 ) else ( + 2 + ) + static let e' = + if true then ( + 1 + ) else ( + 2 + ) + static let ( + _ + ) as f' = ( + 2 + ) + static let ( + _ + ) = ( + 3 + ) + static member A = ( + 2 + ) + static member B = id ( + 2 + ) + static member C = + if true then ignore ( + 2 + ) + static member D = + if true then ( 1 ) else ( + 2 + ) + static member E = + if true then ( + 1 + ) else ( + 2 + ) + static member F( + _ + ) = ( + 2 + ) + static member G( + _ + ) = ( + 3 + ) + member _.A' = ( + 2 + ) + member _.B' = id ( + 2 + ) + member _.C' = + if true then ignore ( + 2 + ) + member _.D' = + if true then ( 1 ) else ( + 2 + ) + member _.E' = + if true then ( + 1 + ) else ( + 2 + ) + member _.F'( + _ + ) = ( + 2 + ) + member _.G'( + _ + ) = ( + 3 + ) +// These are lexed differently but it's visually appealing to still include +type ActivePatterns() = + let (| + A + |) = (| + Lazy + |) + let (| + B + |) = (| + A + |) + let (|C|) = + if true then ignore (| + A + |) + let d = + if true then (| A |) else (| + B + |) + let e = + if true then (| + A + |) else (| + B + |) + let (| + F + | + _ + |) as f = Some (| + C + |) + let (| + G + | + _ + |) = (| + F + | + _ + |) + static let (| + A_ + |) = (| + Lazy + |) + static let (| + B_ + |) = (| + A_ + |) + static let (|C_|) = + if true then ignore (| + A_ + |) + static let d_ = + if true then (| A_ |) else (| + B_ + |) + static let e_ = + if true then (| + A_ + |) else (| + B_ + |) + static let (| + F_ + | + _ + |) as f_ = Some (| + C_ + |) + static let (| + G_ + | + _ + |) = (| + F_ + | + _ + |) + static member (| + AA + |) = (| + Lazy + |) + static member (| + BB + |) = ActivePatterns.(| + AA + |) + static member (|CC|) = + if true then ignore ActivePatterns.(| + AA + |) + static member D = + if true then ActivePatterns.(| AA |) else ActivePatterns.(| + BB + |) + static member E = + if true then ActivePatterns.(| + AA + |) else ActivePatterns.(| + BB + |) + static member (| + FF + | + _ + |) = Some ActivePatterns.(| + CC + |) + static member (| + GG + | + _ + |) = ActivePatterns.(| + FF + | + _ + |) + member _.(| + A' + |) = (| + Lazy + |) + member this.(| + B' + |) = this.(| + A' + |) + member this.(|C'|) = + if true then ignore this.(| + A' + |) + member this.D' = + if true then this.(| A' |) else this.(| + B' + |) + member this.E' = + if true then this.(| + A' + |) else this.(| + B' + |) + member this.(| + F' + | + _ + |) = Some this.(| + C' + |) + member this.(| + G' + | + _ + |) = this.(| + F' + | + _ + |) +type Lists() = + let a = [ + 2 + ] + let b = id [ + 2 + ] + let c = + if true then ignore [ + 2 + ] + let d = + if true then [ 1 ] else [ + 2 + ] + let e = + if true then [ + 1 + ] else [ + 2 + ] + let [ + _ + ] as f = [ + 2 + ] + let [ + _ + ] = [ + 3 + ] + static let a' = [ + 2 + ] + static let b' = id [ + 2 + ] + static let c' = + if true then ignore [ + 2 + ] + static let d' = + if true then [ 1 ] else [ + 2 + ] + static let e' = + if true then [ + 1 + ] else [ + 2 + ] + static let [ + _ + ] as f' = [ + 2 + ] + static let [ + _ + ] = [ + 3 + ] + static member A = [ + 2 + ] + static member B = id [ + 2 + ] + static member C = + if true then ignore [ + 2 + ] + static member D = + if true then [ 1 ] else [ + 2 + ] + static member E = + if true then [ + 1 + ] else [ + 2 + ] + static member F[ + _ + ] = [ + 2 + ] + static member G[ + _ + ] = [ + 3 + ] + member _.A' = [ + 2 + ] + member _.B' = id [ + 2 + ] + member _.C' = + if true then ignore [ + 2 + ] + member _.D' = + if true then [ 1 ] else [ + 2 + ] + member _.E' = + if true then [ + 1 + ] else [ + 2 + ] + member _.F'[ + _ + ] = [ + 2 + ] + member _.G'[ + _ + ] = [ + 3 + ] +type Arrays() = + let a = [| + 2 + |] + let b = id [| + 2 + |] + let c = + if true then ignore [| + 2 + |] + let d = + if true then [| 1 |] else [| + 2 + |] + let e = + if true then [| + 1 + |] else [| + 2 + |] + let [| + _ + |] as f = [| + 2 + |] + let [| + _ + |] = [| + 3 + |] + static let a' = [| + 2 + |] + static let b' = id [| + 2 + |] + static let c' = + if true then ignore [| + 2 + |] + static let d' = + if true then [| 1 |] else [| + 2 + |] + static let e' = + if true then [| + 1 + |] else [| + 2 + |] + static let [| + _ + |] as f' = [| + 2 + |] + static let [| + _ + |] = [| + 3 + |] + static member A = [| + 2 + |] + static member B = id [| + 2 + |] + static member C = + if true then ignore [| + 2 + |] + static member D = + if true then [| 1 |] else [| + 2 + |] + static member E = + if true then [| + 1 + |] else [| + 2 + |] + static member F[| + _ + |] = [| + 2 + |] + static member G[| + _ + |] = [| + 3 + |] + member _.A' = [| + 2 + |] + member _.B' = id [| + 2 + |] + member _.C' = + if true then ignore [| + 2 + |] + member _.D' = + if true then [| 1 |] else [| + 2 + |] + member _.E' = + if true then [| + 1 + |] else [| + 2 + |] + member _.F'[| + _ + |] = [| + 2 + |] + member _.G'[| + _ + |] = [| + 3 + |] +type Records(__:struct {| + x : unit +|}) = + let a = { + y = 2 + } + let b = id { + y = 2 + } + let c = + if true then ignore { + y = 2 + } + let d = + if true then { y = 1 } else { + y = 2 + } + let e = + if true then { + y = 1 + } else { + y = 2 + } + let { + y = _ + } as f = { + y = 2 + } + let { + y = _ + } = { + f with y = 3 + } + static let a' = { + y = 2 + } + static let b' = id { + y = 2 + } + static let c' = + if true then ignore { + y = 2 + } + static let d' = + if true then { y = 1 } else { + y = 2 + } + static let e' = + if true then { + y = 1 + } else { + y = 2 + } + static let { + y = _ + } as f' = { + y = 2 + } + static let { + y = _ + } = { + f' with y = 3 + } + static member A = { + y = 2 + } + static member B = id { + y = 2 + } + static member C = + if true then ignore { + y = 2 + } + static member D = + if true then { y = 1 } else { + y = 2 + } + static member E = + if true then { + y = 1 + } else { + y = 2 + } + static member F{ + y = _ + } = { + y = 2 + } + static member G{ + y = _ + } = { + Records.F { y = 1 } with y = 3 + } + member _.A' = { + y = 2 + } + member _.B' = id { + y = 2 + } + member _.C' = + if true then ignore { + y = 2 + } + member _.D' = + if true then { y = 1 } else { + y = 2 + } + member _.E' = + if true then { + y = 1 + } else { + y = 2 + } + member _.F'{ + y = _ + } = { + y = 2 + } + member this.G'{ + y = _ + } = { + this.F' { y = 1 } with y = 3 + } +type AnonymousRecords(x:{| + x : bool +|}) = + let a = {| + y = 2 + |} + let b = id {| + y = 2 + |} + let c = + if true then ignore {| + y = 2 + |} + let d = + if true then {| y = 1 |} else {| + y = 2 + |} + let e = + if true then {| + y = 1 + |} else {| + y = 2 + |} + let f : {| + y : int + |} = {| + y = 2 + |} + let g : {| + y : int + |} = {| + f with y = 3 + |} + static let a' = {| + y = 2 + |} + static let b' = id {| + y = 2 + |} + static let c' = + if true then ignore {| + y = 2 + |} + static let d' = + if true then {| y = 1 |} else {| + y = 2 + |} + static let e' = + if true then {| + y = 1 + |} else {| + y = 2 + |} + static let f' : {| + y : int + |} = {| + y = 2 + |} + static let g' : {| + y : int + |} = {| + f' with y = 3 + |} + static member A = {| + y = 2 + |} + static member B = id {| + y = 2 + |} + static member C = + if true then ignore {| + y = 2 + |} + static member D = + if true then {| y = 1 |} else {| + y = 2 + |} + static member E = + if true then {| + y = 1 + |} else {| + y = 2 + |} + static member F : {| + y : int + |} = {| + y = 2 + |} + static member G : {| + y : int + |} = {| + AnonymousRecords.F with y = 3 + |} + member _.A' = {| + y = 2 + |} + member _.B' = id {| + y = 2 + |} + member _.C' = + if true then ignore {| + y = 2 + |} + member _.D' = + if true then {| y = 1 |} else {| + y = 2 + |} + member _.E' = + if true then {| + y = 1 + |} else {| + y = 2 + |} + member _.F' : {| + y : int + |} = {| + y = 2 + |} + member this.G' : {| + y : int + |} = {| + this.F' with y = 3 + |} +type StructAnonymousRecords(x:struct{| + x : bool +|}) = + let a = struct{| + y = 2 + |} + let b = id struct{| + y = 2 + |} + let c = + if true then ignore struct{| + y = 2 + |} + let d = + if true then struct{| y = 1 |} else struct{| + y = 2 + |} + let e = + if true then struct{| + y = 1 + |} else struct{| + y = 2 + |} + let f : struct{| + y : int + |} = struct{| + y = 2 + |} + let g : struct{| + y : int + |} = struct{| + f with y = 3 + |} + static let a' = struct{| + y = 2 + |} + static let b' = id struct{| + y = 2 + |} + static let c' = + if true then ignore struct{| + y = 2 + |} + static let d' = + if true then struct{| y = 1 |} else struct{| + y = 2 + |} + static let e' = + if true then struct{| + y = 1 + |} else struct{| + y = 2 + |} + static let f' : struct{| + y : int + |} = struct{| + y = 2 + |} + static let g' : struct{| + y : int + |} = struct{| + f' with y = 3 + |} + static member A = struct{| + y = 2 + |} + static member B = id struct{| + y = 2 + |} + static member C = + if true then ignore struct{| + y = 2 + |} + static member D = + if true then struct{| y = 1 |} else struct{| + y = 2 + |} + static member E = + if true then struct{| + y = 1 + |} else struct{| + y = 2 + |} + static member F : struct{| + y : int + |} = struct{| + y = 2 + |} + static member G : struct{| + y : int + |} = struct{| + AnonymousRecords.F with y = 3 + |} + member _.A' = struct{| + y = 2 + |} + member _.B' = id struct{| + y = 2 + |} + member _.C' = + if true then ignore struct{| + y = 2 + |} + member _.D' = + if true then struct{| y = 1 |} else struct{| + y = 2 + |} + member _.E' = + if true then struct{| + y = 1 + |} else struct{| + y = 2 + |} + member _.F' : struct{| + y : int + |} = struct{| + y = 2 + |} + member this.G' : struct{| + y : int + |} = struct{| + this.F' with y = 3 + |} +type TypedQuotations(x: +int Quotations.Expr) = + let a = <@ + 2 + @> + let b = id <@ + 2 + @> + let c = + if true then ignore <@ + 2 + @> + let d = + if true then <@ 1 @> else <@ + 2 + @> + let e = + if true then <@ + 1 + @> else <@ + 2 + @> + let (ActivePatterns.B <@ + 2 + @> _) as f = <@ + 2 + @> + let (ActivePatterns.B <@ + 2 + @> _) = <@ + 3 + @> + static let a' = <@ + 2 + @> + static let b' = id <@ + 2 + @> + static let c' = + if true then ignore <@ + 2 + @> + static let d' = + if true then <@ 1 @> else <@ + 2 + @> + static let e' = + if true then <@ + 1 + @> else <@ + 2 + @> + static let (ActivePatterns.B <@ + 2 + @> _) as f' = <@ + 2 + @> + static let (ActivePatterns.B <@ + 2 + @> _) = <@ + 3 + @> + static member A = <@ + 2 + @> + static member B = id <@ + 2 + @> + static member C = + if true then ignore <@ + 2 + @> + static member D = + if true then <@ 1 @> else <@ + 2 + @> + static member E = + if true then <@ + 1 + @> else <@ + 2 + @> + static member F(ActivePatterns.B <@ + 2 + @> _) = <@ + 2 + @> + static member G(ActivePatterns.B <@ + 2 + @> _) = <@ + 3 + @> + member _.A' = <@ + 2 + @> + member _.B' = id <@ + 2 + @> + member _.C' = + if true then ignore <@ + 2 + @> + member _.D' = + if true then <@ 1 @> else <@ + 2 + @> + member _.E' = + if true then <@ + 1 + @> else <@ + 2 + @> + member _.F'(ActivePatterns.B <@ + 2 + @> _) = <@ + 2 + @> + member _.G'(ActivePatterns.B <@ + 2 + @> _) = <@ + 3 + @> +type UntypedQuotations(x: +Quotations.Expr) = + let a = <@@ + 2 + @@> + let b = id <@@ + 2 + @@> + let c = + if true then ignore <@@ + 2 + @@> + let d = + if true then <@@ 1 @@> else <@@ + 2 + @@> + let e = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + let (ActivePatterns.B <@@ + 2 + @@> _) as f = <@@ + 2 + @@> + let (ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 3 + @@> + static let a' = <@@ + 2 + @@> + static let b' = id <@@ + 2 + @@> + static let c' = + if true then ignore <@@ + 2 + @@> + static let d' = + if true then <@@ 1 @@> else <@@ + 2 + @@> + static let e' = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + static let (ActivePatterns.B <@@ + 2 + @@> _) as f' = <@@ + 2 + @@> + static let (ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 3 + @@> + static member A = <@@ + 2 + @@> + static member B = id <@@ + 2 + @@> + static member C = + if true then ignore <@@ + 2 + @@> + static member D = + if true then <@@ 1 @@> else <@@ + 2 + @@> + static member E = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + static member F(ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 2 + @@> + static member G(ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 3 + @@> + member _.A' = <@@ + 2 + @@> + member _.B' = id <@@ + 2 + @@> + member _.C' = + if true then ignore <@@ + 2 + @@> + member _.D' = + if true then <@@ 1 @@> else <@@ + 2 + @@> + member _.E' = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + member _.F'(ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 2 + @@> + member _.G'(ActivePatterns.B <@@ + 2 + @@> _) = <@@ + 3 + @@> +type Generics(__:Id< + obj +>) = + let a : Id< + 'T + > = id< + 'T + > + let b = id< + int + > + let c = + if true then ignore id< + int + > + let d = + if true then id else id< + int + > + let e = + if true then id< + int + > else id< + int + > + static let a' : Id< + 'T + > = id< + 'T + > + static let b' = id< + int + > + static let c' = + if true then ignore id< + int + > + static let d' = + if true then id else id< + int + > + static let e' = + if true then id< + int + > else id< + int + > + static member A< + 'T + >() = id< + 'T + > + static member B = id< + int + > + static member C = + if true then ignore id< + int + > + static member D = + if true then id else id< + int + > + static member E = + if true then id< + int + > else id< + int + > + member _.A'< + 'T + >() = id< + 'T + > + member _.B' = id< + int + > + member _.C' = + if true then ignore id< + int + > + member _.D' = + if true then id else id< + int + > + member _.E' = + if true then id< + int + > else id< + int + > +let BeginEnd = + let a = begin + 2 + end + let b = id begin + 2 + end + let c = + if true then ignore begin + 2 + end + let d = + if true then begin 1 end else begin + 2 + end + let e = + if true then begin + 1 + end else begin + 2 + end + let ( + _ + ) as f = begin + 2 + end + let ( + _ + ) = begin + 3 + end + let h = + if begin + true + end + then begin + end + let i = + if x' begin + false + end + then begin + end + let a0 = begin 2 = + 2 + end + let b0 = x begin y = + 2 + end + let c0 = + if true then x begin y = + 2 + end + let d0 = + if true then x begin y = 1 end else x begin y = + 2 + end + let e0 = + if true then x begin y = + 1 + end else x begin y = + 2 + end + let ( + _ + ) as f0 = x begin y = + 2 + end + let ( + _ + ) = begin 2 = + 3 + end + let h0 = + if begin 2 = + 2 + end + then begin + end + let i0 = + if x' begin y = + true + end + then begin + end + let a1 = begin 2 = 2, + 3 = 2 + end + let b1 = x begin y = 2, + z = 2 + end + let c1 = + if true then x begin y = 2, + z = 3 + end + let d1 = + if true then x begin y = 1 end else x begin y = 2, + z = 3 + end + let e1 = + if true then x begin y = 1, + z = 3 + end else x begin y = 2, + z = 3 + end + let ( + _ + ) as f1 = x begin y = 2, + z = 3 + end + let ( + _ + ) = begin 2 = 3, + 3 = 3 + end + let h1 = + if begin 2 = 2 |> ignore; + 3 = 3 + end + then begin + end + let i1 = + if x' begin y = true, + z = false + end + then begin + end + begin 1 + end +let Parens = + let a = ( + 2 + ) + let b = id ( + 2 + ) + let c = + if true then ignore ( + 2 + ) + let d = + if true then ( 1 ) else ( + 2 + ) + let e = + if true then ( + 1 + ) else ( + 2 + ) + let ( + _ + ) as f = ( + 2 + ) + let ( + _ + ) = ( + 3 + ) + let a0 = (2 = + 2 + ) + let b0 = x (y = + 2 + ) + let c0 = + if true then x (y = + 2 + ) + let d0 = + if true then x ( y = 1 ) else x (y = + 2 + ) + let e0 = + if true then x (y = + 1 + ) else x (y = + 2 + ) + let ( + _ + ) as f0 = x (y = + 2 + ) + let ( + _ + ) = (2 = + 3 + ) + let a1 = (2 = 2, + 3 = 3 + ) + let b1 = x (y = 2, + z = 3 + ) + let c1 = + if true then x (y = 2, + z = 3 + ) + let d1 = + if true then x ( y = 1 ) else x (y = 2, + z = 3 + ) + let e1 = + if true then x (y = 1, + z = 3 + ) else x (y = 2, + z = 3 + ) + let ( + _ + ) as f1 = x (y = 2, + z = 3 + ) + let ( + _ + ) = (2 = 3, + 3 = 3 + ) + ( 1 + ) +// These are lexed differently but it's visually appealing to still include +let ActivePatterns<'a> = + let (| + A + |) = id + let (| + B + |) _ = (| + A + |) + let (|C|) = + if true then ignore (| + A + |) + let d = + if true then (| A |) else (| + A + |) + let e = + if true then (| + A + |) else (| + A + |) + let (| + F + | + _ + |) as f = Some (| + C + |) + let (| + G + | + _ + |) = (| + F + | + _ + |) + (| A + |) +let Lists = + let a = [ + 2 + ] + let b = id [ + 2 + ] + let c = + if true then ignore [ + 2 + ] + let d = + if true then [ 1 ] else [ + 2 + ] + let e = + if true then [ + 1 + ] else [ + 2 + ] + let [ + _ + ] as f = [ + 2 + ] + let [ + _ + ] = [ + 3 + ] + let a0 = [ 2 = + 2 + ] + let b0 = x [ 2 = + 2 + ] + let c0 = + if true then x [ 2 = + 2 + ] + let d0 = + if true then x [ 2 = 1 ] else x [ 2 = + 2 + ] + let e0 = + if true then x [ 2 = + 1 + ] else x [ 2 = + 2 + ] + let [ + _ + ] as f0 = x' [ 2 = + 2 + ] + let [ + _ + ] = [ 2 = + 3 + ] + let a1 = [ 2 = 2, + 3 = 3 + ] + let b1 = x [ 2 = 2, + 3 = 3 + ] + let c1 = + if true then x [ 2 = 2, + 3 = 3 + ] + let d1 = + if true then x [ 2 = 1 ] else x [ 2 = 2, + 3 = 3 + ] + let e1 = + if true then x [ 2 = 1, + 3 = 3 + ] else x [ 2 = 2, + 3 = 3 + ] + let [ + _ + ] as f1 = x' [ 2 = 2, + 3 = 3 + ] + let [ + _ + ] = [ 2 = 3, + 3 = 3 + ] + [ 1 + ] +let Arrays = + let a = [| + 2 + |] + let b = id [| + 2 + |] + let c = + if true then ignore [| + 2 + |] + let d = + if true then [| 1 |] else [| + 2 + |] + let e = + if true then [| + 1 + |] else [| + 2 + |] + let [| + _ + |] as f = [| + 2 + |] + let [| + _ + |] = [| + 3 + |] + let a0 = [| 2 = + 2 + |] + let b0 = x [| 2 = + 2 + |] + let c0 = + if true then x [| 2 = + 2 + |] + let d0 = + if true then x [| 2 = 1 |] else x [| 2 = + 2 + |] + let e0 = + if true then x [| 2 = + 1 + |] else x [| 2 = + 2 + |] + let [| + _ + |] as f0 = x' [| 2 = + 2 + |] + let [| + _ + |] = [| 2 = + 3 + |] + let a1 = [| 2 = 2, + 3 = 3 + |] + let b1 = x [| 2 = 2, + 3 = 3 + |] + let c1 = + if true then x [| 2 = 2, + 3 = 3 + |] + let d1 = + if true then x [| 2 = 1 |] else x [| 2 = 2, + 3 = 3 + |] + let e1 = + if true then x [| 2 = 1, + 3 = 3 + |] else x [| 2 = 2, + 3 = 3 + |] + let [| + _ + |] as f1 = x' [| 2 = 2, + 3 = 3 + |] + let [| + _ + |] = [| 2 = 3, + 3 = 3 + |] + [| 1 + |] +let Records = + let a = { + y = 2 + } + let b = id { + y = 2 + } + let c = + if true then ignore { + y = 2 + } + let d = + if true then { y = 1 } else { + y = 2 + } + let e = + if true then { + y = 1 + } else { + y = 2 + } + let { + y = _ + } as f = { + y = 2 + } + let { + y = _ + } = { + f with y = 3 + } + let a0 = { y = + 2 + } + let b0 = x { y = + 2 + } + let c0 = + if true then x { y = + 2 + } + let d0 = + if true then x { y = 1 } else x { y = + 2 + } + let e0 = + if true then { y = + 1 + } else { y = + 2 + } + let { z = { + y = _ + }} as f0 = { z = { + y = 2 + }; x = 1} + let { z = { + y = _ + }} = { f0 with z = { + y = 3 + } + } + let a1 = { x = 2; + z = { y = 3 } + } + let b1 = x { x = 2; + z = { y = 3 } + } + let c1 = + if true then x { x = 2; + z = { y = 3 } + } + let d1 = + if true then x { y = 1 } else x { x = 2; + z = { y = 3 } + } + let e1 = + if true then { x = 1; + z = { y = 3 } + } else { x = 2; + z = { y = 3 } + } + let { z = { + y = _ + }} as f1 = { x = 1; + z = { + y = 2 + } } + let { x = _; z = { + y = _ + }} = { f1 with x = 2; z = { + y = 3 + } + } + { y = 1 + } +let AnonymousRecords = + let a = {| + y = 2 + |} + let b = id {| + y = 2 + |} + let c = + if true then ignore {| + y = 2 + |} + let d = + if true then {| y = 1 |} else {| + y = 2 + |} + let e = + if true then {| + y = 1 + |} else {| + y = 2 + |} + let f : {| + y : int + |} = {| + y = 2 + |} + let g : {| + y : int + |} = {| + f with y = 3 + |} + let a0 = {| y = + 2 + |} + let b0 = x {| y = + 2 + |} + let c0 = + if true then x {| y = + 2 + |} + let d0 = + if true then x {| y = 1 |} else x {| y = + 2 + |} + let e0 = + if true then x {| y = + 1 + |} else x {| y = + 2 + |} + let f0 : {| y : + int + |} = x' {| y = + 2 + |} + let g0 : {| x : int; + y : int; z : int + |} = {| f0 with x = 1 + z = 3 + |} + let a1 = {| y = 2; + z = 3 + |} + let b1 = x {| y = 2; + z = 3 + |} + let c1 = + if true then x {| y = 2; + z = 3 + |} + let d1 = + if true then x {| y = 1 |} else x {| y = 2; + z = 3 + |} + let e1 = + if true then x {| y = 1; + z = 3 + |} else x {| y = 2; + z = 3 + |} + let f1 : {| y : int; + z : int + |} = x' {| y = 2; + z = 3 + |} + let g1 : {| x : int; + y : int; z : int + |} = {| f1 with x = 1; + z = 3 + |} + {| y = 1 + |} +let StructAnonymousRecords = + let a = struct {| + y = 2 + |} + let b = id struct {| + y = 2 + |} + let c = + if true then ignore struct {| + y = 2 + |} + let d = + if true then struct {| y = 1 |} else struct {| + y = 2 + |} + let e = + if true then struct {| + y = 1 + |} else struct {| + y = 2 + |} + let f : struct {| + y : int + |} = struct {| + y = 2 + |} + let g : struct {| + y : int + |} = struct {| + f with y = 3 + |} + let a0 = struct {| y = + 2 + |} + let b0 = id struct {| y = + 2 + |} + let c0 = + if true then ignore struct {| y = + 2 + |} + let d0 = + if true then struct {| y = 1 |} else struct {| y = + 2 + |} + let e0 = + if true then struct {| y = + 1 + |} else struct {| y = + 2 + |} + let f0 : struct {| y : + int + |} = x' struct {| y = + 2 + |} + let g0 : struct {| x : int; + y : int; z : int + |} = struct {| f with x = 1 + z = 3 + |} + let a1 = struct {| y = 2; + z = 3 + |} + let b1 = x struct {| y = 2; + z = 3 + |} + let c1 = + if true then x struct {| y = 2; + z = 3 + |} + let d1 = + if true then x struct {| y = 1 |} else x struct {| y = 2; + z = 3 + |} + let e1 = + if true then x struct {| y = 1; + z = 3 + |} else x struct {| y = 2; + z = 3 + |} + let f1 : struct {| y : int; + z : int + |} = x' struct {| y = 2; + z = 3 + |} + let g1 : struct {| x : int; + y : int; z : int + |} = struct {| f1 with x = 1; + z = 3 + |} + struct {| y = 1 + |} +let TypedQuotations = + let a = <@ + 2 + @> + let b = id <@ + 2 + @> + let c = + if true then ignore <@ + 2 + @> + let d = + if true then <@ 1 @> else <@ + 2 + @> + let e = + if true then <@ + 1 + @> else <@ + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> f) = <@ + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> _) = <@ + 2 + @> + let a0 = <@ 2 = + 2 + @> + let b0 = x <@ 2 = + 2 + @> + let c0 = + if true then x <@ 2 = + 2 + @> + let d0 = + if true then x <@ 2 = 1 @> else x <@ 2 = + 2 + @> + let e0 = + if true then x <@ 2 = + 1 + @> else x <@ 2 = + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> f0) = x' <@ 2 = + 2 + @> + let (ActivePatterns.B <@ 2 = + 2 + @> _) = <@ 2 = + 2 + @> + let a1 = <@ 2 = 2, + 3 = 3 + @> + let b1 = x <@ 2 = 2, + 3 = 3 + @> + let c1 = + if true then x <@ 2 = 2, + 3 = 3 + @> + let d1 = + if true then x <@ 2 = 1 @> else x <@ 2 = 2, + 3 = 3 + @> + let e1 = + if true then x <@ 2 = 1, + 3 = 3 + @> else x <@ 2 = 2, + 3 = 3 + @> + let (ActivePatterns.B <@ 2 = 2, + 3 = 3 + @> f1) = x' <@ 2 = 2, + 3 = 3 + @> + let (ActivePatterns.B <@ 2 = 2, + 3 = 3 + @> _) = <@ 2 = 2, + 3 = 3 + @> + <@ 1 + @> +let UntypedQuotations = + let a = <@@ + 2 + @@> + let b = id <@@ + 2 + @@> + let c = + if true then ignore <@@ + 2 + @@> + let d = + if true then <@@ 1 @@> else <@@ + 2 + @@> + let e = + if true then <@@ + 1 + @@> else <@@ + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> f) = <@@ + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> _) = <@@ + 2 + @@> + let a0 = <@@ 2 = + 2 + @@> + let b0 = x <@@ 2 = + 2 + @@> + let c0 = + if true then x <@@ 2 = + 2 + @@> + let d0 = + if true then x <@@ 2 = 1 @@> else x <@@ 2 = + 2 + @@> + let e0 = + if true then x <@@ 2 = + 1 + @@> else x <@@ 2 = + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> f0) = x' <@@ 2 = + 2 + @@> + let (ActivePatterns.B <@@ 2 = + 2 + @@> _) = <@@ 2 = + 2 + @@> + let a1 = <@@ 2 = 2, + 3 = 3 + @@> + let b1 = x <@@ 2 = 2, + 3 = 3 + @@> + let c1 = + if true then x <@@ 2 = 2, + 3 = 3 + @@> + let d1 = + if true then x <@@ 2 = 1 @@> else x <@@ 2 = 2, + 3 = 3 + @@> + let e1 = + if true then x <@@ 2 = 1, + 3 = 3 + @@> else x <@@ 2 = 2, + 3 = 3 + @@> + let (ActivePatterns.B <@@ 2 = 2, + 3 = 3 + @@> f1) = x' <@@ 2 = 2, + 3 = 3 + @@> + let (ActivePatterns.B <@@ 2 = 2, + 3 = 3 + @@> _) = <@@ 2 = 2, + 3 = 3 + @@> + <@@ 1 + @@> +let Generics = + // Unlike 'end' / ')' / '|)' / ']' / '|]' / '}' / '|}', + // '>' terminates the declaration automatically, + // so you must indent non-terminating '>'s by at least one space + let a : Id< + 'T + > = id< + 'T + > + let b = id< + int + > + let c = + if true then ignore id< + int + > + let d = + if true then id else id< + int + > + let e = + if true then id< + int + > else id< + int + > + let f : Id<'T + > = id< + 'T + > + let a0 : Id<'T * ( + 'T + )> = id<'T * + 'T + > + let b0 = x id + let c0 = + if true then x id + let d0 = + if true then x id else x id + let e0 = + if true then x id else x id + let f0 : Id< + int + > = id |> x'> + let a1 : Id2<'T, + 'T + > = id2<'T, + 'T + > + let b1 = x id2 + let c1 = + if true then x id2 + let d1 = + if true then x id2 else x id2 + let e1 = + if true then x id2 else x id2 + let f1 : Id2 = id2 |> x'> + id + +type Foo ( + y: int, + x: int +) = + // https://github.com/fsharp/fslang-suggestions/issues/931 + let g = System.DateTime( + year = 2020, + month = 12, + day = 1 + ) + member _.Bar( + a: int, + b: int + ) = + let g = System.DateTime( + year = 2020, + month = 12, + day = 1 + ) + + // https://github.com/fsharp/fslang-suggestions/issues/833 + match + 2 + with 2 -> () + match + 2 + with | 2 -> () + match + 2 + with + | 2 -> () + match + match + match + 1 + with _ -> 2 + with + | _ -> 3 + with + | 4 -> () + match + try + match + 1 + with | _ -> 2 + with + _ -> 3 + with + 4 -> g + static member Baz( + _ + ) = () + +// https://github.com/fsharp/fslang-suggestions/issues/786 +let f' x = x +let a = f' [ + 2 // List: OK +] +let b = [| + 2 // Array: OK +|] +type X = { X : int } +let c = f' { + X = 2 // Record: OK +} +let d = f' {| + X = 2 (* FS0058 Possible incorrect indentation: +this token is offside of context started at position (12:11). +Try indenting this token further or using standard formatting conventions. *) +|} +let e = f' {| + X = 2 // Indenting further is needed + |} + +open System +// https://github.com/fsharp/fslang-suggestions/issues/724 +type SixAccessViolations(a:AccessViolationException, + b:AccessViolationException, c:AccessViolationException, + d:AccessViolationException, e:AccessViolationException, + f:AccessViolationException) = + class end +type SixAccessViolations2( + a:AccessViolationException, + b:AccessViolationException, c:AccessViolationException, + d:AccessViolationException, e:AccessViolationException, + f:AccessViolationException) = + class end +type SixAccessViolations3( + a:AccessViolationException, + b:AccessViolationException, c:AccessViolationException, + d:AccessViolationException, e:AccessViolationException, + f:AccessViolationException +) = class end + +// https://github.com/dotnet/fsharp/issues/3326 +// https://github.com/fsharp/fslang-suggestions/issues/868 +open System.IO + +type message = +| HeatUp +| CoolDown + +let climateControl1 = MailboxProcessor.Start( fun inbox -> + // NOTE compiles + let rec heating() = async { + printfn "Heating" + let! msg = inbox.Receive() + match msg with + | CoolDown -> return! cooling() + | _ -> return! heating() + } // NOTE placement of } + and cooling() = async { + printfn "Cooling" + let! msg = inbox.Receive() + match msg with + | HeatUp -> return! heating() + | _ -> return! cooling() + } // NOTE placement of } + + heating() +) + +let climateControl2 = MailboxProcessor.Start(fun inbox -> + // NOTE compiles + let rec heating() = async { + printfn "Heating" + let! msg = inbox.Receive() + match msg with + | CoolDown -> return () + | _ -> return! heating() + } // NOTE placement of } + heating() +) + +let climateControl3 = MailboxProcessor.Start(fun inbox -> + // NOTE does not compile + let rec heating() = async { + printfn "Heating" + let! msg = inbox.Receive() + match msg with + | CoolDown -> return! cooling() + | _ -> return! heating() + } // NOTE placement of } + and cooling() = async { + printfn "Cooling" + let! msg = inbox.Receive() + match msg with + | HeatUp -> return! heating() + | _ -> return! cooling() + } // NOTE placement of } + + heating() +) + +// https://github.com/dotnet/fsharp/issues/10852 +let f _ b = b +let g _ b = b + +let aaaaa<'t> = f >> g + +let bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb = 42 +let cc = 43 + +aaaaa ( + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + cc +) () + +(f >> g) ( + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + cc +) begin end + +// https://github.com/dotnet/fsharp/issues/10929 + +let a' = System.Text.RegularExpressions.Regex.IsMatch( + "myInput", + """^[a-zA-Z][a-zA-Z0-9']+$""" +) + +if System.Text.RegularExpressions.Regex.IsMatch( + "myInput", + """^[a-zA-Z][a-zA-Z0-9']+$""" + ) then + () + +// Some random cases + +for i in <@ + 1 +@> |> box |> unbox do () +while <@@ + 1 +@@> |> box |> unbox do () +do ignore <| <@@ + 1 +@@> + +function +| { + y = 6 +} -> () +<| { + y = 7 +} +function +| { + y = 6 +} when { + y = 2 +} = { + y = 3 +} -> () +<| { + y = 7 +} +function { + y = 6 + } when { + y = 2 + } = { + y = 3 + } -> () +<| { + y = 7 +} + +exception J of {| + r : int +|} + +// https://github.com/fsharp/fslang-suggestions/issues/470 + +type ColorAxis(values : int[], + colors: string[] +) = struct + member _.Values = values + member _.Colors = colors +end +type Options(colorAxis: ColorAxis) = class + member _.ColorAxis = colorAxis +end +type Geo = Geo +module Chart = + let Geo _ = Geo + let WithOptions ( + _: Options + ) Geo = () +let ( + => + ) _ = id +let wb = {| + Countries = [| + {| + Name = "" + Indicators = {| + ``CO2 emissions (kt)`` = dict [ + 2010, () + ] + |} + |} + |] +|} +let ( + series +) = ignore +let ( + growth +) = ignore + +(* +Currently, the general rules for indentation in F# is that the code on +the next line should be indented further than the thing that determines +its starting point on the previous line. + +There are a number of cases where this quite annoyingly means that you +have to indent things very far (or, to avoid that, add lots of +unnecessary line breaks). One example is when you have nesting in a +method call. For example: +*) +Chart.Geo(growth) +|> Chart.WithOptions(Options(colorAxis=ColorAxis(values=[| -100;0;100;200;1000 |], colors=[| "#77D53D";"#D1C855";"#E8A958";"#EA4C41";"#930700" |]))) +(* +Now, there is almost no way to make this code snippet look decent. I would +want to write something like this: +*) +Chart.Geo(growth) +|> Chart.WithOptions(Options(colorAxis=ColorAxis(values=[| -100;0;100;200;1000 |], + colors=[| "#77D53D";"#D1C855";"#E8A958";"#EA4C41";"#930700" |]))) +(* +But this is not allowed, because "colors" should start after the opening +parenthesis of ColorAxis, so I would need 50 spaces! To make the number of +spaces smaller, you can add additional newline (to get the "ColorAxis" more to +the left), but this looks pretty bad: +*) +Chart.Geo(growth) +|> Chart.WithOptions + (Options + (colorAxis = + ColorAxis + (values=[| -100;0;100;200;1000 |], + colors=[| "#77D53D";"#D1C855";"#E8A958";"#EA4C41";"#930700" |]))) +(* +Another example is very similar, but with list expressions. +I want to write: +*) +// let pop2010 = series [ for c in wb.Countries -> +// c.Name => c.Indicators.``CO2 emissions (kt)``.[2010]] +// NOTE: That is probably is too much of an undentation. Try this instead: +let pop2010 = series [ + for c in wb.Countries -> + c.Name => c.Indicators.``CO2 emissions (kt)``.[2010]] + +(* +This actually works, but it gives warning. Again, it wants me to indent the +second line so that it is after "for", but then I'm not saving pretty much +anything by the newline. Or, I can introduce lots of additional newlines +and write: +*) +let pop2011 = + series + [ for c in wb.Countries -> + c.Name => c.Indicators.``CO2 emissions (kt)``.[2010]] +(* +I think that in situations like these, the rules should be relaxed. +In particular, we should not require new line to be intended further +than the "starting thing" on the previous line. Just further than the +previous line. +*) + +let foo = ([| + 1 + 2 +|]) + +let bar = [| + 1 + 2 +|] \ No newline at end of file diff --git a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl new file mode 100644 index 00000000000..bf7a5372418 --- /dev/null +++ b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl @@ -0,0 +1,48 @@ +RelaxWhitespace2.fs (291,9)-(293,12) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (296,9)-(298,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (321,9)-(323,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (326,9)-(328,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (351,9)-(353,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (356,9)-(358,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (382,9)-(384,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (387,9)-(389,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (412,9)-(414,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (417,9)-(419,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (442,9)-(444,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (447,9)-(449,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1439,9)-(1441,12) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1444,9)-(1446,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1469,16)-(1471,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1474,16)-(1476,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1499,20)-(1501,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1504,20)-(1506,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1529,16)-(1531,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1534,16)-(1536,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1560,9)-(1562,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1565,9)-(1567,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1590,16)-(1592,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1595,16)-(1597,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1620,20)-(1622,8) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1625,20)-(1627,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1650,16)-(1652,8) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (1655,16)-(1657,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2714,9)-(2716,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2709,9)-(2711,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2684,9)-(2686,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2679,9)-(2681,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2654,9)-(2656,6) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2649,9)-(2651,12) typecheck warning Incomplete pattern matches on this expression. For example, the value '[_;_]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2807,9)-(2809,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2802,9)-(2804,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2777,9)-(2779,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2772,9)-(2774,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2747,9)-(2749,7) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (2742,9)-(2744,13) typecheck warning Incomplete pattern matches on this expression. For example, the value '[|_; _|]' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3391,13)-(3391,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3394,13)-(3394,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3397,13)-(3397,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3403,21)-(3403,22) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3410,13)-(3415,20) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3567,1)-(3567,9) typecheck warning Incomplete pattern matches on this expression. For example, the value '{y=0}' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3574,1)-(3574,9) typecheck warning Incomplete pattern matches on this expression. +RelaxWhitespace2.fs (3585,1)-(3585,9) typecheck warning Incomplete pattern matches on this expression. \ No newline at end of file diff --git a/tests/FSharp.Test.Utilities/Compiler.fs b/tests/FSharp.Test.Utilities/Compiler.fs index f5f91523128..20b0d458e21 100644 --- a/tests/FSharp.Test.Utilities/Compiler.fs +++ b/tests/FSharp.Test.Utilities/Compiler.fs @@ -20,11 +20,12 @@ open System.Text.RegularExpressions module rec Compiler = + type BaselineFile = { FilePath: string; Content: string option } type Baseline = { SourceFilename: string option - OutputBaseline: string option - ILBaseline: string option } + OutputBaseline: BaselineFile + ILBaseline: BaselineFile } type TestType = | Text of string @@ -516,17 +517,15 @@ module rec Compiler = | _ -> failwith "FSI running only supports F#." - let private createBaselineErrors (baseline: Baseline) (actualErrors: string) extension : unit = - match baseline.SourceFilename with - | Some f -> FileSystem.OpenFileForWriteShim(Path.ChangeExtension(f, extension)).Write(actualErrors) - | _ -> () + let private createBaselineErrors (baselineFile: BaselineFile) (actualErrors: string) : unit = + FileSystem.OpenFileForWriteShim(baselineFile.FilePath + ".err").Write(actualErrors) let private verifyFSBaseline (fs) : unit = match fs.Baseline with | None -> failwith "Baseline was not provided." | Some bsl -> let errorsExpectedBaseLine = - match bsl.OutputBaseline with + match bsl.OutputBaseline.Content with | Some b -> b.Replace("\r\n","\n") | None -> String.Empty @@ -535,7 +534,7 @@ module rec Compiler = let errorsActual = (typecheckDiagnostics |> Array.map (sprintf "%A") |> String.concat "\n").Replace("\r\n","\n") if errorsExpectedBaseLine <> errorsActual then - createBaselineErrors bsl errorsActual "fs.bsl.err" + createBaselineErrors bsl.OutputBaseline errorsActual Assert.AreEqual(errorsExpectedBaseLine, errorsActual) @@ -563,13 +562,13 @@ module rec Compiler = | None -> failwith "Operation didn't produce any output!" | Some p -> let expectedIL = - match bsl.ILBaseline with + match bsl.ILBaseline.Content with | Some b -> b.Replace("\r\n","\n") | None -> String.Empty let (success, errorMsg, actualIL) = ILChecker.verifyILAndReturnActual p expectedIL if not success then - createBaselineErrors bsl actualIL "fs.il.err" + createBaselineErrors bsl.ILBaseline actualIL Assert.Fail(errorMsg) let verifyILBaseline (cUnit: CompilationUnit) : CompilationUnit = diff --git a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs index 824c9f22a19..9213428cd3d 100644 --- a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs +++ b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs @@ -40,8 +40,8 @@ type DirectoryAttribute(dir: string) = { Source = Text fsSource Baseline = Some { SourceFilename = Some (path ++ fs) - OutputBaseline = bslSource - ILBaseline = ilSource } + OutputBaseline = { FilePath = bslFilePath; Content = bslSource } + ILBaseline = { FilePath = ilFilePath; Content = ilSource } } Options = [] OutputType = Library SourceKind = SourceKind.Fsx @@ -49,7 +49,7 @@ type DirectoryAttribute(dir: string) = IgnoreWarnings = false References = [] } |> FS - member x.Includes with get() = includes and set v = includes <- v + member _.Includes with get() = includes and set v = includes <- v override _.GetData(_: MethodInfo) = let absolutePath = Path.GetFullPath(directory) From 30399a4941433f993a4b026a8f3f34194e8baf68 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Fri, 2 Jul 2021 14:21:46 +0800 Subject: [PATCH 02/24] Update LexFilter.fs --- src/fsharp/LexFilter.fs | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index cd33da33972..1a20892900a 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -1659,25 +1659,25 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // No change to offside stack: another statement block starts... insertTokenFromPrevPosToCurrentPos OBLOCKSEP - // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns - // let ( member Foo ( for x in ( while ( - // ... ... ... ... - // ) = ... ) = ... ) do ... ) do ... - // let [ member Foo [ for x in [ while f [ - // ... ... ... ... - // ] = ... ] = ... ] do ... ] do ... - // let { member Foo { for x in { while f { - // ... ... ... ... - // } = ... } = ... } do ... } do ... - // let [| member Foo [| for x in [| while f [| - // ... ... ... ... - // |] = ... |] = ... |] do ... |] do ... - // let x : {| member Foo : {| for x in f {| while f {| - // ... ... ... ... - // |} = ... |} = ... |} do ... |} do ... - // let x : Foo< - // ... - // > = ... // Due to current lexing, this is currently not achievable + // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns (given RelaxWhitespace2) + // let ( member Foo ( for x in ( while ( + // ... ... ... ... + // ) = ... ) = ... ) do ... ) do ... + // let [ member Foo [ for x in [ while f [ + // ... ... ... ... + // ] = ... ] = ... ] do ... ] do ... + // let { member Foo { for x in { while f { + // ... ... ... ... + // } = ... } = ... } do ... } do ... + // let [| member Foo [| for x in [| while f [| + // ... ... ... ... + // |] = ... |] = ... |] do ... |] do ... + // let x : {| member Foo : {| for x in f {| while f {| + // ... ... ... ... + // |} = ... |} = ... |} do ... |} do ... + // let x : Foo< member x : Foo< for x in foo< for x in foo< + // ... ... ... ... + // > = ... > = ... > = ... > = ... // type Foo( // ... // ) = ... From 128c57fa4fd16c567d0a574372bf70876296bbb6 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Sat, 3 Jul 2021 01:40:40 +0800 Subject: [PATCH 03/24] Backcompat --- src/fsharp/LexFilter.fs | 172 +- .../Basic/OffsideExceptions.fs | 1943 +++++++++++------ .../OffsideExceptions/RelaxWhitespace2.fs | 291 ++- .../OffsideExceptions/RelaxWhitespace2.fs.bsl | 6 +- tests/FSharp.Test.Utilities/Compiler.fs | 6 +- .../Xunit/Attributes/DirectoryAttribute.fs | 11 +- 6 files changed, 1596 insertions(+), 833 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index 1a20892900a..fe94b1594dc 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -727,33 +727,33 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // MAJOR PERMITTED UNDENTATION This is allowing: // if x then y else // let x = 3 + 4 - // x + x + // x + x // This is a serious thing to allow, but is required since there is no "return" in this language. // Without it there is no way of escaping special cases in large bits of code without indenting the main case. | CtxtSeqBlock _, (CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _rest) // Permitted inner-construct precise block alignment: // interface ... - // with ... - // end + // with ... + // end // // type ... - // with ... - // end + // with ... + // end | CtxtWithAsAugment _, ((CtxtInterfaceHead _ | CtxtMemberHead _ | CtxtException _ | CtxtTypeDefns _) as limitCtxt :: _rest) // Permitted inner-construct (e.g. "then" block and "else" block in overall // "if-then-else" block ) block alignment: // if ... // then expr - // elif expr - // else expr + // elif expr + // else expr | (CtxtIf _ | CtxtElse _ | CtxtThen _), (CtxtIf _ as limitCtxt) :: _rest // Permitted inner-construct precise block alignment: - // while ... + // while ... // do expr - // done + // done | (CtxtDo _), ((CtxtFor _ | CtxtWhile _) as limitCtxt) :: _rest // 'try ... with' limited by 'try' @@ -769,11 +769,11 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // | ... | _, (CtxtMatchClauses _ :: (CtxtTry _ | RelaxWhitespace2 (CtxtMatch _) as limitCtxt) :: _rest) - // 'let ... = function' limited by 'let', precisely - // This covers the common form - // let f x = function - // | Case1 -> ... - // | Case2 -> ... + // 'let ... = function' limited by 'let', precisely + // This covers the common form + // let f x = function + // | Case1 -> ... + // | Case2 -> ... | CtxtMatchClauses _, (CtxtFunction _ :: CtxtSeqBlock _ :: (CtxtLetDecl _ as limitCtxt) :: _rest) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) @@ -786,7 +786,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _, (CtxtFun _ :: rest) // Permit undentation via parentheses (or begin/end) following a 'then', 'else' or 'do': - // if nr > 0 then ( + // if nr > 0 then ( // nr <- nr - 1 // acc <- d // i <- i - 1 @@ -802,7 +802,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // else // expr // rather than forcing - // if ... + // if ... // then expr // else expr // Also ...... with @@ -816,7 +816,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // e.g. // let fffffff() = function // | [] -> 0 - // | _ -> 1 + // | _ -> 1 // // Note this does not allow // let fffffff() = function _ -> @@ -841,7 +841,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. | _, RelaxWhitespace2 (CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest) - + // 'f ... {' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... {' (given no RelaxWhitespace2, added in F# 2.0, see [RFC FS-1054] less strict indentation on common DSL pattern) // (as part of FS-1054, the case (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest)) was added, rendering some cases below useless) // 'f ... [' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... [' (given no RelaxWhitespace2, added in F# 4.5 as part of [RFC FS-1054] less strict indentation on common DSL pattern) @@ -890,22 +890,22 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _, (CtxtSeqBlock _ :: CtxtParen((BEGIN | LPAREN | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) | (CtxtSeqBlock _), (CtxtParen ((BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: ((CtxtTypeDefns _ | CtxtLetDecl _ | CtxtMemberBody _ | CtxtWithAsLet _) as limitCtxt) :: _) - // 'type C = class ... ' limited by 'type' - // 'type C = interface ... ' limited by 'type' - // 'type C = struct ... ' limited by 'type' + // 'type C = class ... ' limited by 'type' + // 'type C = interface ... ' limited by 'type' + // 'type C = struct ... ' limited by 'type' | _, (CtxtParen ((CLASS | STRUCT | INTERFACE), _) :: CtxtSeqBlock _ :: (CtxtTypeDefns _ as limitCtxt) :: _) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) // Beginning indentation by at least one space when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace // -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - + // The following 3 rules were added in F# 4.7 with [FS-1070] Offside relaxations for construct and member definitions // 'type C(x:int, - // y:int' limited by 'type' (given RelaxWhitespace) + // y:int' limited by 'type' (given RelaxWhitespace but not RelaxWhitespace2) // The 'type C( // x:int' case is handled by the RelaxWhitespace2 rule above | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtTypeDefns _ as limitCtxt) :: _) // 'static member C(x:int, - // y:int' limited by 'static', likewise others (given RelaxWhitespace) + // y:int' limited by 'static', likewise others (given RelaxWhitespace but not RelaxWhitespace2) // The 'static member C( // x:int' case is handled by the RelaxWhitespace2 rule above | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtMemberHead _ as limitCtxt) :: _) @@ -916,28 +916,28 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // When it doesn't match a special rule... - // These contexts all require indentation by at least one space + // These contexts all require indentation by at least one space | _, ((CtxtInterfaceHead _ | CtxtNamespaceHead _ | CtxtModuleHead _ | CtxtException _ | CtxtModuleBody (_, false) | CtxtIf _ | CtxtWithAsLet _ | CtxtLetDecl _ | CtxtMemberHead _ | CtxtMemberBody _) as limitCtxt :: _) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - // These contexts can have their contents exactly aligning + // These contexts can have their contents exactly aligning | _, ((CtxtParen _ | CtxtFor _ | CtxtWhen _ | CtxtWhile _ | CtxtTypeDefns _ | CtxtMatch _ | CtxtModuleBody (_, true) | CtxtNamespaceBody _ | CtxtTry _ | CtxtMatchClauses _ | CtxtSeqBlock _) as limitCtxt :: _) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) match newCtxt with - // Don't bother to check pushes of Vanilla blocks since we've + // Don't bother to check pushes of Vanilla blocks since we've // always already pushed a SeqBlock at this position. - | CtxtVanilla _ + | CtxtVanilla _ // String interpolation inner expressions are not limited (e.g. multiline strings) | CtxtParen((INTERP_STRING_BEGIN_PART _ | INTERP_STRING_PART _),_) -> () - | _ -> + | _ -> let p1 = undentationLimit true offsideStack let c2 = newCtxt.StartCol - if c2 < p1.Column then - warn tokenTup - (if debug then - sprintf "possible incorrect indentation: this token is offside of context at position %s, newCtxt = %A, stack = %A, newCtxtPos = %s, c1 = %d, c2 = %d" - (warningStringOfPosition p1.Position) newCtxt offsideStack (stringOfPos (newCtxt.StartPos)) p1.Column c2 + if c2 < p1.Column then + warn tokenTup + (if debug then + sprintf "possible incorrect indentation: this token is offside of context at position %s, newCtxt = %A, stack = %A, newCtxtPos = %s, c1 = %d, c2 = %d" + (warningStringOfPosition p1.Position) newCtxt offsideStack (stringOfPos (newCtxt.StartPos)) p1.Column c2 else FSComp.SR.lexfltTokenIsOffsideOfContextStartedEarlier(warningStringOfPosition p1.Position)) let newOffsideStack = newCtxt :: offsideStack @@ -1246,6 +1246,33 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu returnToken (lexbufStateForInsertedDummyTokens (startPosOfTokenTup tokenTup, tokenTup.LexbufState.EndPos)) tok let isSemiSemi = match token with SEMICOLON_SEMICOLON -> true | _ -> false + let relaxWhitespace2OffsideRule = + // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns (given RelaxWhitespace2) + // let ( member Foo ( for x in ( while ( + // ... ... ... ... + // ) = ... ) = ... ) do ... ) do ... + // let [ member Foo [ for x in [ while f [ + // ... ... ... ... + // ] = ... ] = ... ] do ... ] do ... + // let { member Foo { for x in { while f { + // ... ... ... ... + // } = ... } = ... } do ... } do ... + // let [| member Foo [| for x in [| while f [| + // ... ... ... ... + // |] = ... |] = ... |] do ... |] do ... + // let x : {| member Foo : {| for x in f {| while f {| + // ... ... ... ... + // |} = ... |} = ... |} do ... |} do ... + // let x : Foo< member x : Foo< for x in foo< for x in foo< + // ... ... ... ... + // > = ... > = ... > = ... > = ... + // type Foo( + // ... + // ) = ... + // ODUMMY is a context closer token, after its context is closed + match token with + | ODUMMY TokenRExprParen -> lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 + | _ -> false // If you see a 'member' keyword while you are inside the body of another member, then it usually means there is a syntax error inside this method // and the upcoming 'member' is the start of the next member in the class. For better parser recovery and diagnostics, it is best to pop out of the @@ -1658,34 +1685,6 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu replaceCtxt tokenTup (CtxtSeqBlock (FirstInSeqBlock, offsidePos, addBlockEnd)) // No change to offside stack: another statement block starts... insertTokenFromPrevPosToCurrentPos OBLOCKSEP - - // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns (given RelaxWhitespace2) - // let ( member Foo ( for x in ( while ( - // ... ... ... ... - // ) = ... ) = ... ) do ... ) do ... - // let [ member Foo [ for x in [ while f [ - // ... ... ... ... - // ] = ... ] = ... ] do ... ] do ... - // let { member Foo { for x in { while f { - // ... ... ... ... - // } = ... } = ... } do ... } do ... - // let [| member Foo [| for x in [| while f [| - // ... ... ... ... - // |] = ... |] = ... |] do ... |] do ... - // let x : {| member Foo : {| for x in f {| while f {| - // ... ... ... ... - // |} = ... |} = ... |} do ... |} do ... - // let x : Foo< member x : Foo< for x in foo< for x in foo< - // ... ... ... ... - // > = ... > = ... > = ... > = ... - // type Foo( - // ... - // ) = ... - // ODUMMY is a context closer token, after its context is closed - | RelaxWhitespace2 (ODUMMY TokenRExprParen, offsideCtxt :: _) when tokenStartCol = offsideCtxt.StartCol -> - // The contents of this branch should be synced with the | ODUMMY(_), _ rule below - pool.Return tokenTup - hwTokenFetch useBlockRule // Offside rule for CtxtLetDecl // let .... = @@ -1700,13 +1699,13 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // ... // <*> | _, (CtxtLetDecl (true, offsidePos) :: _) when - isSemiSemi || (if isLetContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + isSemiSemi || (if relaxWhitespace2OffsideRule || isLetContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from LET(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND | _, (CtxtDo offsidePos :: _) - when isSemiSemi || (if isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from DO(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND @@ -1717,13 +1716,13 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // ... | _, (CtxtInterfaceHead offsidePos :: _) - when isSemiSemi || (if isInterfaceContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isInterfaceContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from INTERFACE(offsidePos=%a)! pop and reprocess\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() | _, (CtxtTypeDefns offsidePos :: _) - when isSemiSemi || (if isTypeContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isTypeContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from TYPE(offsidePos=%a)! pop and reprocess\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() @@ -1735,89 +1734,94 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // module M = ... // ... // NOTE: ;; does not terminate a whole file module body. - | _, ((CtxtModuleBody (offsidePos, wholeFile)) :: _) when (isSemiSemi && not wholeFile) || tokenStartCol <= offsidePos.Column -> + | _, ((CtxtModuleBody (offsidePos, wholeFile)) :: _) when (isSemiSemi && not wholeFile) || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from MODULE with offsidePos %a! delaying token\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() // NOTE: ;; does not terminate a 'namespace' body. - | _, ((CtxtNamespaceBody offsidePos) :: _) when (* isSemiSemi || *) (if isNamespaceContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + | _, ((CtxtNamespaceBody offsidePos) :: _) when (* isSemiSemi || *) (if relaxWhitespace2OffsideRule || isNamespaceContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from NAMESPACE with offsidePos %a! delaying token\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() - | _, ((CtxtException offsidePos) :: _) when isSemiSemi || tokenStartCol <= offsidePos.Column -> + | _, ((CtxtException offsidePos) :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from EXCEPTION with offsidePos %a! delaying token\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() // Pop CtxtMemberBody when offside. Insert an ODECLEND to indicate the end of the member - | _, ((CtxtMemberBody offsidePos) :: _) when isSemiSemi || tokenStartCol <= offsidePos.Column -> + | _, ((CtxtMemberBody offsidePos) :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from MEMBER/OVERRIDE head with offsidePos %a!\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND // Pop CtxtMemberHead when offside - | _, ((CtxtMemberHead offsidePos) :: _) when isSemiSemi || tokenStartCol <= offsidePos.Column -> + | _, ((CtxtMemberHead offsidePos) :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from MEMBER/OVERRIDE head with offsidePos %a!\n" tokenStartCol outputPos offsidePos popCtxt() reprocess() | _, (CtxtIf offsidePos :: _) - when isSemiSemi || (if isIfBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isIfBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtIf\n" popCtxt() reprocess() | _, (CtxtWithAsLet offsidePos :: _) - when isSemiSemi || (if isLetContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isLetContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtWithAsLet\n" popCtxt() insertToken OEND | _, (CtxtWithAsAugment offsidePos :: _) - when isSemiSemi || (if isWithAugmentBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isWithAugmentBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtWithAsAugment, isWithAugmentBlockContinuator = %b\n" (isWithAugmentBlockContinuator token) popCtxt() insertToken ODECLEND | _, (CtxtMatch offsidePos :: _) - when isSemiSemi || (if lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 && isMatchBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 && isMatchBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtMatch\n" popCtxt() reprocess() | _, (CtxtFor offsidePos :: _) - when isSemiSemi || (if isForLoopContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isForLoopContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtFor\n" popCtxt() reprocess() | _, (CtxtWhile offsidePos :: _) - when isSemiSemi || (if isWhileBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isWhileBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtWhile\n" popCtxt() reprocess() | _, (CtxtWhen offsidePos :: _) - when isSemiSemi || tokenStartCol <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtWhen\n" popCtxt() reprocess() | _, (CtxtFun offsidePos :: _) - when isSemiSemi || tokenStartCol <= offsidePos.Column -> + // fun () -> async { + // 1 + // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator + when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtFun\n" popCtxt() insertToken OEND - + // function () -> async { + // 1 + // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator | _, (CtxtFunction offsidePos :: _) - when isSemiSemi || tokenStartCol <= offsidePos.Column -> + when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> popCtxt() reprocess() | _, (CtxtTry offsidePos :: _) - when isSemiSemi || (if isTryBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || isTryBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtTry\n" popCtxt() reprocess() @@ -1828,7 +1832,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // // then // ... - | _, (CtxtThen offsidePos :: _) when isSemiSemi || (if isThenBlockContinuator token then tokenStartCol + 1 else tokenStartCol)<= offsidePos.Column -> + | _, (CtxtThen offsidePos :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule || isThenBlockContinuator token then tokenStartCol + 1 else tokenStartCol)<= offsidePos.Column -> if debug then dprintf "offside from CtxtThen, popping\n" popCtxt() reprocess() @@ -1836,7 +1840,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // else ... // .... // - | _, (CtxtElse (offsidePos) :: _) when isSemiSemi || tokenStartCol <= offsidePos.Column -> + | _, (CtxtElse (offsidePos) :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtElse, popping\n" popCtxt() reprocess() diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index bd0ad2a9d6f..e9be5ef2168 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -36,6 +36,45 @@ module OffsideExceptions = |> verifyBaseline |> ignore + [] + let RelaxWhitespace2_Indentation() = + Fsx """ +match +1 +with 2 -> () +let ( +1 +) = 2 +type J( +x:int +) = class end +for i in [ +1 +] do () +while ( +true +) do () + """ + |> typecheck + |> shouldFail + |> withResults [ + { Error = Error 10 + Range = { StartLine = 2 + StartColumn = 7 + EndLine = 3 + EndColumn = 1 } + Message = + "Incomplete structured construct at or before this point in expression" } + { Error = Warning 58 + Range = { StartLine = 6 + StartColumn = 1 + EndLine = 6 + EndColumn = 2 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (5:1). Try indenting this token further or using standard formatting conventions." } + ] + |> ignore + [] let RelaxWhitespace2_AllowedBefore1() = Fsx """ @@ -84,6 +123,32 @@ module A |> typecheck |> shouldSucceed |> ignore + [] + let RelaxWhitespace2_AllowedBefore5() = + Fsx """ + let a = ( + fun () -> seq { + 1 + }, 2 = 3 + ) + let b : (unit -> int seq) * bool = id a + """ + |> typecheck + |> shouldSucceed + |> ignore + [] + let RelaxWhitespace2_AllowedBefore6() = + Fsx """ + let a = ( + function () -> seq { + 1 + }, 2 = 3 + ) + let b : (unit -> int seq) * bool = id a + """ + |> typecheck + |> shouldSucceed + |> ignore [] let RelaxWhitespace2_Neg1() = @@ -194,6 +259,73 @@ module A Message = "Possible incorrect indentation: this token is offside of context started at position (3:16). Try indenting this token further or using standard formatting conventions." } |> ignore + [] + let RelaxWhitespace2_Neg6() = + Fsx """ +match + 1 +with 2 -> () + """ + |> withLangVersion50 + |> compile + |> shouldFail + |> withResult { + Error = Error 10 + Range = { StartLine = 4 + StartColumn = 6 + EndLine = 4 + EndColumn = 7 } + Message = + "Unexpected start of structured construct in expression" + } |> ignore + [] + let RelaxWhitespace2_Neg7() = + Fsx """ +type R = { x : int +} +function +| { + x = 1 +} -> () + """ + |> typecheck + |> shouldFail + |> withResult { + Error = Error 10 + Range = { StartLine = 7 + StartColumn = 1 + EndLine = 7 + EndColumn = 2 } + Message = + "Incomplete structured construct at or before this point in pattern matching. Expected '->' or other token." + } |> ignore + [] + let RelaxWhitespace2_Neg8() = + Fsx """ +type R = { x : int } +function +{ + x = 1 +} -> () + """ + |> typecheck + |> shouldFail + |> withResults [ + { Error = Warning 25 + Range = { StartLine = 3 + StartColumn = 1 + EndLine = 3 + EndColumn = 9 } + Message = + "Incomplete pattern matches on this expression. For example, the value '{x=0}' may indicate a case not covered by the pattern(s)." }; + { Error = Warning 193 + Range = { StartLine = 3 + StartColumn = 1 + EndLine = 6 + EndColumn = 8 } + Message = + "This expression is a function value, i.e. is missing arguments. Its type is R -> unit." } + ] |> ignore [] let RelaxWhitespace2_Fs50 compilation = @@ -209,4254 +341,4681 @@ module A EndLine = 14 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (13:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (13:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 18 StartColumn = 13 EndLine = 18 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (17:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (17:22). Try indenting this token further or using standard formatting conventions." } { Error = Error 10 Range = { StartLine = 37 StartColumn = 5 EndLine = 37 EndColumn = 6 } Message = - "Incomplete structured construct at or before this point in binding. Expected '=' or other token." }; + "Incomplete structured construct at or before this point in binding. Expected '=' or other token." } { Error = Error 10 Range = { StartLine = 46 StartColumn = 5 EndLine = 46 EndColumn = 8 } Message = - "Incomplete structured construct at or before this point in implementation file" }; + "Incomplete structured construct at or before this point in implementation file" } { Error = Warning 58 Range = { StartLine = 48 StartColumn = 13 EndLine = 48 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (47:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (47:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 95 StartColumn = 9 EndLine = 95 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (94:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (94:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 98 StartColumn = 9 EndLine = 98 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (97:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (97:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 102 StartColumn = 13 EndLine = 102 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (101:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (101:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 106 StartColumn = 13 EndLine = 106 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (105:45). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (105:45). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 110 StartColumn = 13 EndLine = 110 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (109:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (109:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 112 StartColumn = 13 EndLine = 112 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (111:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (111:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 117 StartColumn = 9 EndLine = 117 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (116:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (116:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 132 StartColumn = 13 EndLine = 132 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (131:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (131:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 144 StartColumn = 9 EndLine = 144 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (143:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (143:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 148 StartColumn = 13 EndLine = 148 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (147:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (147:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 201 StartColumn = 9 EndLine = 201 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (200:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (200:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 204 StartColumn = 9 EndLine = 204 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (203:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (203:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 208 StartColumn = 13 EndLine = 208 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (207:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (207:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 212 StartColumn = 13 EndLine = 212 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (211:39). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (211:39). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 216 StartColumn = 13 EndLine = 216 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (215:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (215:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 218 StartColumn = 13 EndLine = 218 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (217:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (217:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 223 StartColumn = 9 EndLine = 223 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (222:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (222:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 332 StartColumn = 9 EndLine = 332 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (331:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (331:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 423 StartColumn = 9 EndLine = 423 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (422:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (422:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 490 StartColumn = 9 EndLine = 490 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (489:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (489:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 505 StartColumn = 13 EndLine = 505 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (504:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (504:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 507 StartColumn = 13 EndLine = 507 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (506:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (506:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 544 StartColumn = 9 EndLine = 544 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (543:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (543:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 560 StartColumn = 9 EndLine = 560 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (559:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (559:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 564 StartColumn = 13 EndLine = 564 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (563:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (563:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 574 StartColumn = 13 EndLine = 574 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (573:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (573:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 577 StartColumn = 9 EndLine = 577 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (576:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (576:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 582 StartColumn = 9 EndLine = 582 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (581:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (581:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 584 StartColumn = 9 EndLine = 584 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (583:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (583:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 587 StartColumn = 9 EndLine = 587 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (586:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (586:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 590 StartColumn = 9 EndLine = 590 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (589:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (589:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 594 StartColumn = 13 EndLine = 594 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (593:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (593:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 598 StartColumn = 13 EndLine = 598 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (597:46). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (597:46). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 602 StartColumn = 13 EndLine = 602 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (601:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (601:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 604 StartColumn = 13 EndLine = 604 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (603:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (603:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 609 StartColumn = 9 EndLine = 609 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (608:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (608:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 647 StartColumn = 5 EndLine = 647 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (646:38). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (646:38). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 651 StartColumn = 9 EndLine = 651 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (650:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (650:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 654 StartColumn = 9 EndLine = 654 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (653:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (653:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 658 StartColumn = 13 EndLine = 658 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (657:36). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (657:36). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 662 StartColumn = 13 EndLine = 662 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (661:53). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (661:53). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 666 StartColumn = 13 EndLine = 666 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (665:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (665:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 668 StartColumn = 13 EndLine = 668 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (667:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (667:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 671 StartColumn = 9 EndLine = 671 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (670:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (670:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 673 StartColumn = 9 EndLine = 673 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (672:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (672:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 676 StartColumn = 9 EndLine = 676 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (675:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (675:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 678 StartColumn = 9 EndLine = 678 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (677:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (677:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 681 StartColumn = 9 EndLine = 681 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (680:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (680:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 684 StartColumn = 9 EndLine = 684 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (683:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (683:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 688 StartColumn = 13 EndLine = 688 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (687:39). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (687:39). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 692 StartColumn = 13 EndLine = 692 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (691:56). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (691:56). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 696 StartColumn = 13 EndLine = 696 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (695:32). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (695:32). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 698 StartColumn = 13 EndLine = 698 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (697:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (697:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 703 StartColumn = 9 EndLine = 703 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (702:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (702:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 742 StartColumn = 9 EndLine = 742 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (741:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (741:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 745 StartColumn = 9 EndLine = 745 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (744:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (744:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 749 StartColumn = 13 EndLine = 749 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (748:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (748:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 753 StartColumn = 13 EndLine = 753 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (752:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (752:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 757 StartColumn = 13 EndLine = 757 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (756:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (756:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 759 StartColumn = 13 EndLine = 759 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (758:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (758:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 764 StartColumn = 9 EndLine = 764 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (763:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (763:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 769 StartColumn = 9 EndLine = 769 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (768:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (768:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 802 StartColumn = 9 EndLine = 802 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (801:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (801:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 805 StartColumn = 9 EndLine = 805 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (804:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (804:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 809 StartColumn = 13 EndLine = 809 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (808:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (808:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 813 StartColumn = 13 EndLine = 813 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (812:46). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (812:46). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 817 StartColumn = 13 EndLine = 817 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (816:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (816:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 819 StartColumn = 13 EndLine = 819 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (818:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (818:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 822 StartColumn = 9 EndLine = 822 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (821:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (821:30). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 824 StartColumn = 9 EndLine = 824 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (823:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (823:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 827 StartColumn = 9 EndLine = 827 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (826:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (826:30). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 829 StartColumn = 9 EndLine = 829 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (828:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (828:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 833 StartColumn = 9 EndLine = 833 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (832:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (832:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 836 StartColumn = 9 EndLine = 836 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (835:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (835:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 840 StartColumn = 13 EndLine = 840 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (839:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (839:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 844 StartColumn = 13 EndLine = 844 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (843:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (843:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 848 StartColumn = 13 EndLine = 848 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (847:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (847:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 850 StartColumn = 13 EndLine = 850 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (849:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (849:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 855 StartColumn = 9 EndLine = 855 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (854:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (854:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 860 StartColumn = 9 EndLine = 860 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (859:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (859:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 893 StartColumn = 9 EndLine = 893 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (892:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (892:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 896 StartColumn = 9 EndLine = 896 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (895:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (895:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 900 StartColumn = 13 EndLine = 900 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (899:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (899:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 904 StartColumn = 13 EndLine = 904 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (903:49). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (903:49). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 908 StartColumn = 13 EndLine = 908 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (907:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (907:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 910 StartColumn = 13 EndLine = 910 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (909:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (909:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 913 StartColumn = 9 EndLine = 913 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (912:31). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (912:31). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 915 StartColumn = 9 EndLine = 915 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (914:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (914:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 918 StartColumn = 9 EndLine = 918 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (917:31). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (917:31). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 920 StartColumn = 9 EndLine = 920 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (919:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (919:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 930 StartColumn = 9 EndLine = 930 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (929:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (929:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 935 StartColumn = 9 EndLine = 935 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (934:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (934:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 939 StartColumn = 13 EndLine = 939 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (938:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (938:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 943 StartColumn = 13 EndLine = 943 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (942:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (942:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 947 StartColumn = 13 EndLine = 947 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (946:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (946:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 949 StartColumn = 13 EndLine = 949 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (948:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (948:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 952 StartColumn = 9 EndLine = 952 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (951:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (951:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 957 StartColumn = 9 EndLine = 957 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (956:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (956:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 959 StartColumn = 9 EndLine = 959 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (958:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (958:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 962 StartColumn = 9 EndLine = 962 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (961:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (961:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 966 StartColumn = 13 EndLine = 966 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (965:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (965:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 970 StartColumn = 13 EndLine = 970 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (969:48). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (969:48). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 974 StartColumn = 13 EndLine = 974 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (973:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (973:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 976 StartColumn = 13 EndLine = 976 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (975:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (975:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 979 StartColumn = 9 EndLine = 979 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (978:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (978:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 981 StartColumn = 9 EndLine = 981 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (980:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (980:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 984 StartColumn = 9 EndLine = 984 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (983:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (983:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 986 StartColumn = 9 EndLine = 986 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (985:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (985:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 989 StartColumn = 9 EndLine = 989 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (988:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (988:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 993 StartColumn = 13 EndLine = 993 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (992:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (992:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 997 StartColumn = 13 EndLine = 997 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (996:49). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (996:49). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1001 StartColumn = 13 EndLine = 1001 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1000:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1000:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1003 StartColumn = 13 EndLine = 1003 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1002:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1002:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1006 StartColumn = 9 EndLine = 1006 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1005:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1005:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1008 StartColumn = 9 EndLine = 1008 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1007:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1007:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1011 StartColumn = 5 EndLine = 1011 EndColumn = 7 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1010:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1010:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1016 StartColumn = 5 EndLine = 1016 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1013:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1013:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1017 StartColumn = 9 EndLine = 1017 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1016:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1016:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1019 StartColumn = 5 EndLine = 1019 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1016:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1016:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1021 StartColumn = 13 EndLine = 1021 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1020:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1020:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1023 StartColumn = 5 EndLine = 1023 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1019:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1019:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1027 StartColumn = 5 EndLine = 1027 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1023:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1023:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1033 StartColumn = 5 EndLine = 1033 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1027:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1027:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1038 StartColumn = 5 EndLine = 1038 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1033:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1033:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1043 StartColumn = 5 EndLine = 1043 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1043 StartColumn = 12 EndLine = 1043 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1046 StartColumn = 5 EndLine = 1046 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1046 StartColumn = 12 EndLine = 1046 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1047 StartColumn = 9 EndLine = 1047 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1046:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1046:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1049 StartColumn = 5 EndLine = 1049 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1049 StartColumn = 12 EndLine = 1049 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1051 StartColumn = 13 EndLine = 1051 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1050:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1050:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1053 StartColumn = 5 EndLine = 1053 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1053 StartColumn = 12 EndLine = 1053 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1057 StartColumn = 5 EndLine = 1057 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1057 StartColumn = 12 EndLine = 1057 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1063 StartColumn = 5 EndLine = 1063 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1063 StartColumn = 12 EndLine = 1063 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1064 StartColumn = 9 EndLine = 1064 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1063:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1063:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1068 StartColumn = 5 EndLine = 1068 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1068 StartColumn = 12 EndLine = 1068 EndColumn = 15 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1069 StartColumn = 9 EndLine = 1069 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1068:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1068:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1073 StartColumn = 5 EndLine = 1073 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1073 StartColumn = 21 EndLine = 1073 EndColumn = 22 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1076 StartColumn = 5 EndLine = 1076 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1076 StartColumn = 21 EndLine = 1076 EndColumn = 22 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1077 StartColumn = 9 EndLine = 1077 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1076:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1076:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1079 StartColumn = 5 EndLine = 1079 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1079 StartColumn = 21 EndLine = 1079 EndColumn = 22 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1081 StartColumn = 13 EndLine = 1081 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1080:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1080:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1083 StartColumn = 5 EndLine = 1083 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1083 StartColumn = 21 EndLine = 1083 EndColumn = 22 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1087 StartColumn = 5 EndLine = 1087 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1087 StartColumn = 21 EndLine = 1087 EndColumn = 22 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1093 StartColumn = 5 EndLine = 1093 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1094 StartColumn = 9 EndLine = 1094 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1093:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1093:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1095 StartColumn = 8 EndLine = 1095 EndColumn = 9 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1098 StartColumn = 5 EndLine = 1098 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1099 StartColumn = 9 EndLine = 1099 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1098:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1098:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1103 StartColumn = 5 EndLine = 1103 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1103 StartColumn = 17 EndLine = 1103 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1106 StartColumn = 5 EndLine = 1106 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1106 StartColumn = 17 EndLine = 1106 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1107 StartColumn = 9 EndLine = 1107 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1106:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1106:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1109 StartColumn = 5 EndLine = 1109 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1109 StartColumn = 17 EndLine = 1109 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1111 StartColumn = 13 EndLine = 1111 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1110:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1110:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1113 StartColumn = 5 EndLine = 1113 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1113 StartColumn = 17 EndLine = 1113 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1117 StartColumn = 5 EndLine = 1117 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1117 StartColumn = 17 EndLine = 1117 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1123 StartColumn = 5 EndLine = 1123 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1124 StartColumn = 9 EndLine = 1124 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1123:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1123:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1125 StartColumn = 8 EndLine = 1125 EndColumn = 9 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1128 StartColumn = 5 EndLine = 1128 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1129 StartColumn = 9 EndLine = 1129 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1128:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1128:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1133 StartColumn = 1 EndLine = 1133 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1134 StartColumn = 5 EndLine = 1134 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1133:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1133:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1140 StartColumn = 9 EndLine = 1140 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1139:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1139:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1144 StartColumn = 13 EndLine = 1144 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1143:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1143:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1170 StartColumn = 9 EndLine = 1170 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1169:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1169:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1174 StartColumn = 13 EndLine = 1174 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1173:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1173:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1187 StartColumn = 9 EndLine = 1187 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1186:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1186:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1192 StartColumn = 9 EndLine = 1192 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1191:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1191:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1200 StartColumn = 9 EndLine = 1200 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1199:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1199:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1204 StartColumn = 13 EndLine = 1204 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1203:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1203:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1217 StartColumn = 9 EndLine = 1217 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1216:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1216:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1222 StartColumn = 9 EndLine = 1222 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1221:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1221:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1230 StartColumn = 9 EndLine = 1230 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1229:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1229:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1234 StartColumn = 13 EndLine = 1234 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1233:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1233:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1247 StartColumn = 9 EndLine = 1247 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1246:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1246:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1252 StartColumn = 9 EndLine = 1252 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1251:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1251:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1257 StartColumn = 1 EndLine = 1257 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1418 StartColumn = 1 EndLine = 1418 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1470 StartColumn = 9 EndLine = 1470 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1469:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1469:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1475 StartColumn = 9 EndLine = 1475 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1474:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1474:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1500 StartColumn = 9 EndLine = 1500 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1499:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1499:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1505 StartColumn = 9 EndLine = 1505 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1504:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1504:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1530 StartColumn = 9 EndLine = 1530 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1529:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1529:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1535 StartColumn = 9 EndLine = 1535 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1534:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1534:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1539 StartColumn = 1 EndLine = 1539 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1591 StartColumn = 9 EndLine = 1591 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1590:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1590:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1596 StartColumn = 9 EndLine = 1596 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1595:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1595:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1621 StartColumn = 9 EndLine = 1621 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1620:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1620:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1626 StartColumn = 9 EndLine = 1626 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1625:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1625:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1651 StartColumn = 9 EndLine = 1651 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1650:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1650:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1656 StartColumn = 9 EndLine = 1656 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1655:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1655:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1660 StartColumn = 1 EndLine = 1660 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1661 StartColumn = 5 EndLine = 1661 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1660:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1660:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1714 StartColumn = 9 EndLine = 1714 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1713:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1713:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1719 StartColumn = 9 EndLine = 1719 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1718:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1718:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1744 StartColumn = 9 EndLine = 1744 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1743:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1743:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1749 StartColumn = 9 EndLine = 1749 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1748:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1748:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1774 StartColumn = 9 EndLine = 1774 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1773:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1773:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1779 StartColumn = 9 EndLine = 1779 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1778:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1778:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1783 StartColumn = 1 EndLine = 1783 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1784 StartColumn = 5 EndLine = 1784 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1783:25). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1783:25). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1790 StartColumn = 9 EndLine = 1790 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1789:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1789:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1794 StartColumn = 13 EndLine = 1794 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1793:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1793:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1804 StartColumn = 13 EndLine = 1804 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1803:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1803:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1807 StartColumn = 9 EndLine = 1807 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1806:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1806:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1812 StartColumn = 9 EndLine = 1812 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1811:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1811:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1814 StartColumn = 9 EndLine = 1814 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1813:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1813:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1820 StartColumn = 9 EndLine = 1820 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1819:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1819:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1824 StartColumn = 13 EndLine = 1824 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1823:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1823:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1834 StartColumn = 13 EndLine = 1834 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1833:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1833:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1837 StartColumn = 9 EndLine = 1837 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1836:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1836:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1842 StartColumn = 9 EndLine = 1842 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1841:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1841:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1844 StartColumn = 9 EndLine = 1844 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1843:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1843:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1850 StartColumn = 9 EndLine = 1850 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1849:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1849:26). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1854 StartColumn = 13 EndLine = 1854 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1853:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1853:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1864 StartColumn = 13 EndLine = 1864 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1863:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1863:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1867 StartColumn = 9 EndLine = 1867 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1866:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1866:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1872 StartColumn = 9 EndLine = 1872 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1871:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1871:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1874 StartColumn = 9 EndLine = 1874 EndColumn = 25 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1873:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1873:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1880 StartColumn = 9 EndLine = 1880 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1879:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1879:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1884 StartColumn = 13 EndLine = 1884 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1883:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1883:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1894 StartColumn = 13 EndLine = 1894 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1893:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1893:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1897 StartColumn = 9 EndLine = 1897 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1896:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1896:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1902 StartColumn = 9 EndLine = 1902 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1901:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1901:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1904 StartColumn = 9 EndLine = 1904 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1903:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1903:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1906 StartColumn = 1 EndLine = 1906 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1907 StartColumn = 5 EndLine = 1907 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1906:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1906:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1910 StartColumn = 9 EndLine = 1910 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1909:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1909:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1913 StartColumn = 9 EndLine = 1913 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1912:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1912:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1917 StartColumn = 13 EndLine = 1917 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1916:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1916:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1921 StartColumn = 13 EndLine = 1921 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1920:51). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1920:51). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1925 StartColumn = 13 EndLine = 1925 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1924:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1924:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1927 StartColumn = 13 EndLine = 1927 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1926:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1926:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1930 StartColumn = 9 EndLine = 1930 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1929:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1929:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1932 StartColumn = 9 EndLine = 1932 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1931:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1931:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1935 StartColumn = 9 EndLine = 1935 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1934:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1934:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1937 StartColumn = 9 EndLine = 1937 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1936:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1936:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1940 StartColumn = 9 EndLine = 1940 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1939:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1939:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1943 StartColumn = 9 EndLine = 1943 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1942:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1942:30). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1947 StartColumn = 13 EndLine = 1947 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1946:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1946:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1951 StartColumn = 13 EndLine = 1951 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1950:51). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1950:51). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1955 StartColumn = 13 EndLine = 1955 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1954:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1954:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1957 StartColumn = 13 EndLine = 1957 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1956:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1956:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1960 StartColumn = 9 EndLine = 1960 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1959:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1959:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1962 StartColumn = 9 EndLine = 1962 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1961:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1961:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1965 StartColumn = 9 EndLine = 1965 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1964:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1964:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1967 StartColumn = 9 EndLine = 1967 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1966:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1966:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1970 StartColumn = 9 EndLine = 1970 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1969:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1969:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1973 StartColumn = 9 EndLine = 1973 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1972:32). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1972:32). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1977 StartColumn = 13 EndLine = 1977 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1976:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1976:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1981 StartColumn = 13 EndLine = 1981 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1980:51). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1980:51). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1985 StartColumn = 13 EndLine = 1985 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1984:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1984:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1987 StartColumn = 13 EndLine = 1987 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1986:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1986:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1990 StartColumn = 9 EndLine = 1990 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1989:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1989:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1992 StartColumn = 9 EndLine = 1992 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1991:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1991:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1995 StartColumn = 9 EndLine = 1995 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1994:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1994:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 1997 StartColumn = 9 EndLine = 1997 EndColumn = 25 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1996:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1996:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2000 StartColumn = 9 EndLine = 2000 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1999:25). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1999:25). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2003 StartColumn = 9 EndLine = 2003 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2002:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2002:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2007 StartColumn = 13 EndLine = 2007 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2006:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2006:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2011 StartColumn = 13 EndLine = 2011 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2010:51). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2010:51). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2015 StartColumn = 13 EndLine = 2015 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2014:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2014:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2017 StartColumn = 13 EndLine = 2017 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2016:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2016:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2020 StartColumn = 9 EndLine = 2020 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2019:25). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2019:25). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2022 StartColumn = 9 EndLine = 2022 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2021:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2021:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2025 StartColumn = 9 EndLine = 2025 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2024:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2024:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2027 StartColumn = 9 EndLine = 2027 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2026:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2026:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2029 StartColumn = 1 EndLine = 2029 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2032 StartColumn = 9 EndLine = 2032 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2031:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2031:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2035 StartColumn = 9 EndLine = 2035 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2034:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2034:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2039 StartColumn = 13 EndLine = 2039 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2038:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2038:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2043 StartColumn = 13 EndLine = 2043 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2042:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2042:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2047 StartColumn = 13 EndLine = 2047 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2046:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2046:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2049 StartColumn = 13 EndLine = 2049 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2048:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2048:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2052 StartColumn = 9 EndLine = 2052 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2051:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2051:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2054 StartColumn = 9 EndLine = 2054 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2053:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2053:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2057 StartColumn = 9 EndLine = 2057 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2056:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2056:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2059 StartColumn = 9 EndLine = 2059 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2058:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2058:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2062 StartColumn = 9 EndLine = 2062 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2061:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2061:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2065 StartColumn = 9 EndLine = 2065 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2064:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2064:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2069 StartColumn = 13 EndLine = 2069 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2068:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2068:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2073 StartColumn = 13 EndLine = 2073 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2072:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2072:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2077 StartColumn = 13 EndLine = 2077 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2076:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2076:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2079 StartColumn = 13 EndLine = 2079 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2078:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2078:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2082 StartColumn = 9 EndLine = 2082 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2081:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2081:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2084 StartColumn = 9 EndLine = 2084 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2083:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2083:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2087 StartColumn = 9 EndLine = 2087 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2086:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2086:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2089 StartColumn = 9 EndLine = 2089 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2088:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2088:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2092 StartColumn = 9 EndLine = 2092 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2091:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2091:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2095 StartColumn = 9 EndLine = 2095 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2094:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2094:26). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2099 StartColumn = 13 EndLine = 2099 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2098:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2098:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2103 StartColumn = 13 EndLine = 2103 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2102:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2102:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2107 StartColumn = 13 EndLine = 2107 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2106:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2106:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2109 StartColumn = 13 EndLine = 2109 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2108:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2108:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2112 StartColumn = 9 EndLine = 2112 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2111:38). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2111:38). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2114 StartColumn = 9 EndLine = 2114 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2113:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2113:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2117 StartColumn = 9 EndLine = 2117 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2116:38). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2116:38). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2119 StartColumn = 9 EndLine = 2119 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2118:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2118:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2122 StartColumn = 9 EndLine = 2122 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2121:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2121:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2125 StartColumn = 9 EndLine = 2125 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2124:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2124:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2129 StartColumn = 13 EndLine = 2129 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2128:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2128:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2133 StartColumn = 13 EndLine = 2133 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2132:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2132:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2137 StartColumn = 13 EndLine = 2137 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2136:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2136:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2139 StartColumn = 13 EndLine = 2139 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2138:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2138:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2142 StartColumn = 9 EndLine = 2142 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2141:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2141:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2144 StartColumn = 9 EndLine = 2144 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2143:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2143:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2147 StartColumn = 9 EndLine = 2147 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2146:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2146:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2149 StartColumn = 9 EndLine = 2149 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2148:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2148:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2151 StartColumn = 1 EndLine = 2151 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2154 StartColumn = 9 EndLine = 2154 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2153:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2153:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2157 StartColumn = 9 EndLine = 2157 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2156:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2156:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2161 StartColumn = 13 EndLine = 2161 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2160:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2160:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2165 StartColumn = 13 EndLine = 2165 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2164:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2164:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2169 StartColumn = 13 EndLine = 2169 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2168:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2168:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2171 StartColumn = 13 EndLine = 2171 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2170:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2170:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2174 StartColumn = 9 EndLine = 2174 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2173:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2173:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2176 StartColumn = 9 EndLine = 2176 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2175:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2175:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2179 StartColumn = 9 EndLine = 2179 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2178:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2178:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2181 StartColumn = 9 EndLine = 2181 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2180:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2180:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2184 StartColumn = 9 EndLine = 2184 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2183:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2183:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2187 StartColumn = 9 EndLine = 2187 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2186:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2186:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2191 StartColumn = 13 EndLine = 2191 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2190:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2190:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2195 StartColumn = 13 EndLine = 2195 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2194:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2194:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2199 StartColumn = 13 EndLine = 2199 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2198:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2198:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2201 StartColumn = 13 EndLine = 2201 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2200:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2200:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2204 StartColumn = 9 EndLine = 2204 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2203:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2203:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2206 StartColumn = 9 EndLine = 2206 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2205:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2205:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2209 StartColumn = 9 EndLine = 2209 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2208:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2208:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2211 StartColumn = 9 EndLine = 2211 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2210:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2210:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2214 StartColumn = 9 EndLine = 2214 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2213:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2213:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2217 StartColumn = 9 EndLine = 2217 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2216:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2216:26). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2221 StartColumn = 13 EndLine = 2221 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2220:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2220:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2225 StartColumn = 13 EndLine = 2225 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2224:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2224:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2229 StartColumn = 13 EndLine = 2229 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2228:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2228:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2231 StartColumn = 13 EndLine = 2231 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2230:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2230:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2234 StartColumn = 9 EndLine = 2234 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2233:38). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2233:38). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2236 StartColumn = 9 EndLine = 2236 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2235:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2235:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2239 StartColumn = 9 EndLine = 2239 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2238:38). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2238:38). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2241 StartColumn = 9 EndLine = 2241 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2240:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2240:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2244 StartColumn = 9 EndLine = 2244 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2243:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2243:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2247 StartColumn = 9 EndLine = 2247 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2246:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2246:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2251 StartColumn = 13 EndLine = 2251 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2250:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2250:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2255 StartColumn = 13 EndLine = 2255 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2254:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2254:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2259 StartColumn = 13 EndLine = 2259 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2258:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2258:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2261 StartColumn = 13 EndLine = 2261 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2260:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2260:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2264 StartColumn = 9 EndLine = 2264 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2263:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2263:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2266 StartColumn = 9 EndLine = 2266 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2265:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2265:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2269 StartColumn = 9 EndLine = 2269 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2268:34). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2268:34). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2271 StartColumn = 9 EndLine = 2271 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2270:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2270:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2273 StartColumn = 1 EndLine = 2273 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2274 StartColumn = 5 EndLine = 2274 EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2273:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2273:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2277 StartColumn = 9 EndLine = 2277 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2276:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2276:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2282 StartColumn = 9 EndLine = 2282 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2281:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2281:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2286 StartColumn = 13 EndLine = 2286 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2285:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2285:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2290 StartColumn = 13 EndLine = 2290 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2289:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2289:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2294 StartColumn = 13 EndLine = 2294 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2293:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2293:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2296 StartColumn = 13 EndLine = 2296 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2295:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2295:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2299 StartColumn = 9 EndLine = 2299 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2298:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2298:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2304 StartColumn = 9 EndLine = 2304 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2303:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2303:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2308 StartColumn = 13 EndLine = 2308 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2307:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2307:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2312 StartColumn = 13 EndLine = 2312 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2311:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2311:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2316 StartColumn = 13 EndLine = 2316 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2315:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2315:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2318 StartColumn = 13 EndLine = 2318 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2317:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2317:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2321 StartColumn = 9 EndLine = 2321 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2320:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2320:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2326 StartColumn = 9 EndLine = 2326 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2325:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2325:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2330 StartColumn = 13 EndLine = 2330 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2329:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2329:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2334 StartColumn = 13 EndLine = 2334 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2333:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2333:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2338 StartColumn = 13 EndLine = 2338 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2337:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2337:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2340 StartColumn = 13 EndLine = 2340 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2339:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2339:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2343 StartColumn = 9 EndLine = 2343 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2342:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2342:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2348 StartColumn = 9 EndLine = 2348 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2347:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2347:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2352 StartColumn = 13 EndLine = 2352 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2351:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2351:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2356 StartColumn = 13 EndLine = 2356 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2355:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2355:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2360 StartColumn = 13 EndLine = 2360 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2359:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2359:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2362 StartColumn = 13 EndLine = 2362 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2361:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2361:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2364 StartColumn = 1 EndLine = 2364 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (1038:5). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2369 StartColumn = 9 EndLine = 2369 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2368:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2368:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2373 StartColumn = 13 EndLine = 2373 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2372:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2372:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2403 StartColumn = 13 EndLine = 2403 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2402:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2402:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2450 StartColumn = 9 EndLine = 2450 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2449:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2449:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2453 StartColumn = 9 EndLine = 2453 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2452:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2452:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2457 StartColumn = 13 EndLine = 2457 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2456:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2456:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2461 StartColumn = 13 EndLine = 2461 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2460:45). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2460:45). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2465 StartColumn = 13 EndLine = 2465 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2464:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2464:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2467 StartColumn = 13 EndLine = 2467 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2466:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2466:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2472 StartColumn = 9 EndLine = 2472 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2471:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2471:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2487 StartColumn = 13 EndLine = 2487 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2486:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2486:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2493 StartColumn = 1 EndLine = 2493 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2364:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2364:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2498 StartColumn = 9 EndLine = 2498 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2497:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2497:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2502 StartColumn = 13 EndLine = 2502 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2501:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2501:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2555 StartColumn = 9 EndLine = 2555 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2554:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2554:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2558 StartColumn = 9 EndLine = 2558 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2557:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2557:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2562 StartColumn = 13 EndLine = 2562 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2561:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2561:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2566 StartColumn = 13 EndLine = 2566 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2565:39). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2565:39). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2570 StartColumn = 13 EndLine = 2570 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2569:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2569:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2572 StartColumn = 13 EndLine = 2572 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2571:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2571:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2577 StartColumn = 9 EndLine = 2577 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2576:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2576:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2587 StartColumn = 1 EndLine = 2587 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2493:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2493:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2628 StartColumn = 1 EndLine = 2628 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2587:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2587:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2690 StartColumn = 9 EndLine = 2690 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2689:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2689:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2721 StartColumn = 1 EndLine = 2721 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2628:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2628:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2783 StartColumn = 9 EndLine = 2783 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2782:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2782:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2814 StartColumn = 1 EndLine = 2814 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2721:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2721:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2846 StartColumn = 9 EndLine = 2846 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2845:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2845:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2861 StartColumn = 13 EndLine = 2861 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2860:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2860:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2863 StartColumn = 13 EndLine = 2863 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2862:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2862:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2900 StartColumn = 9 EndLine = 2900 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2899:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2899:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2910 StartColumn = 1 EndLine = 2910 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2814:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2814:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2915 StartColumn = 9 EndLine = 2915 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2914:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2914:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2919 StartColumn = 13 EndLine = 2919 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2918:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2918:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2929 StartColumn = 13 EndLine = 2929 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2928:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2928:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2932 StartColumn = 9 EndLine = 2932 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2931:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2931:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2937 StartColumn = 9 EndLine = 2937 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2936:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2936:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2939 StartColumn = 9 EndLine = 2939 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2938:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2938:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2942 StartColumn = 9 EndLine = 2942 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2941:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2941:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2945 StartColumn = 9 EndLine = 2945 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2944:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2944:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2949 StartColumn = 13 EndLine = 2949 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2948:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2948:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2953 StartColumn = 13 EndLine = 2953 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2952:46). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2952:46). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2957 StartColumn = 13 EndLine = 2957 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2956:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2956:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2959 StartColumn = 13 EndLine = 2959 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2958:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2958:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 2964 StartColumn = 9 EndLine = 2964 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2963:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2963:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3003 StartColumn = 1 EndLine = 3003 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (2910:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (2910:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3005 StartColumn = 9 EndLine = 3005 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3004:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3004:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3008 StartColumn = 9 EndLine = 3008 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3007:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3007:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3012 StartColumn = 13 EndLine = 3012 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3011:36). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3011:36). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3016 StartColumn = 13 EndLine = 3016 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3015:53). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3015:53). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3020 StartColumn = 13 EndLine = 3020 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3019:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3019:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3022 StartColumn = 13 EndLine = 3022 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3021:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3021:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3025 StartColumn = 9 EndLine = 3025 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3024:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3024:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3027 StartColumn = 9 EndLine = 3027 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3026:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3026:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3030 StartColumn = 9 EndLine = 3030 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3029:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3029:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3032 StartColumn = 9 EndLine = 3032 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3031:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3031:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3035 StartColumn = 9 EndLine = 3035 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3034:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3034:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3038 StartColumn = 9 EndLine = 3038 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3037:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3037:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3042 StartColumn = 13 EndLine = 3042 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3041:39). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3041:39). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3046 StartColumn = 13 EndLine = 3046 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3045:56). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3045:56). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3050 StartColumn = 13 EndLine = 3050 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3049:32). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3049:32). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3052 StartColumn = 13 EndLine = 3052 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3051:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3051:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3057 StartColumn = 9 EndLine = 3057 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3056:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3056:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3096 StartColumn = 1 EndLine = 3096 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3003:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3003:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3098 StartColumn = 9 EndLine = 3098 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3097:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3097:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3101 StartColumn = 9 EndLine = 3101 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3100:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3100:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3105 StartColumn = 13 EndLine = 3105 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3104:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3104:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3109 StartColumn = 13 EndLine = 3109 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3108:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3108:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3113 StartColumn = 13 EndLine = 3113 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3112:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3112:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3115 StartColumn = 13 EndLine = 3115 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3114:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3114:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3120 StartColumn = 9 EndLine = 3120 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3119:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3119:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3125 StartColumn = 9 EndLine = 3125 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3124:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3124:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3158 StartColumn = 9 EndLine = 3158 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3157:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3157:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3161 StartColumn = 9 EndLine = 3161 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3160:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3160:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3165 StartColumn = 13 EndLine = 3165 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3164:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3164:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3169 StartColumn = 13 EndLine = 3169 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3168:46). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3168:46). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3173 StartColumn = 13 EndLine = 3173 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3172:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3172:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3175 StartColumn = 13 EndLine = 3175 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3174:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3174:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3178 StartColumn = 9 EndLine = 3178 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3177:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3177:30). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3180 StartColumn = 9 EndLine = 3180 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3179:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3179:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3183 StartColumn = 9 EndLine = 3183 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3182:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3182:30). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3185 StartColumn = 9 EndLine = 3185 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3184:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3184:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3189 StartColumn = 1 EndLine = 3189 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3096:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3096:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3191 StartColumn = 9 EndLine = 3191 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3190:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3190:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3194 StartColumn = 9 EndLine = 3194 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3193:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3193:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3198 StartColumn = 13 EndLine = 3198 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3197:29). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3197:29). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3202 StartColumn = 13 EndLine = 3202 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3201:37). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3201:37). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3206 StartColumn = 13 EndLine = 3206 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3205:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3205:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3208 StartColumn = 13 EndLine = 3208 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3207:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3207:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3213 StartColumn = 9 EndLine = 3213 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3212:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3212:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3218 StartColumn = 9 EndLine = 3218 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3217:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3217:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3251 StartColumn = 9 EndLine = 3251 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3250:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3250:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3254 StartColumn = 9 EndLine = 3254 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3253:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3253:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3258 StartColumn = 13 EndLine = 3258 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3257:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3257:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3262 StartColumn = 13 EndLine = 3262 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3261:49). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3261:49). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3266 StartColumn = 13 EndLine = 3266 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3265:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3265:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3268 StartColumn = 13 EndLine = 3268 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3267:24). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3267:24). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3271 StartColumn = 9 EndLine = 3271 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3270:31). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3270:31). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3273 StartColumn = 9 EndLine = 3273 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3272:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3272:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3276 StartColumn = 9 EndLine = 3276 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3275:31). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3275:31). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3278 StartColumn = 9 EndLine = 3278 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3277:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3277:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3282 StartColumn = 1 EndLine = 3282 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3189:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3189:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3287 StartColumn = 9 EndLine = 3287 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3286:15). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3286:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3292 StartColumn = 9 EndLine = 3292 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3291:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3291:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3296 StartColumn = 13 EndLine = 3296 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3295:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3295:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3300 StartColumn = 13 EndLine = 3300 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3299:35). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3299:35). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3304 StartColumn = 13 EndLine = 3304 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3303:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3303:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3306 StartColumn = 13 EndLine = 3306 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3305:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3305:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3313 StartColumn = 9 EndLine = 3313 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3312:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3312:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3315 StartColumn = 9 EndLine = 3315 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3314:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3314:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3318 StartColumn = 9 EndLine = 3318 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3317:19). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3317:19). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3322 StartColumn = 13 EndLine = 3322 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3321:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3321:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3326 StartColumn = 13 EndLine = 3326 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3325:48). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3325:48). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3330 StartColumn = 13 EndLine = 3330 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3329:27). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3329:27). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3332 StartColumn = 13 EndLine = 3332 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3331:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3331:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3335 StartColumn = 9 EndLine = 3335 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3334:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3334:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3337 StartColumn = 9 EndLine = 3337 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3336:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3336:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3340 StartColumn = 9 EndLine = 3340 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3339:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3339:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3342 StartColumn = 9 EndLine = 3342 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3341:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3341:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3345 StartColumn = 9 EndLine = 3345 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3344:20). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3344:20). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3349 StartColumn = 13 EndLine = 3349 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3348:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3348:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3353 StartColumn = 13 EndLine = 3353 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3352:49). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3352:49). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3357 StartColumn = 13 EndLine = 3357 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3356:28). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3356:28). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3359 StartColumn = 13 EndLine = 3359 EndColumn = 16 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3358:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3358:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3362 StartColumn = 9 EndLine = 3362 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3361:18). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3361:18). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3364 StartColumn = 9 EndLine = 3364 EndColumn = 12 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3363:23). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3363:23). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3369 StartColumn = 1 EndLine = 3369 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3282:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3282:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3370 StartColumn = 5 EndLine = 3370 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3369:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3369:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3375 StartColumn = 9 EndLine = 3375 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3376 StartColumn = 9 EndLine = 3376 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3374:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3380 StartColumn = 9 EndLine = 3380 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3379:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3379:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3384 StartColumn = 13 EndLine = 3384 EndColumn = 17 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3385 StartColumn = 13 EndLine = 3385 EndColumn = 18 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:17). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3390 StartColumn = 9 EndLine = 3390 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3392 StartColumn = 9 EndLine = 3392 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3393 StartColumn = 9 EndLine = 3393 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3395 StartColumn = 9 EndLine = 3395 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3396 StartColumn = 9 EndLine = 3396 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3398 StartColumn = 9 EndLine = 3398 EndColumn = 13 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3399 StartColumn = 9 EndLine = 3399 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3400 StartColumn = 9 EndLine = 3400 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3408 StartColumn = 9 EndLine = 3408 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3409 StartColumn = 9 EndLine = 3409 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3417 StartColumn = 9 EndLine = 3417 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3418 StartColumn = 5 EndLine = 3418 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3419 StartColumn = 9 EndLine = 3419 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3418:22). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3418:22). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3420 StartColumn = 9 EndLine = 3420 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3423 StartColumn = 1 EndLine = 3423 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3383:9). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3424 StartColumn = 1 EndLine = 3424 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3423:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3423:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3427 StartColumn = 1 EndLine = 3427 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3424:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3424:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3430 StartColumn = 1 EndLine = 3430 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3431 StartColumn = 1 EndLine = 3431 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3427:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3434 StartColumn = 1 EndLine = 3434 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3431:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3431:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3435 StartColumn = 5 EndLine = 3435 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3434:12). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3434:12). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3439 StartColumn = 1 EndLine = 3439 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3434:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3434:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3445 StartColumn = 1 EndLine = 3445 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3450 StartColumn = 1 EndLine = 3450 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3451 StartColumn = 5 EndLine = 3451 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3450:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3450:26). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3456 StartColumn = 1 EndLine = 3456 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3457 StartColumn = 5 EndLine = 3457 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3456:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3456:26). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3467 StartColumn = 1 EndLine = 3467 EndColumn = 5 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3471 StartColumn = 1 EndLine = 3471 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3439:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3491 StartColumn = 1 EndLine = 3491 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3471:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3471:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3503 StartColumn = 1 EndLine = 3503 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3491:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3491:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3524 StartColumn = 1 EndLine = 3524 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3503:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3503:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3525 StartColumn = 1 EndLine = 3525 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3524:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3524:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3527 StartColumn = 1 EndLine = 3527 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3525:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3525:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3529 StartColumn = 1 EndLine = 3529 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3527:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3527:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3530 StartColumn = 1 EndLine = 3530 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3529:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3529:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3533 StartColumn = 5 EndLine = 3533 EndColumn = 142 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3532:7). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3532:7). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3537 StartColumn = 1 EndLine = 3537 EndColumn = 2 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3538 StartColumn = 5 EndLine = 3538 EndColumn = 142 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3537:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3537:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3544 StartColumn = 1 EndLine = 3544 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3530:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3545 StartColumn = 5 EndLine = 3545 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3546 StartColumn = 5 EndLine = 3546 EndColumn = 34 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3544:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3549 StartColumn = 1 EndLine = 3549 EndColumn = 3 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 Range = { StartLine = 3550 StartColumn = 5 EndLine = 3550 EndColumn = 14 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3549:48). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3549:48). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3556 + StartColumn = 1 + EndLine = 3556 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3556 + StartColumn = 8 + EndLine = 3556 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3556 + StartColumn = 10 + EndLine = 3556 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3573 + StartColumn = 1 + EndLine = 3573 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3574 + StartColumn = 13 + EndLine = 3574 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3573:23). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3575 + StartColumn = 13 + EndLine = 3575 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3573:23). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3576 + StartColumn = 13 + EndLine = 3576 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3573:23). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3577 + StartColumn = 13 + EndLine = 3577 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3573:23). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3580 + StartColumn = 1 + EndLine = 3580 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3581 + StartColumn = 23 + EndLine = 3581 + EndColumn = 24 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3580:24). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3582 + StartColumn = 23 + EndLine = 3582 + EndColumn = 24 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3580:24). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3583 + StartColumn = 23 + EndLine = 3583 + EndColumn = 24 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3580:24). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3584 + StartColumn = 23 + EndLine = 3584 + EndColumn = 24 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3580:24). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3586 + StartColumn = 1 + EndLine = 3586 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3557 + Range = { StartLine = 3588 + StartColumn = 10 + EndLine = 3588 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3586:24). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3594 StartColumn = 1 - EndLine = 3557 + EndLine = 3594 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3600 + StartColumn = 1 + EndLine = 3600 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3603 + StartColumn = 1 + EndLine = 3603 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3604 + StartColumn = 1 + EndLine = 3604 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3604 + StartColumn = 8 + EndLine = 3604 + EndColumn = 13 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3604 + StartColumn = 14 + EndLine = 3604 + EndColumn = 15 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3607 + StartColumn = 9 + EndLine = 3607 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3606:21). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3609 + StartColumn = 1 + EndLine = 3609 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3610 + StartColumn = 2 + EndLine = 3610 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3609:5). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3612 + StartColumn = 1 + EndLine = 3612 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3609:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3617 + StartColumn = 17 + EndLine = 3617 + EndColumn = 39 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3616:26). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3624 + StartColumn = 1 + EndLine = 3624 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3612:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3558 + Range = { StartLine = 3627 + StartColumn = 1 + EndLine = 3627 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3624:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3649 StartColumn = 5 - EndLine = 3558 + EndLine = 3649 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3648:30). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3670 + StartColumn = 1 + EndLine = 3670 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3627:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3680 + StartColumn = 1 + EndLine = 3680 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3670:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3691 + StartColumn = 1 + EndLine = 3691 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3680:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3696 + StartColumn = 1 + EndLine = 3696 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3691:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3703 + StartColumn = 1 + EndLine = 3703 + EndColumn = 4 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3704 + StartColumn = 5 + EndLine = 3704 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3557:10). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3703:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3560 + Range = { StartLine = 3706 StartColumn = 1 - EndLine = 3560 + EndLine = 3706 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3561 + Range = { StartLine = 3707 StartColumn = 5 - EndLine = 3561 + EndLine = 3707 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3560:7). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3706:7). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3563 + Range = { StartLine = 3709 StartColumn = 1 - EndLine = 3563 + EndLine = 3709 EndColumn = 3 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3564 + Range = { StartLine = 3710 StartColumn = 5 - EndLine = 3564 + EndLine = 3710 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3563:14). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3709:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3567 + Range = { StartLine = 3713 StartColumn = 1 - EndLine = 3567 + EndLine = 3713 EndColumn = 9 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3568 + Range = { StartLine = 3714 StartColumn = 1 - EndLine = 3568 + EndLine = 3714 EndColumn = 2 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3574 + Range = { StartLine = 3720 StartColumn = 1 - EndLine = 3574 + EndLine = 3720 EndColumn = 9 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3575 + Range = { StartLine = 3721 StartColumn = 1 - EndLine = 3575 + EndLine = 3721 EndColumn = 2 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3578 + Range = { StartLine = 3724 StartColumn = 5 - EndLine = 3578 + EndLine = 3724 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3577:8). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3723:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3585 + Range = { StartLine = 3726 + StartColumn = 5 + EndLine = 3726 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3725:7). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3731 StartColumn = 1 - EndLine = 3585 + EndLine = 3731 EndColumn = 9 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3588 + Range = { StartLine = 3734 StartColumn = 10 - EndLine = 3588 + EndLine = 3734 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3587:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3733:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3590 + Range = { StartLine = 3736 StartColumn = 10 - EndLine = 3590 + EndLine = 3736 EndColumn = 11 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3589:13). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3735:13). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3596 + Range = { StartLine = 3742 StartColumn = 1 - EndLine = 3596 + EndLine = 3742 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3597 + Range = { StartLine = 3743 StartColumn = 5 - EndLine = 3597 + EndLine = 3743 EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3596:16). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3742:16). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3602 + Range = { StartLine = 3748 StartColumn = 1 - EndLine = 3602 - EndColumn = 5 } + EndLine = 3748 + EndColumn = 3 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3608 + Range = { StartLine = 3751 StartColumn = 1 - EndLine = 3608 - EndColumn = 5 } + EndLine = 3751 + EndColumn = 3 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3611 + Range = { StartLine = 3754 StartColumn = 1 - EndLine = 3611 - EndColumn = 5 } + EndLine = 3754 + EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3612 + Range = { StartLine = 3755 + StartColumn = 5 + EndLine = 3755 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3754:18). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3757 StartColumn = 1 - EndLine = 3612 - EndColumn = 7 } + EndLine = 3757 + EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3612 - StartColumn = 8 - EndLine = 3612 - EndColumn = 13 } + Range = { StartLine = 3758 + StartColumn = 5 + EndLine = 3758 + EndColumn = 8 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3757:21). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3612 - StartColumn = 14 - EndLine = 3612 - EndColumn = 15 } + Range = { StartLine = 3761 + StartColumn = 9 + EndLine = 3761 + EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3760:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3615 + Range = { StartLine = 3766 + StartColumn = 1 + EndLine = 3766 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3768 StartColumn = 9 - EndLine = 3615 + EndLine = 3768 EndColumn = 10 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3614:21). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3767:15). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3617 + Range = { StartLine = 3773 StartColumn = 1 - EndLine = 3617 + EndLine = 3773 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3544:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3618 - StartColumn = 2 - EndLine = 3618 - EndColumn = 4 } + Range = { StartLine = 3774 + StartColumn = 5 + EndLine = 3774 + EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3617:5). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3773:10). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3620 + Range = { StartLine = 3776 StartColumn = 1 - EndLine = 3620 + EndLine = 3776 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3617:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3625 - StartColumn = 17 - EndLine = 3625 - EndColumn = 39 } + Range = { StartLine = 3777 + StartColumn = 5 + EndLine = 3777 + EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3624:26). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3776:14). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3632 + Range = { StartLine = 3779 StartColumn = 1 - EndLine = 3632 - EndColumn = 4 } + EndLine = 3779 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3780 + StartColumn = 5 + EndLine = 3780 + EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3620:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3779:7). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3635 + Range = { StartLine = 3782 StartColumn = 1 - EndLine = 3635 - EndColumn = 4 } + EndLine = 3782 + EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3632:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3657 + Range = { StartLine = 3783 StartColumn = 5 - EndLine = 3657 - EndColumn = 11 } + EndLine = 3783 + EndColumn = 6 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3656:30). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3782:11). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3678 + Range = { StartLine = 3785 StartColumn = 1 - EndLine = 3678 + EndLine = 3785 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3635:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3688 + Range = { StartLine = 3789 StartColumn = 1 - EndLine = 3688 + EndLine = 3789 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3678:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3793 + StartColumn = 1 + EndLine = 3793 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3796 + StartColumn = 1 + EndLine = 3796 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3797 + StartColumn = 5 + EndLine = 3797 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3796:8). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3699 + Range = { StartLine = 3799 StartColumn = 1 - EndLine = 3699 + EndLine = 3799 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3802 + StartColumn = 1 + EndLine = 3802 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3803 + StartColumn = 5 + EndLine = 3803 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3802:57). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3805 + StartColumn = 1 + EndLine = 3805 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3808 + StartColumn = 1 + EndLine = 3808 + EndColumn = 3 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3809 + StartColumn = 5 + EndLine = 3809 + EndColumn = 6 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3808:64). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3811 + StartColumn = 1 + EndLine = 3811 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3688:1). Try indenting this token further or using standard formatting conventions." }; + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } { Error = Warning 58 - Range = { StartLine = 3704 + Range = { StartLine = 3814 StartColumn = 1 - EndLine = 3704 + EndLine = 3814 + EndColumn = 9 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3820 + StartColumn = 1 + EndLine = 3820 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3821 + StartColumn = 1 + EndLine = 3821 + EndColumn = 5 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3822 + StartColumn = 1 + EndLine = 3822 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3822 + StartColumn = 8 + EndLine = 3822 + EndColumn = 11 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3822 + StartColumn = 12 + EndLine = 3822 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3822 + StartColumn = 15 + EndLine = 3822 + EndColumn = 16 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3829 + StartColumn = 1 + EndLine = 3829 + EndColumn = 7 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3829 + StartColumn = 8 + EndLine = 3829 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3829 + StartColumn = 11 + EndLine = 3829 + EndColumn = 12 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3837 + StartColumn = 1 + EndLine = 3837 EndColumn = 4 } Message = - "Possible incorrect indentation: this token is offside of context started at position (3699:1). Try indenting this token further or using standard formatting conventions." } - |] \ No newline at end of file + "Possible incorrect indentation: this token is offside of context started at position (3696:1). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3843 + StartColumn = 9 + EndLine = 3843 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3842:13). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3862 + StartColumn = 9 + EndLine = 3862 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3861:31). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3871 + StartColumn = 13 + EndLine = 3871 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3870:18). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3888 + StartColumn = 9 + EndLine = 3888 + EndColumn = 10 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3887:18). Try indenting this token further or using standard formatting conventions." } + { Error = Warning 58 + Range = { StartLine = 3902 + StartColumn = 13 + EndLine = 3902 + EndColumn = 14 } + Message = + "Possible incorrect indentation: this token is offside of context started at position (3901:16). Try indenting this token further or using standard formatting conventions." } + |] \ No newline at end of file diff --git a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs index 7e45467e9de..97f97e8331e 100644 --- a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs +++ b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs @@ -3551,52 +3551,44 @@ if System.Text.RegularExpressions.Regex.IsMatch( """^[a-zA-Z][a-zA-Z0-9']+$""" ) then () - -// Some random cases - -for i in <@ - 1 -@> |> box |> unbox do () -while <@@ - 1 -@@> |> box |> unbox do () -do ignore <| <@@ - 1 -@@> - -function -| { - y = 6 -} -> () -<| { - y = 7 -} -function -| { - y = 6 -} when { - y = 2 -} = { - y = 3 -} -> () -<| { - y = 7 -} -function { - y = 6 - } when { - y = 2 - } = { - y = 3 - } -> () -<| { - y = 7 -} - -exception J of {| - r : int -|} - + +// https://github.com/fsharp/fslang-suggestions/issues/504 +module Q = + module Z = + type Alpha< ^b, ^a + when ^ a : (member Name:string) +and ^a: (member Zip + : ^b when +^b : struct ) +and ^a +: (static member(+) + : 'a * 'a +-> 'a +) + > () = + member inline __.X = () + with + static member inline Y = () + +type TypeWithALongName< ^a + when ^a:(static member(+):'a * 'a -> 'a ) + and ^a:(static member(-):'a * 'a -> 'a ) + and ^a:(static member(*):'a * 'a -> 'a ) + and ^a:(static member(/):'a * 'a -> 'a ) +> = + static member inline X = 2 +type TypeWithALongName2< ^a + when ^a:(static member(+):'a * 'a -> 'a ) + and ^a:(static member(-):'a * 'a -> 'a ) + and ^a:(static member(*):'a * 'a -> 'a ) + and ^a:(static member(/):'a * 'a -> 'a ) + > = static member inline X = () +type TypeWithALongName3< 'a + when 'a: not struct + and ^a:(static member(-):'a * 'a -> 'a ) + and 'a:> System.IDisposable + and ^a:> System.Object +> = static member inline X = () // https://github.com/fsharp/fslang-suggestions/issues/470 type ColorAxis(values : int[], @@ -3704,4 +3696,209 @@ let foo = ([| let bar = [| 1 2 -|] \ No newline at end of file +|] + +// Some random cases + +for i in <@ + 1 +@> |> box |> unbox do () +while <@@ + 1 +@@> |> box |> unbox do () +do ignore <| <@@ + 1 +@@> + +function +| { + y = 6 + } -> () +<| { + y = 7 +} +function +| { + y = 6 + } when { + y = 2 + } = { + y = 3 + } -> () +<| { + y = 7 +} +function { + y = 6 + } when { + y = 2 + } = { + y = 3 + } -> () +<| { + y = 7 +} + +exception J of {| + r : int +|} + +// Individual testing of special-cased contexts + +do ( + () +) +do ignore ( + 1 +) +exception J'' of {| + r : int +|} +exception J' of r : ( + int +) with + member _.A( + _ + ) = () + member _.A'(_: + _ + ) = () +type System.Int32 with + member _.A( + _ + ) = () + member _.A'(_: + _ + ) = () +for i in <@ + 1 + @> |> box |> unbox do () +for i in seq { + 1 +} |> box |> unbox do () +while <@ + 1 +@> |> box |> unbox do () +while seq { + 1 + } |> box |> unbox do () +try seq { + 1 +} with _ -> seq { 2 } +|> ignore +try <@@ + 1 +@@> with _ -> <@@ 2 @@> +|> ignore +if <@ + 1 +@> |> box |> unbox then () +if seq { + 1 + } |> box |> unbox then () +if true then Seq.head <| seq { + () +} |> id +if true then (box >> unbox) <@ + () +@> |> id +if true then () else (box >> unbox) <| seq { + 1 +} |> id +if true then () else (box >> unbox) <@ + 1 +@> |> id +fun () -> Seq.head <| seq { + () +} |> ignore unit> +function () -> Seq.head <| seq { + () +} |> ignore unit> + +// Examples in the RFC + +type R = { a : int } +type [] H = static member h a = () +module rec M1 = + let messageLoop (state:int) = async { + return! someOther(state) + } // Sure + let someOther(state:int) = async { + return! messageLoop(state) + } +module M2 = + let rec messageLoop (state:int) = async { + return! someOther(state) + } + // error FS0010: Unexpected keyword 'and' in definition. Expected incomplete structured construct at or before this point or other token. + and someOther(state:int) = async { + return! messageLoop(state) + } +let RFC = + + let a = id [ + 1 // No longer produces warning FS0058 after [RFC FS-1054] less strict indentation on common DSL pattern + ] + let b = id ( + 1 // warning FS0058: Possible incorrect indentation + ) + let c = ( + 1 // But this is ok + ) + try + 1 + with _ -> 2 // Totally fine + |> ignore + + match + 1 + with _ -> 2 // error FS0010: Unexpected start of structured construct in expression + |> ignore + if true then [ 0 ] else [ + 1 // This is fine + ] + |> ignore + if true then <@ 0 @> else <@ + 1 // warning FS0058: Possible incorrect indentation + @> + |> ignore + let d = + if [ + 2 // Fine + ] = [3] then () + let e = + if [3] = [ + 2 // warning FS0058: Possible incorrect indentation + ] then () + + let f = { + a = 1 // Ok + } + let { + a = g + } = f // error FS0010: Incomplete structured construct at or before this point in binding. Expected '=' or other token. + + let _ = h { a = + 2 // Ok + } + let _ = h ( a = + 2 // Also ok + ) + let _ = h {| a = + 2 // warning FS0058: Possible incorrect indentation + |} + + let i = + if true then ignore [ + 1 // Ok + ] else ignore [ 2 ] + let j = + if true then ignore [ 1 ] else ignore [ + 2 // Ok + ] + let k = + let tru _ = true + if tru [ + 1 // warning FS0058: Possible incorrect indentation + ] then () + () \ No newline at end of file diff --git a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl index bf7a5372418..d46f0278052 100644 --- a/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl +++ b/tests/FSharp.Compiler.ComponentTests/resources/tests/Conformance/LexicalFiltering/Basic/OffsideExceptions/RelaxWhitespace2.fs.bsl @@ -43,6 +43,6 @@ RelaxWhitespace2.fs (3394,13)-(3394,14) typecheck warning Incomplete pattern mat RelaxWhitespace2.fs (3397,13)-(3397,14) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). RelaxWhitespace2.fs (3403,21)-(3403,22) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). RelaxWhitespace2.fs (3410,13)-(3415,20) typecheck warning Incomplete pattern matches on this expression. For example, the value '0' may indicate a case not covered by the pattern(s). -RelaxWhitespace2.fs (3567,1)-(3567,9) typecheck warning Incomplete pattern matches on this expression. For example, the value '{y=0}' may indicate a case not covered by the pattern(s). -RelaxWhitespace2.fs (3574,1)-(3574,9) typecheck warning Incomplete pattern matches on this expression. -RelaxWhitespace2.fs (3585,1)-(3585,9) typecheck warning Incomplete pattern matches on this expression. \ No newline at end of file +RelaxWhitespace2.fs (3713,1)-(3713,9) typecheck warning Incomplete pattern matches on this expression. For example, the value '{y=0}' may indicate a case not covered by the pattern(s). +RelaxWhitespace2.fs (3720,1)-(3720,9) typecheck warning Incomplete pattern matches on this expression. +RelaxWhitespace2.fs (3731,1)-(3731,9) typecheck warning Incomplete pattern matches on this expression. \ No newline at end of file diff --git a/tests/FSharp.Test.Utilities/Compiler.fs b/tests/FSharp.Test.Utilities/Compiler.fs index 20b0d458e21..6bba3e41032 100644 --- a/tests/FSharp.Test.Utilities/Compiler.fs +++ b/tests/FSharp.Test.Utilities/Compiler.fs @@ -610,13 +610,15 @@ module rec Compiler = let private assertErrors (what: string) libAdjust (source: ErrorInfo list) (expected: ErrorInfo list) : unit = let errors = source |> List.map (fun error -> { error with Range = adjustRange error.Range libAdjust }) - + let inline checkEqual k a b = if a <> b then Assert.AreEqual(a, b, sprintf "%s: Mismatch in %s, expected '%A', got '%A'.\nAll errors:\n%A\nExpected errors:\n%A" what k a b errors expected) + // For lists longer than 100 errors: + errors |> List.iter System.Diagnostics.Debug.WriteLine // TODO: Check all "categories", collect all results and print alltogether. - checkEqual "Errors count" expected.Length errors.Length + checkEqual "Errors count" expected.Length errors.Length (errors, expected) ||> List.iter2 (fun actualError expectedError -> diff --git a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs index 9213428cd3d..cf96e9d53a4 100644 --- a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs +++ b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs @@ -31,17 +31,18 @@ type DirectoryAttribute(dir: string) = | _ -> None let createCompilationUnit path fs = - let fsSource = (path ++ fs) |> File.ReadAllText - let bslFilePath = path ++ (fs + ".bsl") - let ilFilePath = path ++ (fs + ".il") + let filePath = path ++ fs + let fsSource = File.ReadAllText filePath + let bslFilePath = filePath + ".bsl" + let ilFilePath = filePath + ".il" let bslSource = readFileOrDefault bslFilePath let ilSource = readFileOrDefault ilFilePath { Source = Text fsSource Baseline = - Some { SourceFilename = Some (path ++ fs) + Some { SourceFilename = Some filePath OutputBaseline = { FilePath = bslFilePath; Content = bslSource } - ILBaseline = { FilePath = ilFilePath; Content = ilSource } } + ILBaseline = { FilePath = ilFilePath; Content = ilSource } } Options = [] OutputType = Library SourceKind = SourceKind.Fsx From bdd827a80b1d9f8bd080e8366656c1085cf56844 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Sun, 4 Jul 2021 01:38:46 +0800 Subject: [PATCH 04/24] Fix failures --- .../Basic/OffsideExceptions.fs | 64 +++++++++++++++++++ tests/service/PatternMatchCompilationTests.fs | 10 +-- 2 files changed, 69 insertions(+), 5 deletions(-) diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index e9be5ef2168..fe5ceffa90b 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -149,6 +149,23 @@ module A |> typecheck |> shouldSucceed |> ignore + [] + let RelaxWhitespace2_AllowedBefore7() = + Fsx """module M = begin type K = member _.G = 3 end;; module M2 = do begin end;; module M3 = do ()""" + |> typecheck + |> shouldSucceed + |> ignore + [] + let RelaxWhitespace2_AllowedBefore8() = + Fsx """ +module M = begin + type K = member _.G = 3 +end module M2 = do ignore begin 1 +end module M3 = do () + """ + |> typecheck + |> shouldSucceed + |> ignore [] let RelaxWhitespace2_Neg1() = @@ -326,6 +343,53 @@ function Message = "This expression is a function value, i.e. is missing arguments. Its type is R -> unit." } ] |> ignore + [] + let RelaxWhitespace2_Neg9() = + Fsx """ +let _ = <@ type Foo(x : int) = + member this.Length = x @> + +exit 1 + + """ + |> compile + |> shouldFail + |> withResults [ + { Error = Error 10 + Range = { StartLine = 2 + StartColumn = 12 + EndLine = 2 + EndColumn = 16 } + Message = + "Incomplete structured construct at or before this point in quotation literal" }; + { Error = Error 602 + Range = { StartLine = 2 + StartColumn = 9 + EndLine = 2 + EndColumn = 11 } + Message = "Unmatched '<@ @>'" }; + { Error = Error 10 + Range = { StartLine = 2 + StartColumn = 12 + EndLine = 2 + EndColumn = 16 } + Message = + "Unexpected keyword 'type' in binding. Expected incomplete structured construct at or before this point or other token." }; + { Error = Error 3118 + Range = { StartLine = 2 + StartColumn = 1 + EndLine = 2 + EndColumn = 4 } + Message = + "Incomplete value or function definition. If this is in an expression, the body of the expression must be indented to the same column as the 'let' keyword." }; + { Error = Error 10 + Range = { StartLine = 3 + StartColumn = 38 + EndLine = 3 + EndColumn = 40 } + Message = + "Unexpected end of quotation in expression. Expected incomplete structured construct at or before this point or other token." } + ] |> ignore [] let RelaxWhitespace2_Fs50 compilation = diff --git a/tests/service/PatternMatchCompilationTests.fs b/tests/service/PatternMatchCompilationTests.fs index 30afbefd85d..c959c2c84ff 100644 --- a/tests/service/PatternMatchCompilationTests.fs +++ b/tests/service/PatternMatchCompilationTests.fs @@ -657,7 +657,7 @@ let z as "(14,9--14,10): Unexpected symbol '|' in binding" "(15,13--15,14): Unexpected symbol '=' in pattern. Expected ')' or other token." "(15,9--15,10): Unmatched '('" - "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:10). Try indenting this token further or using standard formatting conventions." + "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:1). Try indenting this token further or using standard formatting conventions." "(17,16--17,17): Unexpected identifier in pattern. Expected '(' or other token." "(20,0--20,0): Incomplete structured construct at or before this point in binding" "(3,13--3,17): This expression was expected to have type 'int' but here has type 'bool'" @@ -793,7 +793,7 @@ let z as = "(14,8--14,10): Unexpected keyword 'as' in binding" "(15,8--15,10): Unexpected keyword 'as' in pattern. Expected ')' or other token." "(15,6--15,7): Unmatched '('" - "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:7). Try indenting this token further or using standard formatting conventions." + "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:1). Try indenting this token further or using standard formatting conventions." "(16,0--16,3): Unexpected keyword 'let' or 'use' in binding. Expected incomplete structured construct at or before this point or other token." "(15,0--15,3): Incomplete value or function definition. If this is in an expression, the body of the expression must be indented to the same column as the 'let' keyword." "(17,0--17,3): Incomplete structured construct at or before this point in implementation file" @@ -987,7 +987,7 @@ let :? z as "(14,12--14,13): Unexpected symbol '|' in binding" "(15,16--15,17): Unexpected symbol '=' in pattern. Expected ')' or other token." "(15,12--15,13): Unmatched '('" - "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:13). Try indenting this token further or using standard formatting conventions." + "(16,0--16,3): Possible incorrect indentation: this token is offside of context started at position (15:1). Try indenting this token further or using standard formatting conventions." "(17,19--17,20): Unexpected identifier in pattern. Expected '(' or other token." "(20,0--20,0): Incomplete structured construct at or before this point in binding" "(3,7--3,8): The type 'a' is not defined." @@ -1195,11 +1195,11 @@ let as :? z = "(15,13--15,15): Unexpected keyword 'as' in pattern. Expected '(' or other token." "(16,8--16,10): Unexpected keyword 'as' in pattern. Expected ')' or other token." "(16,6--16,7): Unmatched '('" - "(17,0--17,3): Possible incorrect indentation: this token is offside of context started at position (16:7). Try indenting this token further or using standard formatting conventions." + "(17,0--17,3): Possible incorrect indentation: this token is offside of context started at position (16:1). Try indenting this token further or using standard formatting conventions." "(17,0--17,3): Unexpected keyword 'let' or 'use' in binding. Expected incomplete structured construct at or before this point or other token." "(16,0--16,3): Incomplete value or function definition. If this is in an expression, the body of the expression must be indented to the same column as the 'let' keyword." "(17,8--17,10): Unexpected keyword 'as' in pattern. Expected ']' or other token." - "(18,0--18,3): Possible incorrect indentation: this token is offside of context started at position (17:7). Try indenting this token further or using standard formatting conventions." + "(18,0--18,3): Possible incorrect indentation: this token is offside of context started at position (17:1). Try indenting this token further or using standard formatting conventions." "(19,0--19,3): Possible incorrect indentation: this token is offside of context started at position (18:1). Try indenting this token further or using standard formatting conventions." "(20,0--20,0): Possible incorrect indentation: this token is offside of context started at position (19:1). Try indenting this token further or using standard formatting conventions." "(20,0--20,0): Possible incorrect indentation: this token is offside of context started at position (19:1). Try indenting this token further or using standard formatting conventions." From 53f4c57995017047811b959de3404d142bdd9fc0 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Sun, 4 Jul 2021 18:37:44 +0800 Subject: [PATCH 05/24] Fix errors in tests --- .../Regressions/E_InvalidQuotationLiteral01.fs | 4 ++++ .../LegacyLanguageService/Tests.LanguageService.ErrorList.fs | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs b/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs index f7a76742279..752ce457fba 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs +++ b/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs @@ -1,6 +1,10 @@ // #Regression #Conformance #Quotations // Verify restrictions for what can be written in a quotation +//Incomplete structured construct at or before this point in quotation literal +//Unmatched '<@ @>' //Unexpected keyword 'type' in quotation literal +//Incomplete value or function definition. If this is in an expression, the body of the expression must be indented to the same column as the 'let' keyword. +//Unexpected end of quotation in expression. Expected incomplete structured construct at or before this point or other token. let _ = <@ type Foo(x : int) = member this.Length = x @> diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ErrorList.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ErrorList.fs index aff227acd96..8360254fa37 100644 --- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ErrorList.fs +++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ErrorList.fs @@ -541,7 +541,7 @@ but here has type this.VerifyWarningListCountAtOpenProject( fileContents = """ type foo = N1.T< - const "Hello World",2>""", + const "Hello World",2>""", expectedNum = 1, addtlRefAssy = [PathRelativeToTestAssembly(@"DummyProviderForLanguageServiceTesting.dll")]) @@ -572,7 +572,7 @@ but here has type [] [] - member public this.``UnicodeCharactors``() = + member public this.``UnicodeCharacters``() = use _guard = this.UsingNewVS() let solution = this.CreateSolution() let project = CreateProject(solution,"新規baApplication5") From f10397efd40bab97850411262426fe8eb42401cf Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Mon, 5 Jul 2021 16:54:39 +0800 Subject: [PATCH 06/24] Backcompat again --- src/fsharp/LexFilter.fs | 10 +- .../Basic/OffsideExceptions.fs | 24 + tests/fsharpqa/Source/test.lst | 554 +++++++++--------- 3 files changed, 308 insertions(+), 280 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index fe94b1594dc..4b1aaa748e0 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -1247,7 +1247,8 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu let isSemiSemi = match token with SEMICOLON_SEMICOLON -> true | _ -> false let relaxWhitespace2OffsideRule = - // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns (given RelaxWhitespace2) + // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns... (given RelaxWhitespace2) + // This should not be applied to contexts without closing tokens! (CtxtFun, CtxtFunction, CtxtDo, CtxtSeqBlock etc) // let ( member Foo ( for x in ( while ( // ... ... ... ... // ) = ... ) = ... ) do ... ) do ... @@ -1703,9 +1704,12 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu if debug then dprintf "token at column %d is offside from LET(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND - + + // do ignore ( + // 1 + // ), 2 // This is a 'unit * int', so for backwards compatibility, do not treat ')' as a continuator | _, (CtxtDo offsidePos :: _) - when isSemiSemi || (if relaxWhitespace2OffsideRule || isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if (*relaxWhitespace2OffsideRule ||*) isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from DO(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index fe5ceffa90b..0e0ad01c1aa 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -166,6 +166,30 @@ end module M3 = do () |> typecheck |> shouldSucceed |> ignore + [] + let RelaxWhitespace2_AllowedBefore9() = + Fsx """ +let a = + fun () -> ( + 1 + ), 2 + |> printfn "%O" + in ignore<(unit -> int) * unit> a +let b = + fun () -> ( + 1 + ), 2 + |> printfn "%O" + in ignore<(unit -> int) * unit> b +let c = + do ignore ( + 1 + ), 2 |> printfn "%O" + in ignore c + """ + |> typecheck + |> shouldSucceed + |> ignore [] let RelaxWhitespace2_Neg1() = diff --git a/tests/fsharpqa/Source/test.lst b/tests/fsharpqa/Source/test.lst index 5a8307bdb9f..8b16430945d 100644 --- a/tests/fsharpqa/Source/test.lst +++ b/tests/fsharpqa/Source/test.lst @@ -5,281 +5,281 @@ # ReqNOCov -- skip this test/suite if we are doing a code coverage run # ReqENU -- skip this test/suite if we are running on non-ENU (useful to exclude hard-to-localize tests) -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AsyncExpressionStepping -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AttributeTargets -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CCtorDUWithMember -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CompiledNameAttribute -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ComputationExpressions -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\DoNotBoxStruct -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\GeneratedIterators -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\InequalityComparison -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ListExpressionStepping -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\LiteralValue -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\MethodImplAttribute -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Misc -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Mutation -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Operators -Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\QueryExpressionStepping -Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionStepping -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionTailCalls -CodeGen01,NoMT,CodeGen,NoHostedCompiler,SerializableAttribute CodeGen\EmittedIL\SerializableAttribute -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\StaticInit -Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SteppingMatch -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TailCalls -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TestFunctions -CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Tuples -CodeGen01,NoMT,CodeGen CodeGen\StringEncoding -CodeGen01,NoMT,CodeGen CodeGen\Structure - -CompilerOptions01,NoMT CompilerOptions\fsc\checked -CompilerOptions01,NoMT CompilerOptions\fsc\cliversion -CompilerOptions01,NoMT CompilerOptions\fsc\codepage -CompilerOptions01,NoMT CompilerOptions\fsc\crossoptimize -CompilerOptions01,NoMT CompilerOptions\fsc\debug -CompilerOptions01,NoMT CompilerOptions\fsc\dumpAllCommandLineOptions -CompilerOptions01,NoMT CompilerOptions\fsc\flaterrors -CompilerOptions02,NoMT CompilerOptions\fsc\gccerrors -CompilerOptions01,NoMT,help CompilerOptions\fsc\help -CompilerOptions01,NoMT CompilerOptions\fsc\highentropyva -CompilerOptions01,NoMT CompilerOptions\fsc\langversion -CompilerOptions01,NoMT CompilerOptions\fsc\lib -CompilerOptions01,NoMT CompilerOptions\fsc\noframework -CompilerOptions01,NoMT CompilerOptions\fsc\nologo -CompilerOptions01,NoMT CompilerOptions\fsc\optimize -CompilerOptions01,NoMT CompilerOptions\fsc\out -CompilerOptions01,NoMT,pdbs CompilerOptions\fsc\pdb -CompilerOptions01,NoMT CompilerOptions\fsc\platform -CompilerOptions01,NoMT CompilerOptions\fsc\reference -CompilerOptions01,NoMT CompilerOptions\fsc\Removed -CompilerOptions01,NoMT CompilerOptions\fsc\standalone -CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\staticlink -CompilerOptions01,NoMT CompilerOptions\fsc\subsystemversion -CompilerOptions01,NoMT CompilerOptions\fsc\tailcalls -CompilerOptions01,NoMT CompilerOptions\fsc\target -CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\times -CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\tokenize -CompilerOptions01,NoMT CompilerOptions\fsc\warn -CompilerOptions01,NoMT CompilerOptions\fsc\warnaserror -CompilerOptions01,NoMT CompilerOptions\fsc\warnon -CompilerOptions01,NoMT CompilerOptions\fsc\responsefile -CompilerOptions01,NoMT,help CompilerOptions\fsi\help -CompilerOptions01,NoMT CompilerOptions\fsi\highentropyva -CompilerOptions01,NoMT CompilerOptions\fsi\langversion -CompilerOptions01,NoMT CompilerOptions\fsi\nologo -CompilerOptions01,NoMT CompilerOptions\fsi\subsystemversion -CompilerOptions01,NoMT CompilerOptions\fsi\times -CompilerOptions02,NoMT CompilerOptions\fsi\exename -CompilerOptions01,NoMT,Determinism CompilerOptions\fsc\determinism - -Conformance01 Conformance\BasicGrammarElements\Constants -Conformance01 Conformance\BasicGrammarElements\OperatorNames -Conformance01 Conformance\BasicGrammarElements\PrecedenceAndOperators -Conformance01 Conformance\BasicTypeAndModuleDefinitions\ExceptionDefinitions -Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Diags -Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Legacy -Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\New -Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Basic -Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\IComparison -Conformance01 Conformance\BasicTypeAndModuleDefinitions\ModuleDefinitions -Conformance01 Conformance\BasicTypeAndModuleDefinitions\NamespaceDeclGroups -Conformance01 Conformance\BasicTypeAndModuleDefinitions\NullRepresentations -Conformance01 Conformance\BasicTypeAndModuleDefinitions\RecordTypes -Conformance01 Conformance\BasicTypeAndModuleDefinitions\TypeAbbreviations -Conformance01 Conformance\BasicTypeAndModuleDefinitions\UnionTypes -Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\Basic -Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnOverridesAndIFaceImpl -Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnTypeMembers -Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\PermittedLocations -Conformance01 Conformance\DeclarationElements\CustomAttributes\ArgumentsOfAllTypes -Conformance01 Conformance\DeclarationElements\CustomAttributes\AttributeInheritance - -Conformance02 Conformance\DeclarationElements\CustomAttributes\AttributeUsage -Conformance02 Conformance\DeclarationElements\CustomAttributes\Basic -Conformance02 Conformance\DeclarationElements\CustomAttributes\ImportedAttributes -Conformance02 Conformance\DeclarationElements\Events\basic -Conformance02 Conformance\DeclarationElements\FieldMembers -Conformance02 Conformance\DeclarationElements\ImportDeclarations -Conformance02 Conformance\DeclarationElements\InterfaceSpecificationsAndImplementations -Conformance02 Conformance\DeclarationElements\LetBindings\ActivePatternBindings -Conformance02 Conformance\DeclarationElements\LetBindings\ArityInference -Conformance02 Conformance\DeclarationElements\LetBindings\Basic -Conformance02 Conformance\DeclarationElements\LetBindings\ExplicitTypeParameters -Conformance02 Conformance\DeclarationElements\LetBindings\TypeFunctions -Conformance02 Conformance\DeclarationElements\MemberDefinitions\ImplementingDispatchSlots -Conformance02 Conformance\DeclarationElements\MemberDefinitions\MethodsAndProperties -Conformance02 Conformance\DeclarationElements\MemberDefinitions\NamedArguments -Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalArguments -Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalDefaultParameterValueArguments -Conformance02 Conformance\DeclarationElements\MemberDefinitions\OverloadingMembers -Conformance02 Conformance\DeclarationElements\ModuleAbbreviations -Conformance02 Conformance\DeclarationElements\ObjectConstructors -Conformance02 Conformance\DeclarationElements\P-invokeDeclarations - -Conformance03 Conformance\Expressions\ApplicationExpressions\Assertion -Conformance03 Conformance\Expressions\ApplicationExpressions\BasicApplication -Conformance03 Conformance\Expressions\ApplicationExpressions\ObjectConstruction -Conformance03 Conformance\Expressions\BindingExpressions\Binding -Conformance03 Conformance\Expressions\ConstantExpressions -Conformance03 Conformance\Expressions\ControlFlowExpressions\Assertion -Conformance03 Conformance\Expressions\ControlFlowExpressions\Conditional -Conformance03 Conformance\Expressions\ControlFlowExpressions\ParenthesizedAndBlock -Conformance03 Conformance\Expressions\ControlFlowExpressions\PatternMatching -Conformance03 Conformance\Expressions\ControlFlowExpressions\SequenceIteration -Conformance03 Conformance\Expressions\ControlFlowExpressions\SequentialExecution -Conformance03 Conformance\Expressions\ControlFlowExpressions\SimpleFor -Conformance03 Conformance\Expressions\ControlFlowExpressions\TryWith -Conformance03 Conformance\Expressions\ControlFlowExpressions\TryFinally -Conformance03 Conformance\Expressions\ControlFlowExpressions\While -Conformance03 Conformance\Expressions\DataExpressions\AddressOf -Conformance03 Conformance\Expressions\DataExpressions\ComputationExpressions -Conformance03 Conformance\Expressions\DataExpressions\ObjectExpressions -Conformance03 Conformance\Expressions\DataExpressions\QueryExpressions -Conformance03 Conformance\Expressions\DataExpressions\RangeExpressions - -Conformance04 Conformance\Expressions\DataExpressions\SequenceExpressions -Conformance04 Conformance\Expressions\DataExpressions\TupleExpressions -Conformance04 Conformance\Expressions\ElaborationAndElaboratedExpressions -Conformance04 Conformance\Expressions\EvaluationAndValues -Conformance04 Conformance\Expressions\EvaluationOfElaboratedForms -Conformance04 Conformance\Expressions\ExpressionQuotations\Baselines +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AsyncExpressionStepping +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AttributeTargets +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CCtorDUWithMember +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CompiledNameAttribute +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ComputationExpressions +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\DoNotBoxStruct +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\GeneratedIterators +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\InequalityComparison +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ListExpressionStepping +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\LiteralValue +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\MethodImplAttribute +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Misc +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Mutation +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Operators +# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\QueryExpressionStepping +# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionStepping +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionTailCalls +# CodeGen01,NoMT,CodeGen,NoHostedCompiler,SerializableAttribute CodeGen\EmittedIL\SerializableAttribute +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\StaticInit +# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SteppingMatch +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TailCalls +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TestFunctions +# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Tuples +# CodeGen01,NoMT,CodeGen CodeGen\StringEncoding +# CodeGen01,NoMT,CodeGen CodeGen\Structure +# +# CompilerOptions01,NoMT CompilerOptions\fsc\checked +# CompilerOptions01,NoMT CompilerOptions\fsc\cliversion +# CompilerOptions01,NoMT CompilerOptions\fsc\codepage +# CompilerOptions01,NoMT CompilerOptions\fsc\crossoptimize +# CompilerOptions01,NoMT CompilerOptions\fsc\debug +# CompilerOptions01,NoMT CompilerOptions\fsc\dumpAllCommandLineOptions +# CompilerOptions01,NoMT CompilerOptions\fsc\flaterrors +# CompilerOptions02,NoMT CompilerOptions\fsc\gccerrors +# CompilerOptions01,NoMT,help CompilerOptions\fsc\help +# CompilerOptions01,NoMT CompilerOptions\fsc\highentropyva +# CompilerOptions01,NoMT CompilerOptions\fsc\langversion +# CompilerOptions01,NoMT CompilerOptions\fsc\lib +# CompilerOptions01,NoMT CompilerOptions\fsc\noframework +# CompilerOptions01,NoMT CompilerOptions\fsc\nologo +# CompilerOptions01,NoMT CompilerOptions\fsc\optimize +# CompilerOptions01,NoMT CompilerOptions\fsc\out +# CompilerOptions01,NoMT,pdbs CompilerOptions\fsc\pdb +# CompilerOptions01,NoMT CompilerOptions\fsc\platform +# CompilerOptions01,NoMT CompilerOptions\fsc\reference +# CompilerOptions01,NoMT CompilerOptions\fsc\Removed +# CompilerOptions01,NoMT CompilerOptions\fsc\standalone +# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\staticlink +# CompilerOptions01,NoMT CompilerOptions\fsc\subsystemversion +# CompilerOptions01,NoMT CompilerOptions\fsc\tailcalls +# CompilerOptions01,NoMT CompilerOptions\fsc\target +# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\times +# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\tokenize +# CompilerOptions01,NoMT CompilerOptions\fsc\warn +# CompilerOptions01,NoMT CompilerOptions\fsc\warnaserror +# CompilerOptions01,NoMT CompilerOptions\fsc\warnon +# CompilerOptions01,NoMT CompilerOptions\fsc\responsefile +# CompilerOptions01,NoMT,help CompilerOptions\fsi\help +# CompilerOptions01,NoMT CompilerOptions\fsi\highentropyva +# CompilerOptions01,NoMT CompilerOptions\fsi\langversion +# CompilerOptions01,NoMT CompilerOptions\fsi\nologo +# CompilerOptions01,NoMT CompilerOptions\fsi\subsystemversion +# CompilerOptions01,NoMT CompilerOptions\fsi\times +# CompilerOptions02,NoMT CompilerOptions\fsi\exename +# CompilerOptions01,NoMT,Determinism CompilerOptions\fsc\determinism +# +# Conformance01 Conformance\BasicGrammarElements\Constants +# Conformance01 Conformance\BasicGrammarElements\OperatorNames +# Conformance01 Conformance\BasicGrammarElements\PrecedenceAndOperators +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\ExceptionDefinitions +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Diags +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Legacy +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\New +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Basic +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\IComparison +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\ModuleDefinitions +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\NamespaceDeclGroups +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\NullRepresentations +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\RecordTypes +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\TypeAbbreviations +# Conformance01 Conformance\BasicTypeAndModuleDefinitions\UnionTypes +# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\Basic +# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnOverridesAndIFaceImpl +# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnTypeMembers +# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\PermittedLocations +# Conformance01 Conformance\DeclarationElements\CustomAttributes\ArgumentsOfAllTypes +# Conformance01 Conformance\DeclarationElements\CustomAttributes\AttributeInheritance +# +# Conformance02 Conformance\DeclarationElements\CustomAttributes\AttributeUsage +# Conformance02 Conformance\DeclarationElements\CustomAttributes\Basic +# Conformance02 Conformance\DeclarationElements\CustomAttributes\ImportedAttributes +# Conformance02 Conformance\DeclarationElements\Events\basic +# Conformance02 Conformance\DeclarationElements\FieldMembers +# Conformance02 Conformance\DeclarationElements\ImportDeclarations +# Conformance02 Conformance\DeclarationElements\InterfaceSpecificationsAndImplementations +# Conformance02 Conformance\DeclarationElements\LetBindings\ActivePatternBindings +# Conformance02 Conformance\DeclarationElements\LetBindings\ArityInference +# Conformance02 Conformance\DeclarationElements\LetBindings\Basic +# Conformance02 Conformance\DeclarationElements\LetBindings\ExplicitTypeParameters +# Conformance02 Conformance\DeclarationElements\LetBindings\TypeFunctions +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\ImplementingDispatchSlots +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\MethodsAndProperties +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\NamedArguments +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalArguments +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalDefaultParameterValueArguments +# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OverloadingMembers +# Conformance02 Conformance\DeclarationElements\ModuleAbbreviations +# Conformance02 Conformance\DeclarationElements\ObjectConstructors +# Conformance02 Conformance\DeclarationElements\P-invokeDeclarations +# +# Conformance03 Conformance\Expressions\ApplicationExpressions\Assertion +# Conformance03 Conformance\Expressions\ApplicationExpressions\BasicApplication +# Conformance03 Conformance\Expressions\ApplicationExpressions\ObjectConstruction +# Conformance03 Conformance\Expressions\BindingExpressions\Binding +# Conformance03 Conformance\Expressions\ConstantExpressions +# Conformance03 Conformance\Expressions\ControlFlowExpressions\Assertion +# Conformance03 Conformance\Expressions\ControlFlowExpressions\Conditional +# Conformance03 Conformance\Expressions\ControlFlowExpressions\ParenthesizedAndBlock +# Conformance03 Conformance\Expressions\ControlFlowExpressions\PatternMatching +# Conformance03 Conformance\Expressions\ControlFlowExpressions\SequenceIteration +# Conformance03 Conformance\Expressions\ControlFlowExpressions\SequentialExecution +# Conformance03 Conformance\Expressions\ControlFlowExpressions\SimpleFor +# Conformance03 Conformance\Expressions\ControlFlowExpressions\TryWith +# Conformance03 Conformance\Expressions\ControlFlowExpressions\TryFinally +# Conformance03 Conformance\Expressions\ControlFlowExpressions\While +# Conformance03 Conformance\Expressions\DataExpressions\AddressOf +# Conformance03 Conformance\Expressions\DataExpressions\ComputationExpressions +# Conformance03 Conformance\Expressions\DataExpressions\ObjectExpressions +# Conformance03 Conformance\Expressions\DataExpressions\QueryExpressions +# Conformance03 Conformance\Expressions\DataExpressions\RangeExpressions +# +# Conformance04 Conformance\Expressions\DataExpressions\SequenceExpressions +# Conformance04 Conformance\Expressions\DataExpressions\TupleExpressions +# Conformance04 Conformance\Expressions\ElaborationAndElaboratedExpressions +# Conformance04 Conformance\Expressions\EvaluationAndValues +# Conformance04 Conformance\Expressions\EvaluationOfElaboratedForms +# Conformance04 Conformance\Expressions\ExpressionQuotations\Baselines Conformance04 Conformance\Expressions\ExpressionQuotations\Regressions -Conformance04 Conformance\Expressions\SomeCheckingAndInferenceTerminology -Conformance04 Conformance\Expressions\SyntacticSugar -Conformance04 Conformance\Expressions\SyntacticSugarAndAmbiguities -Conformance04 Conformance\Expressions\Type-relatedExpressions -Conformance04 Conformance\ImplementationFilesAndSignatureFiles\CheckingOfImplementationFiles -Conformance04 Conformance\ImplementationFilesAndSignatureFiles\InitializationSemanticsForImplementationFiles -Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\basic -Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\global -Conformance04 Conformance\ImplementationFilesAndSignatureFiles\SignatureFiles -Conformance04 Conformance\InferenceProcedures\ByrefSafetyAnalysis -Conformance04 Conformance\InferenceProcedures\ConstraintSolving -Conformance04 Conformance\InferenceProcedures\DispatchSlotChecking - -Conformance05 Conformance\InferenceProcedures\DispatchSlotInference -Conformance05 Conformance\InferenceProcedures\FunctionApplicationResolution -Conformance05 Conformance\InferenceProcedures\Generalization -Conformance05 Conformance\InferenceProcedures\MethodApplicationResolution -Conformance05 Conformance\InferenceProcedures\NameResolution\AutoOpen -Conformance05 Conformance\InferenceProcedures\NameResolution\Misc -Conformance05 Conformance\InferenceProcedures\NameResolution\RequireQualifiedAccess -Conformance05 Conformance\InferenceProcedures\RecursiveSafetyAnalysis -Conformance05 Conformance\InferenceProcedures\ResolvingApplicationExpressions -Conformance05 Conformance\InferenceProcedures\TypeInference -Conformance05 Conformance\InferenceProcedures\WellFormednessChecking -Conformance05 Conformance\LexicalAnalysis\Comments -Conformance05 Conformance\LexicalAnalysis\ConditionalCompilation -Conformance05 Conformance\LexicalAnalysis\Directives -Conformance05 Conformance\LexicalAnalysis\HiddenTokens -Conformance05 Conformance\LexicalAnalysis\IdentifierReplacements -Conformance05 Conformance\LexicalAnalysis\IdentifiersAndKeywords -Conformance05 Conformance\LexicalAnalysis\LineDirectives -Conformance05 Conformance\LexicalAnalysis\NumericLiterals -Conformance05 Conformance\LexicalAnalysis\Shift\Generics - -Conformance06 Conformance\LexicalAnalysis\StringsAndCharacters -Conformance06 Conformance\LexicalAnalysis\SymbolicKeywords -Conformance06 Conformance\LexicalAnalysis\SymbolicOperators -Conformance06 Conformance\LexicalAnalysis\Whitespace -Conformance06 Conformance\LexicalFiltering\Basic\ByExample -Conformance06 Conformance\LexicalFiltering\Basic\OffsideExceptions -Conformance06 Conformance\LexicalFiltering\HashLight -Conformance06 Conformance\LexicalFiltering\HighPrecedenceApplication -Conformance06 Conformance\LexicalFiltering\LexicalAnalysisOfTypeApplications -Conformance06 Conformance\ObjectOrientedTypeDefinitions\AbstractMembers -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AsDeclarations -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AutoProperties -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitFields -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitObjectConstructors -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ImplicitObjectConstructors -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\InheritsDeclarations -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\LetDoDeclarations -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\MemberDeclarations -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\Misc -Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\StaticLetDoDeclarations - -Conformance07 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ValueRestriction -Conformance07 Conformance\ObjectOrientedTypeDefinitions\DelegateTypes -Conformance07 Conformance\ObjectOrientedTypeDefinitions\EnumTypes -Conformance07 Conformance\ObjectOrientedTypeDefinitions\InterfaceTypes -Conformance07 Conformance\ObjectOrientedTypeDefinitions\StructTypes -Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\basic -Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\intrinsic -Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\optional -Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeKindInference -Conformance07 Conformance\PatternMatching\And -Conformance07 Conformance\PatternMatching\Array -Conformance07 Conformance\PatternMatching\As -Conformance07 Conformance\PatternMatching\ConsList -Conformance07 Conformance\PatternMatching\DynamicTypeTest -Conformance07 Conformance\PatternMatching\Expression -Conformance07 Conformance\PatternMatching\Named -Conformance07 Conformance\PatternMatching\Null -Conformance07 Conformance\PatternMatching\Record -Conformance07 Conformance\PatternMatching\Simple -Conformance07 Conformance\PatternMatching\SimpleConstant - -Conformance08 Conformance\PatternMatching\Tuple -Conformance08 Conformance\PatternMatching\TypeAnnotated -Conformance08 Conformance\PatternMatching\TypeConstraint -Conformance08 Conformance\PatternMatching\Union -Conformance08 Conformance\PatternMatching\Wildcard -Conformance08 Conformance\Signatures\SignatureConformance -Conformance08 Conformance\Signatures\SignatureTypes -Conformance08 Conformance\SpecialAttributesAndTypes\Imported\System.ThreadStatic -Conformance08 Conformance\SpecialAttributesAndTypes\Imported\CallerInfo -Conformance08 Conformance\StructFieldEqualityComparison -Conformance08 Conformance\TypesAndTypeConstraints\CheckingSyntacticTypes -Conformance08 Conformance\TypesAndTypeConstraints\LogicalPropertiesOfTypes -Conformance08 Conformance\TypesAndTypeConstraints\TypeConstraints -Conformance08 Conformance\TypesAndTypeConstraints\TypeParameterDefinitions -Conformance08 Conformance\UnitsOfMeasure\Basic -Conformance08 Conformance\UnitsOfMeasure\Bounds -Conformance08 Conformance\UnitsOfMeasure\Constants -Conformance08 Conformance\UnitsOfMeasure\Diagnostics -Conformance08 Conformance\UnitsOfMeasure\Operators -Conformance08 Conformance\UnitsOfMeasure\Parenthesis -Conformance08 Conformance\UnitsOfMeasure\Parsing -Conformance08 Conformance\UnitsOfMeasure\TypeChecker -Conformance08 Conformance\UnitsOfMeasure\WithOOP -Conformance08 Conformance\Expressions\DataExpressions\NameOf - -Misc01 ClrFx\PseudoCustomAttributes\AssemblyAlgorithmId -Misc01 ClrFx\PseudoCustomAttributes\AssemblyConfiguration -Misc01 ClrFx\PseudoCustomAttributes\AssemblyVersion -Misc01 Diagnostics\async -Misc01,Diagnostics Diagnostics\General -Misc01 Diagnostics\NONTERM -Misc01 Diagnostics\ParsingAtEOF -Misc01 EntryPoint -Misc01 Globalization -Misc01,NoMT Import -Misc01,NoMT ..\..\..\testsprivate\fsharpqa\Source\InteractiveSession\AssemblyLoading -Misc01,NoMT InteractiveSession\Misc -Misc01,NoMT InteractiveSession\Misc\GenericConstraintWoes\issue2411 -Misc01 Libraries\Control -Misc01 Libraries\Core\collections -Misc01 Libraries\Core\ExtraTopLevelOperators -Misc01 Libraries\Core\LanguagePrimitives -Misc01 Libraries\Core\NativeInterop\stackalloc -Misc01 Libraries\Core\Operators -Misc01 Libraries\Core\Reflection -Misc01 Libraries\Core\Unchecked -Misc01 Warnings - -Misc02 Libraries\Portable -Misc02 Misc -Misc02 MultiTargeting -Misc02 OCamlCompat -Misc02,CodeGen Optimizations\AssemblyBoundary -Misc02,CodeGen Optimizations\ForLoop -Misc02,CodeGen Optimizations\GenericComparison -Misc02,CodeGen Optimizations\Inlining -Misc02,NoMT Printing -Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\UnitsOfMeasure -Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\Agents -Misc02,NoMT ..\..\..\testsprivate\fsharpqa\Source\Setup -Misc02 Stress -Misc02 XmlDoc\Basic -Misc02 XmlDoc\OCamlDoc -Misc02 XmlDoc\UnitOfMeasure +# Conformance04 Conformance\Expressions\SomeCheckingAndInferenceTerminology +# Conformance04 Conformance\Expressions\SyntacticSugar +# Conformance04 Conformance\Expressions\SyntacticSugarAndAmbiguities +# Conformance04 Conformance\Expressions\Type-relatedExpressions +# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\CheckingOfImplementationFiles +# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\InitializationSemanticsForImplementationFiles +# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\basic +# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\global +# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\SignatureFiles +# Conformance04 Conformance\InferenceProcedures\ByrefSafetyAnalysis +# Conformance04 Conformance\InferenceProcedures\ConstraintSolving +# Conformance04 Conformance\InferenceProcedures\DispatchSlotChecking +# +# Conformance05 Conformance\InferenceProcedures\DispatchSlotInference +# Conformance05 Conformance\InferenceProcedures\FunctionApplicationResolution +# Conformance05 Conformance\InferenceProcedures\Generalization +# Conformance05 Conformance\InferenceProcedures\MethodApplicationResolution +# Conformance05 Conformance\InferenceProcedures\NameResolution\AutoOpen +# Conformance05 Conformance\InferenceProcedures\NameResolution\Misc +# Conformance05 Conformance\InferenceProcedures\NameResolution\RequireQualifiedAccess +# Conformance05 Conformance\InferenceProcedures\RecursiveSafetyAnalysis +# Conformance05 Conformance\InferenceProcedures\ResolvingApplicationExpressions +# Conformance05 Conformance\InferenceProcedures\TypeInference +# Conformance05 Conformance\InferenceProcedures\WellFormednessChecking +# Conformance05 Conformance\LexicalAnalysis\Comments +# Conformance05 Conformance\LexicalAnalysis\ConditionalCompilation +# Conformance05 Conformance\LexicalAnalysis\Directives +# Conformance05 Conformance\LexicalAnalysis\HiddenTokens +# Conformance05 Conformance\LexicalAnalysis\IdentifierReplacements +# Conformance05 Conformance\LexicalAnalysis\IdentifiersAndKeywords +# Conformance05 Conformance\LexicalAnalysis\LineDirectives +# Conformance05 Conformance\LexicalAnalysis\NumericLiterals +# Conformance05 Conformance\LexicalAnalysis\Shift\Generics +# +# Conformance06 Conformance\LexicalAnalysis\StringsAndCharacters +# Conformance06 Conformance\LexicalAnalysis\SymbolicKeywords +# Conformance06 Conformance\LexicalAnalysis\SymbolicOperators +# Conformance06 Conformance\LexicalAnalysis\Whitespace +# Conformance06 Conformance\LexicalFiltering\Basic\ByExample +# Conformance06 Conformance\LexicalFiltering\Basic\OffsideExceptions +# Conformance06 Conformance\LexicalFiltering\HashLight +# Conformance06 Conformance\LexicalFiltering\HighPrecedenceApplication +# Conformance06 Conformance\LexicalFiltering\LexicalAnalysisOfTypeApplications +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\AbstractMembers +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AsDeclarations +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AutoProperties +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitFields +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitObjectConstructors +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ImplicitObjectConstructors +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\InheritsDeclarations +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\LetDoDeclarations +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\MemberDeclarations +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\Misc +# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\StaticLetDoDeclarations +# +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ValueRestriction +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\DelegateTypes +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\EnumTypes +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\InterfaceTypes +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\StructTypes +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\basic +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\intrinsic +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\optional +# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeKindInference +# Conformance07 Conformance\PatternMatching\And +# Conformance07 Conformance\PatternMatching\Array +# Conformance07 Conformance\PatternMatching\As +# Conformance07 Conformance\PatternMatching\ConsList +# Conformance07 Conformance\PatternMatching\DynamicTypeTest +# Conformance07 Conformance\PatternMatching\Expression +# Conformance07 Conformance\PatternMatching\Named +# Conformance07 Conformance\PatternMatching\Null +# Conformance07 Conformance\PatternMatching\Record +# Conformance07 Conformance\PatternMatching\Simple +# Conformance07 Conformance\PatternMatching\SimpleConstant +# +# Conformance08 Conformance\PatternMatching\Tuple +# Conformance08 Conformance\PatternMatching\TypeAnnotated +# Conformance08 Conformance\PatternMatching\TypeConstraint +# Conformance08 Conformance\PatternMatching\Union +# Conformance08 Conformance\PatternMatching\Wildcard +# Conformance08 Conformance\Signatures\SignatureConformance +# Conformance08 Conformance\Signatures\SignatureTypes +# Conformance08 Conformance\SpecialAttributesAndTypes\Imported\System.ThreadStatic +# Conformance08 Conformance\SpecialAttributesAndTypes\Imported\CallerInfo +# Conformance08 Conformance\StructFieldEqualityComparison +# Conformance08 Conformance\TypesAndTypeConstraints\CheckingSyntacticTypes +# Conformance08 Conformance\TypesAndTypeConstraints\LogicalPropertiesOfTypes +# Conformance08 Conformance\TypesAndTypeConstraints\TypeConstraints +# Conformance08 Conformance\TypesAndTypeConstraints\TypeParameterDefinitions +# Conformance08 Conformance\UnitsOfMeasure\Basic +# Conformance08 Conformance\UnitsOfMeasure\Bounds +# Conformance08 Conformance\UnitsOfMeasure\Constants +# Conformance08 Conformance\UnitsOfMeasure\Diagnostics +# Conformance08 Conformance\UnitsOfMeasure\Operators +# Conformance08 Conformance\UnitsOfMeasure\Parenthesis +# Conformance08 Conformance\UnitsOfMeasure\Parsing +# Conformance08 Conformance\UnitsOfMeasure\TypeChecker +# Conformance08 Conformance\UnitsOfMeasure\WithOOP +# Conformance08 Conformance\Expressions\DataExpressions\NameOf +# +# Misc01 ClrFx\PseudoCustomAttributes\AssemblyAlgorithmId +# Misc01 ClrFx\PseudoCustomAttributes\AssemblyConfiguration +# Misc01 ClrFx\PseudoCustomAttributes\AssemblyVersion +# Misc01 Diagnostics\async +# Misc01,Diagnostics Diagnostics\General +# Misc01 Diagnostics\NONTERM +# Misc01 Diagnostics\ParsingAtEOF +# Misc01 EntryPoint +# Misc01 Globalization +# Misc01,NoMT Import +# Misc01,NoMT ..\..\..\testsprivate\fsharpqa\Source\InteractiveSession\AssemblyLoading +# Misc01,NoMT InteractiveSession\Misc +# Misc01,NoMT InteractiveSession\Misc\GenericConstraintWoes\issue2411 +# Misc01 Libraries\Control +# Misc01 Libraries\Core\collections +# Misc01 Libraries\Core\ExtraTopLevelOperators +# Misc01 Libraries\Core\LanguagePrimitives +# Misc01 Libraries\Core\NativeInterop\stackalloc +# Misc01 Libraries\Core\Operators +# Misc01 Libraries\Core\Reflection +# Misc01 Libraries\Core\Unchecked +# Misc01 Warnings +# +# Misc02 Libraries\Portable +# Misc02 Misc +# Misc02 MultiTargeting +# Misc02 OCamlCompat +# Misc02,CodeGen Optimizations\AssemblyBoundary +# Misc02,CodeGen Optimizations\ForLoop +# Misc02,CodeGen Optimizations\GenericComparison +# Misc02,CodeGen Optimizations\Inlining +# Misc02,NoMT Printing +# Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\UnitsOfMeasure +# Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\Agents +# Misc02,NoMT ..\..\..\testsprivate\fsharpqa\Source\Setup +# Misc02 Stress +# Misc02 XmlDoc\Basic +# Misc02 XmlDoc\OCamlDoc +# Misc02 XmlDoc\UnitOfMeasure From a3bdeac2b59497ee95521bed1fed4da035c987fa Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Mon, 5 Jul 2021 16:58:10 +0800 Subject: [PATCH 07/24] Oops --- tests/fsharpqa/Source/test.lst | 554 ++++++++++++++++----------------- 1 file changed, 277 insertions(+), 277 deletions(-) diff --git a/tests/fsharpqa/Source/test.lst b/tests/fsharpqa/Source/test.lst index 8b16430945d..5a8307bdb9f 100644 --- a/tests/fsharpqa/Source/test.lst +++ b/tests/fsharpqa/Source/test.lst @@ -5,281 +5,281 @@ # ReqNOCov -- skip this test/suite if we are doing a code coverage run # ReqENU -- skip this test/suite if we are running on non-ENU (useful to exclude hard-to-localize tests) -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AsyncExpressionStepping -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AttributeTargets -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CCtorDUWithMember -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CompiledNameAttribute -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ComputationExpressions -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\DoNotBoxStruct -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\GeneratedIterators -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\InequalityComparison -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ListExpressionStepping -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\LiteralValue -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\MethodImplAttribute -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Misc -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Mutation -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Operators -# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\QueryExpressionStepping -# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionStepping -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionTailCalls -# CodeGen01,NoMT,CodeGen,NoHostedCompiler,SerializableAttribute CodeGen\EmittedIL\SerializableAttribute -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\StaticInit -# Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SteppingMatch -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TailCalls -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TestFunctions -# CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Tuples -# CodeGen01,NoMT,CodeGen CodeGen\StringEncoding -# CodeGen01,NoMT,CodeGen CodeGen\Structure -# -# CompilerOptions01,NoMT CompilerOptions\fsc\checked -# CompilerOptions01,NoMT CompilerOptions\fsc\cliversion -# CompilerOptions01,NoMT CompilerOptions\fsc\codepage -# CompilerOptions01,NoMT CompilerOptions\fsc\crossoptimize -# CompilerOptions01,NoMT CompilerOptions\fsc\debug -# CompilerOptions01,NoMT CompilerOptions\fsc\dumpAllCommandLineOptions -# CompilerOptions01,NoMT CompilerOptions\fsc\flaterrors -# CompilerOptions02,NoMT CompilerOptions\fsc\gccerrors -# CompilerOptions01,NoMT,help CompilerOptions\fsc\help -# CompilerOptions01,NoMT CompilerOptions\fsc\highentropyva -# CompilerOptions01,NoMT CompilerOptions\fsc\langversion -# CompilerOptions01,NoMT CompilerOptions\fsc\lib -# CompilerOptions01,NoMT CompilerOptions\fsc\noframework -# CompilerOptions01,NoMT CompilerOptions\fsc\nologo -# CompilerOptions01,NoMT CompilerOptions\fsc\optimize -# CompilerOptions01,NoMT CompilerOptions\fsc\out -# CompilerOptions01,NoMT,pdbs CompilerOptions\fsc\pdb -# CompilerOptions01,NoMT CompilerOptions\fsc\platform -# CompilerOptions01,NoMT CompilerOptions\fsc\reference -# CompilerOptions01,NoMT CompilerOptions\fsc\Removed -# CompilerOptions01,NoMT CompilerOptions\fsc\standalone -# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\staticlink -# CompilerOptions01,NoMT CompilerOptions\fsc\subsystemversion -# CompilerOptions01,NoMT CompilerOptions\fsc\tailcalls -# CompilerOptions01,NoMT CompilerOptions\fsc\target -# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\times -# CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\tokenize -# CompilerOptions01,NoMT CompilerOptions\fsc\warn -# CompilerOptions01,NoMT CompilerOptions\fsc\warnaserror -# CompilerOptions01,NoMT CompilerOptions\fsc\warnon -# CompilerOptions01,NoMT CompilerOptions\fsc\responsefile -# CompilerOptions01,NoMT,help CompilerOptions\fsi\help -# CompilerOptions01,NoMT CompilerOptions\fsi\highentropyva -# CompilerOptions01,NoMT CompilerOptions\fsi\langversion -# CompilerOptions01,NoMT CompilerOptions\fsi\nologo -# CompilerOptions01,NoMT CompilerOptions\fsi\subsystemversion -# CompilerOptions01,NoMT CompilerOptions\fsi\times -# CompilerOptions02,NoMT CompilerOptions\fsi\exename -# CompilerOptions01,NoMT,Determinism CompilerOptions\fsc\determinism -# -# Conformance01 Conformance\BasicGrammarElements\Constants -# Conformance01 Conformance\BasicGrammarElements\OperatorNames -# Conformance01 Conformance\BasicGrammarElements\PrecedenceAndOperators -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\ExceptionDefinitions -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Diags -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Legacy -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\New -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Basic -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\IComparison -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\ModuleDefinitions -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\NamespaceDeclGroups -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\NullRepresentations -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\RecordTypes -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\TypeAbbreviations -# Conformance01 Conformance\BasicTypeAndModuleDefinitions\UnionTypes -# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\Basic -# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnOverridesAndIFaceImpl -# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnTypeMembers -# Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\PermittedLocations -# Conformance01 Conformance\DeclarationElements\CustomAttributes\ArgumentsOfAllTypes -# Conformance01 Conformance\DeclarationElements\CustomAttributes\AttributeInheritance -# -# Conformance02 Conformance\DeclarationElements\CustomAttributes\AttributeUsage -# Conformance02 Conformance\DeclarationElements\CustomAttributes\Basic -# Conformance02 Conformance\DeclarationElements\CustomAttributes\ImportedAttributes -# Conformance02 Conformance\DeclarationElements\Events\basic -# Conformance02 Conformance\DeclarationElements\FieldMembers -# Conformance02 Conformance\DeclarationElements\ImportDeclarations -# Conformance02 Conformance\DeclarationElements\InterfaceSpecificationsAndImplementations -# Conformance02 Conformance\DeclarationElements\LetBindings\ActivePatternBindings -# Conformance02 Conformance\DeclarationElements\LetBindings\ArityInference -# Conformance02 Conformance\DeclarationElements\LetBindings\Basic -# Conformance02 Conformance\DeclarationElements\LetBindings\ExplicitTypeParameters -# Conformance02 Conformance\DeclarationElements\LetBindings\TypeFunctions -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\ImplementingDispatchSlots -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\MethodsAndProperties -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\NamedArguments -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalArguments -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalDefaultParameterValueArguments -# Conformance02 Conformance\DeclarationElements\MemberDefinitions\OverloadingMembers -# Conformance02 Conformance\DeclarationElements\ModuleAbbreviations -# Conformance02 Conformance\DeclarationElements\ObjectConstructors -# Conformance02 Conformance\DeclarationElements\P-invokeDeclarations -# -# Conformance03 Conformance\Expressions\ApplicationExpressions\Assertion -# Conformance03 Conformance\Expressions\ApplicationExpressions\BasicApplication -# Conformance03 Conformance\Expressions\ApplicationExpressions\ObjectConstruction -# Conformance03 Conformance\Expressions\BindingExpressions\Binding -# Conformance03 Conformance\Expressions\ConstantExpressions -# Conformance03 Conformance\Expressions\ControlFlowExpressions\Assertion -# Conformance03 Conformance\Expressions\ControlFlowExpressions\Conditional -# Conformance03 Conformance\Expressions\ControlFlowExpressions\ParenthesizedAndBlock -# Conformance03 Conformance\Expressions\ControlFlowExpressions\PatternMatching -# Conformance03 Conformance\Expressions\ControlFlowExpressions\SequenceIteration -# Conformance03 Conformance\Expressions\ControlFlowExpressions\SequentialExecution -# Conformance03 Conformance\Expressions\ControlFlowExpressions\SimpleFor -# Conformance03 Conformance\Expressions\ControlFlowExpressions\TryWith -# Conformance03 Conformance\Expressions\ControlFlowExpressions\TryFinally -# Conformance03 Conformance\Expressions\ControlFlowExpressions\While -# Conformance03 Conformance\Expressions\DataExpressions\AddressOf -# Conformance03 Conformance\Expressions\DataExpressions\ComputationExpressions -# Conformance03 Conformance\Expressions\DataExpressions\ObjectExpressions -# Conformance03 Conformance\Expressions\DataExpressions\QueryExpressions -# Conformance03 Conformance\Expressions\DataExpressions\RangeExpressions -# -# Conformance04 Conformance\Expressions\DataExpressions\SequenceExpressions -# Conformance04 Conformance\Expressions\DataExpressions\TupleExpressions -# Conformance04 Conformance\Expressions\ElaborationAndElaboratedExpressions -# Conformance04 Conformance\Expressions\EvaluationAndValues -# Conformance04 Conformance\Expressions\EvaluationOfElaboratedForms -# Conformance04 Conformance\Expressions\ExpressionQuotations\Baselines +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AsyncExpressionStepping +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\AttributeTargets +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CCtorDUWithMember +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\CompiledNameAttribute +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ComputationExpressions +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\DoNotBoxStruct +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\GeneratedIterators +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\InequalityComparison +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\ListExpressionStepping +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\LiteralValue +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\MethodImplAttribute +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Misc +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Mutation +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Operators +Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\QueryExpressionStepping +Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionStepping +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SeqExpressionTailCalls +CodeGen01,NoMT,CodeGen,NoHostedCompiler,SerializableAttribute CodeGen\EmittedIL\SerializableAttribute +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\StaticInit +Retry,CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\SteppingMatch +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TailCalls +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\TestFunctions +CodeGen01,NoMT,CodeGen CodeGen\EmittedIL\Tuples +CodeGen01,NoMT,CodeGen CodeGen\StringEncoding +CodeGen01,NoMT,CodeGen CodeGen\Structure + +CompilerOptions01,NoMT CompilerOptions\fsc\checked +CompilerOptions01,NoMT CompilerOptions\fsc\cliversion +CompilerOptions01,NoMT CompilerOptions\fsc\codepage +CompilerOptions01,NoMT CompilerOptions\fsc\crossoptimize +CompilerOptions01,NoMT CompilerOptions\fsc\debug +CompilerOptions01,NoMT CompilerOptions\fsc\dumpAllCommandLineOptions +CompilerOptions01,NoMT CompilerOptions\fsc\flaterrors +CompilerOptions02,NoMT CompilerOptions\fsc\gccerrors +CompilerOptions01,NoMT,help CompilerOptions\fsc\help +CompilerOptions01,NoMT CompilerOptions\fsc\highentropyva +CompilerOptions01,NoMT CompilerOptions\fsc\langversion +CompilerOptions01,NoMT CompilerOptions\fsc\lib +CompilerOptions01,NoMT CompilerOptions\fsc\noframework +CompilerOptions01,NoMT CompilerOptions\fsc\nologo +CompilerOptions01,NoMT CompilerOptions\fsc\optimize +CompilerOptions01,NoMT CompilerOptions\fsc\out +CompilerOptions01,NoMT,pdbs CompilerOptions\fsc\pdb +CompilerOptions01,NoMT CompilerOptions\fsc\platform +CompilerOptions01,NoMT CompilerOptions\fsc\reference +CompilerOptions01,NoMT CompilerOptions\fsc\Removed +CompilerOptions01,NoMT CompilerOptions\fsc\standalone +CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\staticlink +CompilerOptions01,NoMT CompilerOptions\fsc\subsystemversion +CompilerOptions01,NoMT CompilerOptions\fsc\tailcalls +CompilerOptions01,NoMT CompilerOptions\fsc\target +CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\times +CompilerOptions01,NoMT,NoHostedCompiler CompilerOptions\fsc\tokenize +CompilerOptions01,NoMT CompilerOptions\fsc\warn +CompilerOptions01,NoMT CompilerOptions\fsc\warnaserror +CompilerOptions01,NoMT CompilerOptions\fsc\warnon +CompilerOptions01,NoMT CompilerOptions\fsc\responsefile +CompilerOptions01,NoMT,help CompilerOptions\fsi\help +CompilerOptions01,NoMT CompilerOptions\fsi\highentropyva +CompilerOptions01,NoMT CompilerOptions\fsi\langversion +CompilerOptions01,NoMT CompilerOptions\fsi\nologo +CompilerOptions01,NoMT CompilerOptions\fsi\subsystemversion +CompilerOptions01,NoMT CompilerOptions\fsi\times +CompilerOptions02,NoMT CompilerOptions\fsi\exename +CompilerOptions01,NoMT,Determinism CompilerOptions\fsc\determinism + +Conformance01 Conformance\BasicGrammarElements\Constants +Conformance01 Conformance\BasicGrammarElements\OperatorNames +Conformance01 Conformance\BasicGrammarElements\PrecedenceAndOperators +Conformance01 Conformance\BasicTypeAndModuleDefinitions\ExceptionDefinitions +Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Diags +Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\Legacy +Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Attributes\New +Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\Basic +Conformance01 Conformance\BasicTypeAndModuleDefinitions\GeneratedEqualityHashingComparison\IComparison +Conformance01 Conformance\BasicTypeAndModuleDefinitions\ModuleDefinitions +Conformance01 Conformance\BasicTypeAndModuleDefinitions\NamespaceDeclGroups +Conformance01 Conformance\BasicTypeAndModuleDefinitions\NullRepresentations +Conformance01 Conformance\BasicTypeAndModuleDefinitions\RecordTypes +Conformance01 Conformance\BasicTypeAndModuleDefinitions\TypeAbbreviations +Conformance01 Conformance\BasicTypeAndModuleDefinitions\UnionTypes +Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\Basic +Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnOverridesAndIFaceImpl +Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\OnTypeMembers +Conformance01 Conformance\DeclarationElements\AccessibilityAnnotations\PermittedLocations +Conformance01 Conformance\DeclarationElements\CustomAttributes\ArgumentsOfAllTypes +Conformance01 Conformance\DeclarationElements\CustomAttributes\AttributeInheritance + +Conformance02 Conformance\DeclarationElements\CustomAttributes\AttributeUsage +Conformance02 Conformance\DeclarationElements\CustomAttributes\Basic +Conformance02 Conformance\DeclarationElements\CustomAttributes\ImportedAttributes +Conformance02 Conformance\DeclarationElements\Events\basic +Conformance02 Conformance\DeclarationElements\FieldMembers +Conformance02 Conformance\DeclarationElements\ImportDeclarations +Conformance02 Conformance\DeclarationElements\InterfaceSpecificationsAndImplementations +Conformance02 Conformance\DeclarationElements\LetBindings\ActivePatternBindings +Conformance02 Conformance\DeclarationElements\LetBindings\ArityInference +Conformance02 Conformance\DeclarationElements\LetBindings\Basic +Conformance02 Conformance\DeclarationElements\LetBindings\ExplicitTypeParameters +Conformance02 Conformance\DeclarationElements\LetBindings\TypeFunctions +Conformance02 Conformance\DeclarationElements\MemberDefinitions\ImplementingDispatchSlots +Conformance02 Conformance\DeclarationElements\MemberDefinitions\MethodsAndProperties +Conformance02 Conformance\DeclarationElements\MemberDefinitions\NamedArguments +Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalArguments +Conformance02 Conformance\DeclarationElements\MemberDefinitions\OptionalDefaultParameterValueArguments +Conformance02 Conformance\DeclarationElements\MemberDefinitions\OverloadingMembers +Conformance02 Conformance\DeclarationElements\ModuleAbbreviations +Conformance02 Conformance\DeclarationElements\ObjectConstructors +Conformance02 Conformance\DeclarationElements\P-invokeDeclarations + +Conformance03 Conformance\Expressions\ApplicationExpressions\Assertion +Conformance03 Conformance\Expressions\ApplicationExpressions\BasicApplication +Conformance03 Conformance\Expressions\ApplicationExpressions\ObjectConstruction +Conformance03 Conformance\Expressions\BindingExpressions\Binding +Conformance03 Conformance\Expressions\ConstantExpressions +Conformance03 Conformance\Expressions\ControlFlowExpressions\Assertion +Conformance03 Conformance\Expressions\ControlFlowExpressions\Conditional +Conformance03 Conformance\Expressions\ControlFlowExpressions\ParenthesizedAndBlock +Conformance03 Conformance\Expressions\ControlFlowExpressions\PatternMatching +Conformance03 Conformance\Expressions\ControlFlowExpressions\SequenceIteration +Conformance03 Conformance\Expressions\ControlFlowExpressions\SequentialExecution +Conformance03 Conformance\Expressions\ControlFlowExpressions\SimpleFor +Conformance03 Conformance\Expressions\ControlFlowExpressions\TryWith +Conformance03 Conformance\Expressions\ControlFlowExpressions\TryFinally +Conformance03 Conformance\Expressions\ControlFlowExpressions\While +Conformance03 Conformance\Expressions\DataExpressions\AddressOf +Conformance03 Conformance\Expressions\DataExpressions\ComputationExpressions +Conformance03 Conformance\Expressions\DataExpressions\ObjectExpressions +Conformance03 Conformance\Expressions\DataExpressions\QueryExpressions +Conformance03 Conformance\Expressions\DataExpressions\RangeExpressions + +Conformance04 Conformance\Expressions\DataExpressions\SequenceExpressions +Conformance04 Conformance\Expressions\DataExpressions\TupleExpressions +Conformance04 Conformance\Expressions\ElaborationAndElaboratedExpressions +Conformance04 Conformance\Expressions\EvaluationAndValues +Conformance04 Conformance\Expressions\EvaluationOfElaboratedForms +Conformance04 Conformance\Expressions\ExpressionQuotations\Baselines Conformance04 Conformance\Expressions\ExpressionQuotations\Regressions -# Conformance04 Conformance\Expressions\SomeCheckingAndInferenceTerminology -# Conformance04 Conformance\Expressions\SyntacticSugar -# Conformance04 Conformance\Expressions\SyntacticSugarAndAmbiguities -# Conformance04 Conformance\Expressions\Type-relatedExpressions -# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\CheckingOfImplementationFiles -# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\InitializationSemanticsForImplementationFiles -# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\basic -# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\global -# Conformance04 Conformance\ImplementationFilesAndSignatureFiles\SignatureFiles -# Conformance04 Conformance\InferenceProcedures\ByrefSafetyAnalysis -# Conformance04 Conformance\InferenceProcedures\ConstraintSolving -# Conformance04 Conformance\InferenceProcedures\DispatchSlotChecking -# -# Conformance05 Conformance\InferenceProcedures\DispatchSlotInference -# Conformance05 Conformance\InferenceProcedures\FunctionApplicationResolution -# Conformance05 Conformance\InferenceProcedures\Generalization -# Conformance05 Conformance\InferenceProcedures\MethodApplicationResolution -# Conformance05 Conformance\InferenceProcedures\NameResolution\AutoOpen -# Conformance05 Conformance\InferenceProcedures\NameResolution\Misc -# Conformance05 Conformance\InferenceProcedures\NameResolution\RequireQualifiedAccess -# Conformance05 Conformance\InferenceProcedures\RecursiveSafetyAnalysis -# Conformance05 Conformance\InferenceProcedures\ResolvingApplicationExpressions -# Conformance05 Conformance\InferenceProcedures\TypeInference -# Conformance05 Conformance\InferenceProcedures\WellFormednessChecking -# Conformance05 Conformance\LexicalAnalysis\Comments -# Conformance05 Conformance\LexicalAnalysis\ConditionalCompilation -# Conformance05 Conformance\LexicalAnalysis\Directives -# Conformance05 Conformance\LexicalAnalysis\HiddenTokens -# Conformance05 Conformance\LexicalAnalysis\IdentifierReplacements -# Conformance05 Conformance\LexicalAnalysis\IdentifiersAndKeywords -# Conformance05 Conformance\LexicalAnalysis\LineDirectives -# Conformance05 Conformance\LexicalAnalysis\NumericLiterals -# Conformance05 Conformance\LexicalAnalysis\Shift\Generics -# -# Conformance06 Conformance\LexicalAnalysis\StringsAndCharacters -# Conformance06 Conformance\LexicalAnalysis\SymbolicKeywords -# Conformance06 Conformance\LexicalAnalysis\SymbolicOperators -# Conformance06 Conformance\LexicalAnalysis\Whitespace -# Conformance06 Conformance\LexicalFiltering\Basic\ByExample -# Conformance06 Conformance\LexicalFiltering\Basic\OffsideExceptions -# Conformance06 Conformance\LexicalFiltering\HashLight -# Conformance06 Conformance\LexicalFiltering\HighPrecedenceApplication -# Conformance06 Conformance\LexicalFiltering\LexicalAnalysisOfTypeApplications -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\AbstractMembers -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AsDeclarations -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AutoProperties -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitFields -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitObjectConstructors -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ImplicitObjectConstructors -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\InheritsDeclarations -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\LetDoDeclarations -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\MemberDeclarations -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\Misc -# Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\StaticLetDoDeclarations -# -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ValueRestriction -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\DelegateTypes -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\EnumTypes -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\InterfaceTypes -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\StructTypes -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\basic -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\intrinsic -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\optional -# Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeKindInference -# Conformance07 Conformance\PatternMatching\And -# Conformance07 Conformance\PatternMatching\Array -# Conformance07 Conformance\PatternMatching\As -# Conformance07 Conformance\PatternMatching\ConsList -# Conformance07 Conformance\PatternMatching\DynamicTypeTest -# Conformance07 Conformance\PatternMatching\Expression -# Conformance07 Conformance\PatternMatching\Named -# Conformance07 Conformance\PatternMatching\Null -# Conformance07 Conformance\PatternMatching\Record -# Conformance07 Conformance\PatternMatching\Simple -# Conformance07 Conformance\PatternMatching\SimpleConstant -# -# Conformance08 Conformance\PatternMatching\Tuple -# Conformance08 Conformance\PatternMatching\TypeAnnotated -# Conformance08 Conformance\PatternMatching\TypeConstraint -# Conformance08 Conformance\PatternMatching\Union -# Conformance08 Conformance\PatternMatching\Wildcard -# Conformance08 Conformance\Signatures\SignatureConformance -# Conformance08 Conformance\Signatures\SignatureTypes -# Conformance08 Conformance\SpecialAttributesAndTypes\Imported\System.ThreadStatic -# Conformance08 Conformance\SpecialAttributesAndTypes\Imported\CallerInfo -# Conformance08 Conformance\StructFieldEqualityComparison -# Conformance08 Conformance\TypesAndTypeConstraints\CheckingSyntacticTypes -# Conformance08 Conformance\TypesAndTypeConstraints\LogicalPropertiesOfTypes -# Conformance08 Conformance\TypesAndTypeConstraints\TypeConstraints -# Conformance08 Conformance\TypesAndTypeConstraints\TypeParameterDefinitions -# Conformance08 Conformance\UnitsOfMeasure\Basic -# Conformance08 Conformance\UnitsOfMeasure\Bounds -# Conformance08 Conformance\UnitsOfMeasure\Constants -# Conformance08 Conformance\UnitsOfMeasure\Diagnostics -# Conformance08 Conformance\UnitsOfMeasure\Operators -# Conformance08 Conformance\UnitsOfMeasure\Parenthesis -# Conformance08 Conformance\UnitsOfMeasure\Parsing -# Conformance08 Conformance\UnitsOfMeasure\TypeChecker -# Conformance08 Conformance\UnitsOfMeasure\WithOOP -# Conformance08 Conformance\Expressions\DataExpressions\NameOf -# -# Misc01 ClrFx\PseudoCustomAttributes\AssemblyAlgorithmId -# Misc01 ClrFx\PseudoCustomAttributes\AssemblyConfiguration -# Misc01 ClrFx\PseudoCustomAttributes\AssemblyVersion -# Misc01 Diagnostics\async -# Misc01,Diagnostics Diagnostics\General -# Misc01 Diagnostics\NONTERM -# Misc01 Diagnostics\ParsingAtEOF -# Misc01 EntryPoint -# Misc01 Globalization -# Misc01,NoMT Import -# Misc01,NoMT ..\..\..\testsprivate\fsharpqa\Source\InteractiveSession\AssemblyLoading -# Misc01,NoMT InteractiveSession\Misc -# Misc01,NoMT InteractiveSession\Misc\GenericConstraintWoes\issue2411 -# Misc01 Libraries\Control -# Misc01 Libraries\Core\collections -# Misc01 Libraries\Core\ExtraTopLevelOperators -# Misc01 Libraries\Core\LanguagePrimitives -# Misc01 Libraries\Core\NativeInterop\stackalloc -# Misc01 Libraries\Core\Operators -# Misc01 Libraries\Core\Reflection -# Misc01 Libraries\Core\Unchecked -# Misc01 Warnings -# -# Misc02 Libraries\Portable -# Misc02 Misc -# Misc02 MultiTargeting -# Misc02 OCamlCompat -# Misc02,CodeGen Optimizations\AssemblyBoundary -# Misc02,CodeGen Optimizations\ForLoop -# Misc02,CodeGen Optimizations\GenericComparison -# Misc02,CodeGen Optimizations\Inlining -# Misc02,NoMT Printing -# Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\UnitsOfMeasure -# Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\Agents -# Misc02,NoMT ..\..\..\testsprivate\fsharpqa\Source\Setup -# Misc02 Stress -# Misc02 XmlDoc\Basic -# Misc02 XmlDoc\OCamlDoc -# Misc02 XmlDoc\UnitOfMeasure +Conformance04 Conformance\Expressions\SomeCheckingAndInferenceTerminology +Conformance04 Conformance\Expressions\SyntacticSugar +Conformance04 Conformance\Expressions\SyntacticSugarAndAmbiguities +Conformance04 Conformance\Expressions\Type-relatedExpressions +Conformance04 Conformance\ImplementationFilesAndSignatureFiles\CheckingOfImplementationFiles +Conformance04 Conformance\ImplementationFilesAndSignatureFiles\InitializationSemanticsForImplementationFiles +Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\basic +Conformance04 Conformance\ImplementationFilesAndSignatureFiles\NamespacesFragmentsAndImplementationFiles\global +Conformance04 Conformance\ImplementationFilesAndSignatureFiles\SignatureFiles +Conformance04 Conformance\InferenceProcedures\ByrefSafetyAnalysis +Conformance04 Conformance\InferenceProcedures\ConstraintSolving +Conformance04 Conformance\InferenceProcedures\DispatchSlotChecking + +Conformance05 Conformance\InferenceProcedures\DispatchSlotInference +Conformance05 Conformance\InferenceProcedures\FunctionApplicationResolution +Conformance05 Conformance\InferenceProcedures\Generalization +Conformance05 Conformance\InferenceProcedures\MethodApplicationResolution +Conformance05 Conformance\InferenceProcedures\NameResolution\AutoOpen +Conformance05 Conformance\InferenceProcedures\NameResolution\Misc +Conformance05 Conformance\InferenceProcedures\NameResolution\RequireQualifiedAccess +Conformance05 Conformance\InferenceProcedures\RecursiveSafetyAnalysis +Conformance05 Conformance\InferenceProcedures\ResolvingApplicationExpressions +Conformance05 Conformance\InferenceProcedures\TypeInference +Conformance05 Conformance\InferenceProcedures\WellFormednessChecking +Conformance05 Conformance\LexicalAnalysis\Comments +Conformance05 Conformance\LexicalAnalysis\ConditionalCompilation +Conformance05 Conformance\LexicalAnalysis\Directives +Conformance05 Conformance\LexicalAnalysis\HiddenTokens +Conformance05 Conformance\LexicalAnalysis\IdentifierReplacements +Conformance05 Conformance\LexicalAnalysis\IdentifiersAndKeywords +Conformance05 Conformance\LexicalAnalysis\LineDirectives +Conformance05 Conformance\LexicalAnalysis\NumericLiterals +Conformance05 Conformance\LexicalAnalysis\Shift\Generics + +Conformance06 Conformance\LexicalAnalysis\StringsAndCharacters +Conformance06 Conformance\LexicalAnalysis\SymbolicKeywords +Conformance06 Conformance\LexicalAnalysis\SymbolicOperators +Conformance06 Conformance\LexicalAnalysis\Whitespace +Conformance06 Conformance\LexicalFiltering\Basic\ByExample +Conformance06 Conformance\LexicalFiltering\Basic\OffsideExceptions +Conformance06 Conformance\LexicalFiltering\HashLight +Conformance06 Conformance\LexicalFiltering\HighPrecedenceApplication +Conformance06 Conformance\LexicalFiltering\LexicalAnalysisOfTypeApplications +Conformance06 Conformance\ObjectOrientedTypeDefinitions\AbstractMembers +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AsDeclarations +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\AutoProperties +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitFields +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ExplicitObjectConstructors +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ImplicitObjectConstructors +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\InheritsDeclarations +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\LetDoDeclarations +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\MemberDeclarations +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\Misc +Conformance06 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\StaticLetDoDeclarations + +Conformance07 Conformance\ObjectOrientedTypeDefinitions\ClassTypes\ValueRestriction +Conformance07 Conformance\ObjectOrientedTypeDefinitions\DelegateTypes +Conformance07 Conformance\ObjectOrientedTypeDefinitions\EnumTypes +Conformance07 Conformance\ObjectOrientedTypeDefinitions\InterfaceTypes +Conformance07 Conformance\ObjectOrientedTypeDefinitions\StructTypes +Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\basic +Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\intrinsic +Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeExtensions\optional +Conformance07 Conformance\ObjectOrientedTypeDefinitions\TypeKindInference +Conformance07 Conformance\PatternMatching\And +Conformance07 Conformance\PatternMatching\Array +Conformance07 Conformance\PatternMatching\As +Conformance07 Conformance\PatternMatching\ConsList +Conformance07 Conformance\PatternMatching\DynamicTypeTest +Conformance07 Conformance\PatternMatching\Expression +Conformance07 Conformance\PatternMatching\Named +Conformance07 Conformance\PatternMatching\Null +Conformance07 Conformance\PatternMatching\Record +Conformance07 Conformance\PatternMatching\Simple +Conformance07 Conformance\PatternMatching\SimpleConstant + +Conformance08 Conformance\PatternMatching\Tuple +Conformance08 Conformance\PatternMatching\TypeAnnotated +Conformance08 Conformance\PatternMatching\TypeConstraint +Conformance08 Conformance\PatternMatching\Union +Conformance08 Conformance\PatternMatching\Wildcard +Conformance08 Conformance\Signatures\SignatureConformance +Conformance08 Conformance\Signatures\SignatureTypes +Conformance08 Conformance\SpecialAttributesAndTypes\Imported\System.ThreadStatic +Conformance08 Conformance\SpecialAttributesAndTypes\Imported\CallerInfo +Conformance08 Conformance\StructFieldEqualityComparison +Conformance08 Conformance\TypesAndTypeConstraints\CheckingSyntacticTypes +Conformance08 Conformance\TypesAndTypeConstraints\LogicalPropertiesOfTypes +Conformance08 Conformance\TypesAndTypeConstraints\TypeConstraints +Conformance08 Conformance\TypesAndTypeConstraints\TypeParameterDefinitions +Conformance08 Conformance\UnitsOfMeasure\Basic +Conformance08 Conformance\UnitsOfMeasure\Bounds +Conformance08 Conformance\UnitsOfMeasure\Constants +Conformance08 Conformance\UnitsOfMeasure\Diagnostics +Conformance08 Conformance\UnitsOfMeasure\Operators +Conformance08 Conformance\UnitsOfMeasure\Parenthesis +Conformance08 Conformance\UnitsOfMeasure\Parsing +Conformance08 Conformance\UnitsOfMeasure\TypeChecker +Conformance08 Conformance\UnitsOfMeasure\WithOOP +Conformance08 Conformance\Expressions\DataExpressions\NameOf + +Misc01 ClrFx\PseudoCustomAttributes\AssemblyAlgorithmId +Misc01 ClrFx\PseudoCustomAttributes\AssemblyConfiguration +Misc01 ClrFx\PseudoCustomAttributes\AssemblyVersion +Misc01 Diagnostics\async +Misc01,Diagnostics Diagnostics\General +Misc01 Diagnostics\NONTERM +Misc01 Diagnostics\ParsingAtEOF +Misc01 EntryPoint +Misc01 Globalization +Misc01,NoMT Import +Misc01,NoMT ..\..\..\testsprivate\fsharpqa\Source\InteractiveSession\AssemblyLoading +Misc01,NoMT InteractiveSession\Misc +Misc01,NoMT InteractiveSession\Misc\GenericConstraintWoes\issue2411 +Misc01 Libraries\Control +Misc01 Libraries\Core\collections +Misc01 Libraries\Core\ExtraTopLevelOperators +Misc01 Libraries\Core\LanguagePrimitives +Misc01 Libraries\Core\NativeInterop\stackalloc +Misc01 Libraries\Core\Operators +Misc01 Libraries\Core\Reflection +Misc01 Libraries\Core\Unchecked +Misc01 Warnings + +Misc02 Libraries\Portable +Misc02 Misc +Misc02 MultiTargeting +Misc02 OCamlCompat +Misc02,CodeGen Optimizations\AssemblyBoundary +Misc02,CodeGen Optimizations\ForLoop +Misc02,CodeGen Optimizations\GenericComparison +Misc02,CodeGen Optimizations\Inlining +Misc02,NoMT Printing +Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\UnitsOfMeasure +Misc02 ..\..\..\testsprivate\fsharpqa\Source\RealWorld\Agents +Misc02,NoMT ..\..\..\testsprivate\fsharpqa\Source\Setup +Misc02 Stress +Misc02 XmlDoc\Basic +Misc02 XmlDoc\OCamlDoc +Misc02 XmlDoc\UnitOfMeasure From 9f5ef87af5975cf25707da0ee116694fa36024c9 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Mon, 5 Jul 2021 17:37:01 +0800 Subject: [PATCH 08/24] More backcompat --- src/fsharp/LexFilter.fs | 17 +++++--- .../Basic/OffsideExceptions.fs | 40 +++++++++++-------- 2 files changed, 34 insertions(+), 23 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index 4b1aaa748e0..edd2113cf38 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -1248,7 +1248,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu let isSemiSemi = match token with SEMICOLON_SEMICOLON -> true | _ -> false let relaxWhitespace2OffsideRule = // Offside rule for CtxtLetDecl (in types or modules) / CtxtMemberHead / CtxtTypeDefns... (given RelaxWhitespace2) - // This should not be applied to contexts without closing tokens! (CtxtFun, CtxtFunction, CtxtDo, CtxtSeqBlock etc) + // This should not be applied to contexts with optional closing tokens! (CtxtFun, CtxtFunction, CtxtDo, CtxtMemberBody, CtxtSeqBlock etc) // let ( member Foo ( for x in ( while ( // ... ... ... ... // ) = ... ) = ... ) do ... ) do ... @@ -1707,7 +1707,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // do ignore ( // 1 - // ), 2 // This is a 'unit * int', so for backwards compatibility, do not treat ')' as a continuator + // ), 2 // This is a 'unit * int', so for backwards compatibility, do not treat ')' as a continuator, don't apply relaxWhitespace2OffsideRule | _, (CtxtDo offsidePos :: _) when isSemiSemi || (if (*relaxWhitespace2OffsideRule ||*) isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from DO(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos @@ -1754,8 +1754,13 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu popCtxt() reprocess() - // Pop CtxtMemberBody when offside. Insert an ODECLEND to indicate the end of the member - | _, ((CtxtMemberBody offsidePos) :: _) when isSemiSemi || (if relaxWhitespace2OffsideRule then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + // Pop CtxtMemberBody when offside. Insert an ODECLEND to indicate the end of the member + // member _.d() = seq { + // 1 + // }; static member e() = [ + // 1 // This is not offside for backcompat, don't apply relaxWhitespace2OffsideRule + // ] + | _, ((CtxtMemberBody offsidePos) :: _) when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from MEMBER/OVERRIDE head with offsidePos %a!\n" tokenStartCol outputPos offsidePos popCtxt() insertToken ODECLEND @@ -1811,14 +1816,14 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _, (CtxtFun offsidePos :: _) // fun () -> async { // 1 - // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator + // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator, don't apply relaxWhitespace2OffsideRule when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtFun\n" popCtxt() insertToken OEND // function () -> async { // 1 - // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator + // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator, don't apply relaxWhitespace2OffsideRule | _, (CtxtFunction offsidePos :: _) when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> popCtxt() diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 0e0ad01c1aa..7f9b72af9ca 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -169,23 +169,29 @@ end module M3 = do () [] let RelaxWhitespace2_AllowedBefore9() = Fsx """ -let a = - fun () -> ( - 1 - ), 2 - |> printfn "%O" - in ignore<(unit -> int) * unit> a -let b = - fun () -> ( - 1 - ), 2 - |> printfn "%O" - in ignore<(unit -> int) * unit> b -let c = - do ignore ( - 1 - ), 2 |> printfn "%O" - in ignore c +type __() = + let a = + fun () -> ( + 1 + ), 2 + |> printfn "%O" + in let () = ignore<(unit -> int) * unit> a + let b = + fun () -> ( + 1 + ), 2 + |> printfn "%O" + in do ignore<(unit -> int) * unit> b + let c = + do ignore ( + 1 + ), 2 |> printfn "%O" + in do ignore c + member _.d() = seq { + 1 + }; static member e() = [ + 1 + ] """ |> typecheck |> shouldSucceed From 45d54a46205163b7872a3a96bc39de098aec75c1 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 00:02:42 +0800 Subject: [PATCH 09/24] Fix --- src/fsharp/LexFilter.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index edd2113cf38..57a9fe7afb1 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -1365,7 +1365,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _ :: CtxtParen((BEGIN|STRUCT), _) :: CtxtSeqBlock(_, _, _) :: _ -> nextOuterMostInterestingContextIsNamespaceOrModule(offsideStack.Tail.Tail) // at the top of the stack there is an implicit module | _ :: [] -> true - // aTokenLExprParense is a non-namespace/module + // anything else is a non-namespace/module | _ -> false while not offsideStack.IsEmpty && (not(nextOuterMostInterestingContextIsNamespaceOrModule offsideStack)) && (match offsideStack.Head with From e6c350270ff8b8c09f69338508b3e5d706605f78 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 00:14:13 +0800 Subject: [PATCH 10/24] Reduce diff --- src/fsharp/LexFilter.fs | 356 ++++++++++++++++++---------------------- 1 file changed, 164 insertions(+), 192 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index 57a9fe7afb1..ae41677b5d9 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -38,8 +38,7 @@ type Context = | CtxtMatch of Position | CtxtFor of Position | CtxtWhile of Position - | CtxtWhen of Position - /// A CtxtSeqBlock is guaranteed to be after this context. + | CtxtWhen of Position | CtxtVanilla of Position * bool // boolean indicates if vanilla started with 'x = ...' or 'x.y = ...' | CtxtThen of Position | CtxtElse of Position @@ -179,17 +178,17 @@ let infixTokenLength token = | INFIX_STAR_STAR_OP d -> d.Length | COLON_QMARK_GREATER -> 3 | _ -> assert false; 1 - + /// Matches against a left-parenthesis-like token that is valid in expressions. let (|TokenLExprParen|_|) = function - | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true + | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true | LBRACK_LESS -> Some TokenLExprParen | _ -> None /// Matches against a right-parenthesis-like token that is valid in expressions. let (|TokenRExprParen|_|) = function - | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true + | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true | GREATER_RBRACK -> Some TokenRExprParen | _ -> None @@ -202,12 +201,12 @@ let rec isIfBlockContinuator token = // then ... // elif ... // else ... - | THEN | ELSE | ELIF -> true + | THEN | ELSE | ELIF -> true // Likewise // if ... then ( // ) elif begin // end else ... - | END | RPAREN -> true + | END | RPAREN -> true // The following arise during reprocessing of the inserted tokens, e.g. when we hit a DONE | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true | ODUMMY token -> isIfBlockContinuator token @@ -234,9 +233,9 @@ let rec isTryBlockContinuator token = // These tokens may align with the "try" without closing the construct, e.g. // try ... // with ... - | FINALLY | WITH -> true + | FINALLY | WITH -> true // The following arise during reprocessing of the inserted tokens when we hit a DONE - | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true + | ORIGHT_BLOCK_END | OBLOCKEND | ODECLEND -> true | ODUMMY token -> isTryBlockContinuator token | _ -> false @@ -419,9 +418,9 @@ let parenTokensBalance t1 t2 = | (INTERP_STRING_PART _, INTERP_STRING_PART _) | (INTERP_STRING_PART _, INTERP_STRING_END _) | (LBRACK_BAR, BAR_RBRACK) - | (LESS true, GREATER true) - | (BEGIN, END) -> true - | (LQUOTE q1, RQUOTE q2) when q1 = q2 -> true + | (LESS true, GREATER true) + | (BEGIN, END) -> true + | (LQUOTE q1, RQUOTE q2) when q1 = q2 -> true | _ -> false /// Used to save some aspects of the lexbuffer state @@ -703,7 +702,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // // Undentation rules //-------------------------------------------------------------------------- - + let (|RelaxWhitespace2|_|) x = if lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 then Some x else None let pushCtxt tokenTup (newCtxt: Context) = let rec undentationLimit strict stack = @@ -712,111 +711,113 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // ignore Vanilla because a SeqBlock is always coming | _, (CtxtVanilla _ :: rest) -> undentationLimit strict rest - | (_, (CtxtSeqBlock _ :: rest) | _, (CtxtParen _ :: rest)) when not strict - -> undentationLimit strict rest + + | _, (CtxtSeqBlock _ :: rest) when not strict -> undentationLimit strict rest + | _, (CtxtParen _ :: rest) when not strict -> undentationLimit strict rest // 'begin match' limited by minimum of two // '(match' limited by minimum of two - | _, ((CtxtMatch _ as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _rest) - -> if ctxt1.StartCol <= ctxt2.StartCol - then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) - else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) + | _, (((CtxtMatch _) as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _rest) + -> if ctxt1.StartCol <= ctxt2.StartCol + then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) + else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) + + // 'let ... = function' limited by 'let', precisely + // This covers the common form + // + // let f x = function + // | Case1 -> ... + // | Case2 -> ... + | (CtxtMatchClauses _), (CtxtFunction _ :: CtxtSeqBlock _ :: (CtxtLetDecl _ as limitCtxt) :: _rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + // Otherwise 'function ...' places no limit until we hit a CtxtLetDecl etc... (Recursive) + | (CtxtMatchClauses _), (CtxtFunction _ :: rest) + -> undentationLimit false rest + + // 'try ... with' limited by 'try' + | _, (CtxtMatchClauses _ :: (CtxtTry _ | RelaxWhitespace2 (CtxtMatch _) as limitCtxt) :: _rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - // Beginning indentation by zero or more spaces -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + // 'fun ->' places no limit until we hit a CtxtLetDecl etc... (Recursive) + | _, (CtxtFun _ :: rest) + -> undentationLimit false rest + + // 'let ... = f ... begin' limited by 'let' (given RelaxWhitespace2) + // 'let (' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let [' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let {' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let [|' (pattern match) limited by 'let' (given RelaxWhitespace2) + // 'let x : {|' limited by 'let' (given RelaxWhitespace2) + // 'let x : Foo<' limited by 'let' (given RelaxWhitespace2) + // 'let (ActivePattern <@' limited by 'let' (given RelaxWhitespace2) + // 'let (ActivePattern <@@' limited by 'let' (given RelaxWhitespace2) + // Same for 'match', 'if', 'then', 'else', 'for', 'while', 'member', 'when', and everything: No need to specify rules like the 'then' and 'else's below over and over again + | _, RelaxWhitespace2 (CtxtParen (TokenLExprParen, _) :: rest) + // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. + // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. + | _, RelaxWhitespace2 (CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest) + + // 'f ...{' places no limit until we hit a CtxtLetDecl etc... + // 'f ...[' places no limit until we hit a CtxtLetDecl etc... + // 'f ...[|' places no limit until we hit a CtxtLetDecl etc... + | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest) + | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) + | _, (CtxtSeqBlock _ :: CtxtParen((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) + -> undentationLimit false rest // MAJOR PERMITTED UNDENTATION This is allowing: - // if x then y else - // let x = 3 + 4 - // x + x + // if x then y else + // let x = 3 + 4 + // x + x // This is a serious thing to allow, but is required since there is no "return" in this language. // Without it there is no way of escaping special cases in large bits of code without indenting the main case. - | CtxtSeqBlock _, (CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _rest) + | CtxtSeqBlock _, (CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) // Permitted inner-construct precise block alignment: - // interface ... - // with ... - // end - // - // type ... - // with ... - // end + // interface ... + // with ... + // end + // + // type ... + // with ... + // end | CtxtWithAsAugment _, ((CtxtInterfaceHead _ | CtxtMemberHead _ | CtxtException _ | CtxtTypeDefns _) as limitCtxt :: _rest) - - // Permitted inner-construct (e.g. "then" block and "else" block in overall - // "if-then-else" block ) block alignment: - // if ... - // then expr - // elif expr - // else expr - | (CtxtIf _ | CtxtElse _ | CtxtThen _), (CtxtIf _ as limitCtxt) :: _rest - - // Permitted inner-construct precise block alignment: - // while ... - // do expr - // done - | (CtxtDo _), ((CtxtFor _ | CtxtWhile _) as limitCtxt) :: _rest - - // 'try ... with' limited by 'try' - // Permitted undentation: - // try - // ... - // with - // | ... - // When RelaxWhitespace2 is available: - // match - // ... - // with - // | ... - | _, (CtxtMatchClauses _ :: (CtxtTry _ | RelaxWhitespace2 (CtxtMatch _) as limitCtxt) :: _rest) - - // 'let ... = function' limited by 'let', precisely - // This covers the common form - // let f x = function - // | Case1 -> ... - // | Case2 -> ... - | CtxtMatchClauses _, (CtxtFunction _ :: CtxtSeqBlock _ :: (CtxtLetDecl _ as limitCtxt) :: _rest) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - - // Beginning recursive cases -> undentationLimit false rest - - // Otherwise 'function ...' places no limit until we hit a CtxtLetDecl 'let x = ... function' etc... (Recursive) - | CtxtMatchClauses _, (CtxtFunction _ :: rest) - - // 'fun ->' places no limit until we hit a CtxtLetDecl 'let x = ... fun ->' etc... (Recursive) - | _, (CtxtFun _ :: rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) // Permit undentation via parentheses (or begin/end) following a 'then', 'else' or 'do': - // if nr > 0 then ( - // nr <- nr - 1 - // acc <- d - // i <- i - 1 - // ) else ( - // i <- -1 - // ) - - // PERMITTED UNDENTATION: Inner construct (then, with, else, do) that dangle, places no limit - // until we hit the corresponding leading construct CtxtIf, CtxtFor, CtxtWhile, CtxtVanilla etc... - // e.g. - // if ... then ... - // expr - // else - // expr - // rather than forcing - // if ... - // then expr - // else expr - // Also ...... with + // if nr > 0 then ( + // nr <- nr - 1 + // acc <- d + // i <- i - 1 + // ) else ( + // i <- -1 + // ) + + // PERMITTED UNDENTATION: Inner construct (then, with, else, do) that dangle, places no limit until we hit the corresponding leading construct CtxtIf, CtxtFor, CtxtWhile, CtxtVanilla etc... *) + // e.g. if ... then ... + // expr + // else + // expr + // rather than forcing + // if ... + // then expr + // else expr + // Also ...... with // ... <-- this is before the "with" // end - | _, ((CtxtWithAsAugment _ | CtxtThen _ | CtxtElse _ | CtxtDo _) :: rest) + | _, ((CtxtWithAsAugment _ | CtxtThen _ | CtxtElse _ | CtxtDo _ ) :: rest) + -> undentationLimit false rest + - // '... (function ->' places no limit until we hit a CtxtLetDecl 'let f = ...(function ->' etc. (Recursive) + // '... (function ->' places no limit until we hit a CtxtLetDecl etc.... (Recursive) // // e.g. // let fffffff() = function // | [] -> 0 - // | _ -> 1 + // | _ -> 1 // // Note this does not allow // let fffffff() = function _ -> @@ -826,118 +827,89 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 0 // | 2 -> ... <---- not allowed | _, (CtxtFunction _ :: rest) - - // 'let ... = f ... begin' limited by 'let' (given RelaxWhitespace2) - // 'let (' (pattern match) limited by 'let' (given RelaxWhitespace2) - // 'let [' (pattern match) limited by 'let' (given RelaxWhitespace2) - // 'let {' (pattern match) limited by 'let' (given RelaxWhitespace2) - // 'let [|' (pattern match) limited by 'let' (given RelaxWhitespace2) - // 'let x : {|' limited by 'let' (given RelaxWhitespace2) - // 'let x : Foo<' limited by 'let' (given RelaxWhitespace2) - // 'let (ActivePattern <@' limited by 'let' (given RelaxWhitespace2) - // 'let (ActivePattern <@@' limited by 'let' (given RelaxWhitespace2) - // Same for 'match', 'if', 'then', 'else', 'for', 'while', 'member', 'when', and everything: No need to specify rules like the 'then' and 'else's below over and over again - | _, RelaxWhitespace2 (CtxtParen (TokenLExprParen, _) :: rest) - // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. - // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. - | _, RelaxWhitespace2 (CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest) - - // 'f ... {' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... {' (given no RelaxWhitespace2, added in F# 2.0, see [RFC FS-1054] less strict indentation on common DSL pattern) - // (as part of FS-1054, the case (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest)) was added, rendering some cases below useless) - // 'f ... [' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... [' (given no RelaxWhitespace2, added in F# 4.5 as part of [RFC FS-1054] less strict indentation on common DSL pattern) - // 'f ... [|' places no limit until we hit e.g. CtxtLetDecl 'let x = ... f ... [|' (given no RelaxWhitespace2, added in F# 4.5 as part of [RFC FS-1054] less strict indentation on common DSL pattern) - // 'f ... (' is handled by RelaxWhitespace2 above - // 'f ... {|' is handled by RelaxWhitespace2 above - // 'f ... begin' is handled by RelaxWhitespace2 above - // 'f ... Foo<' is handled by RelaxWhitespace2 above - // 'f ... <@' is handled by RelaxWhitespace2 above - // 'f ... <@@' is handled by RelaxWhitespace2 above - | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: rest) // This case was added in F# 4.5 with FS-1054 - | _, (CtxtParen ((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) // This case was added in F# 2.0, extended with FS-1054 - | _, (CtxtSeqBlock _ :: CtxtParen((LBRACE _ | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: CtxtSeqBlock _ :: rest) // This case was added in F# 2.0, extended with FS-1054 - -> undentationLimit false rest - - // Beginning indentation by at least one space -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // 'module ... : sig' limited by 'module' - // 'module ... : struct' limited by 'module' - // 'module ... : begin' limited by 'module' (given no RelaxWhitespace2) - // 'if ... then begin' limited by 'if' (given no RelaxWhitespace2) - // 'if ... then (' limited by 'if' (given no RelaxWhitespace2) - // 'if ... then [' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... then {' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... then {|' limited by 'if' (given no RelaxWhitespace2) - // 'if ... then [|' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... else begin' limited by 'if' (given no RelaxWhitespace2) - // 'if ... else (' limited by 'if' (given no RelaxWhitespace2) - // 'if ... else [' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... else {' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... else {|' limited by 'if' (given no RelaxWhitespace2) - // 'if ... else [|' limited by 'if' (never reached after F# 4.5 with FS-1054) - // 'if ... else [<' limited by 'if' (always) + -> undentationLimit false rest + + // 'module ... : sig' limited by 'module' + // 'module ... : struct' limited by 'module' + // 'module ... : begin' limited by 'module' + // 'if ... then (' limited by 'if' + // 'if ... then {' limited by 'if' + // 'if ... then [' limited by 'if' + // 'if ... then [|' limited by 'if' + // 'if ... else (' limited by 'if' + // 'if ... else {' limited by 'if' + // 'if ... else [' limited by 'if' + // 'if ... else [|' limited by 'if' | _, (CtxtParen ((SIG | STRUCT | BEGIN), _) :: CtxtSeqBlock _ :: (CtxtModuleBody (_, false) as limitCtxt) :: _) | _, (CtxtParen ((BEGIN | LPAREN | LBRACK | LBRACE _ | LBRACE_BAR | LBRACK_BAR), _) :: CtxtSeqBlock _ :: CtxtThen _ :: (CtxtIf _ as limitCtxt) :: _) | _, (CtxtParen ((BEGIN | LPAREN | LBRACK | LBRACE _ | LBRACE_BAR | LBRACK_BAR | LBRACK_LESS), _) :: CtxtSeqBlock _ :: CtxtElse _ :: (CtxtIf _ as limitCtxt) :: _) - // 'f ... x = begin' in seqblock limited by 'f' (given no RelaxWhitespace2) - // 'f ... x = (' in seqblock limited by 'f' (given no RelaxWhitespace2) - // 'f ... x = Foo<' in seqblock limited by 'f' (given no RelaxWhitespace2) - // 'f ... x = [' in seqblock limited by 'f' (never reached after F# 4.5 with FS-1054) - // 'f ... x = [|' in seqblock limited by 'f' (never reached after F# 4.5 with FS-1054) + // 'f ... (' in seqblock limited by 'f' + // 'f ... {' in seqblock limited by 'f' NOTE: this is covered by the more generous case above + // 'f ... [' in seqblock limited by 'f' + // 'f ... [|' in seqblock limited by 'f' + // 'f ... Foo<' in seqblock limited by 'f' | _, (CtxtParen ((BEGIN | LPAREN | LESS true | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) - - // REVIEW: document these (given no RelaxWhitespace2) - | _, (CtxtSeqBlock _ :: CtxtParen((BEGIN | LPAREN | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) - | (CtxtSeqBlock _), (CtxtParen ((BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: ((CtxtTypeDefns _ | CtxtLetDecl _ | CtxtMemberBody _ | CtxtWithAsLet _) as limitCtxt) :: _) - // 'type C = class ... ' limited by 'type' - // 'type C = interface ... ' limited by 'type' - // 'type C = struct ... ' limited by 'type' + // 'type C = class ... ' limited by 'type' + // 'type C = interface ... ' limited by 'type' + // 'type C = struct ... ' limited by 'type' | _, (CtxtParen ((CLASS | STRUCT | INTERFACE), _) :: CtxtSeqBlock _ :: (CtxtTypeDefns _ as limitCtxt) :: _) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // Beginning indentation by at least one space when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace - // -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - // The following 3 rules were added in F# 4.7 with [FS-1070] Offside relaxations for construct and member definitions - // 'type C(x:int, - // y:int' limited by 'type' (given RelaxWhitespace but not RelaxWhitespace2) - // The 'type C( - // x:int' case is handled by the RelaxWhitespace2 rule above - | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtTypeDefns _ as limitCtxt) :: _) - // 'static member C(x:int, - // y:int' limited by 'static', likewise others (given RelaxWhitespace but not RelaxWhitespace2) - // The 'static member C( - // x:int' case is handled by the RelaxWhitespace2 rule above - | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtMemberHead _ as limitCtxt) :: _) - // 'static member P with get() = ' limited by 'static', likewise others (given RelaxWhitespace) - | _, (CtxtWithAsLet _ :: (CtxtMemberHead _ as limitCtxt) :: _) - when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - - // When it doesn't match a special rule... - - // These contexts all require indentation by at least one space + + // 'type C(' limited by 'type' + | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtTypeDefns _ as limitCtxt) :: _ ) + // 'static member C(' limited by 'static', likewise others + | _, (CtxtSeqBlock _ :: CtxtParen(LPAREN, _) :: (CtxtMemberHead _ as limitCtxt) :: _ ) + // 'static member P with get() = ' limited by 'static', likewise others + | _, (CtxtWithAsLet _ :: (CtxtMemberHead _ as limitCtxt) :: _ ) + when lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // REVIEW: document these + | _, (CtxtSeqBlock _ :: CtxtParen((BEGIN | LPAREN | LBRACK | LBRACK_BAR), _) :: CtxtVanilla _ :: (CtxtSeqBlock _ as limitCtxt) :: _) + | (CtxtSeqBlock _), (CtxtParen ((BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR), _) :: CtxtSeqBlock _ :: ((CtxtTypeDefns _ | CtxtLetDecl _ | CtxtMemberBody _ | CtxtWithAsLet _) as limitCtxt) :: _) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + + // Permitted inner-construct (e.g. "then" block and "else" block in overall + // "if-then-else" block ) block alignment: + // if ... + // then expr + // elif expr + // else expr + | (CtxtIf _ | CtxtElse _ | CtxtThen _), (CtxtIf _ as limitCtxt) :: _rest + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + // Permitted inner-construct precise block alignment: + // while ... + // do expr + // done + | (CtxtDo _), ((CtxtFor _ | CtxtWhile _) as limitCtxt) :: _rest + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + + // These contexts all require indentation by at least one space | _, ((CtxtInterfaceHead _ | CtxtNamespaceHead _ | CtxtModuleHead _ | CtxtException _ | CtxtModuleBody (_, false) | CtxtIf _ | CtxtWithAsLet _ | CtxtLetDecl _ | CtxtMemberHead _ | CtxtMemberBody _) as limitCtxt :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol + 1) - // These contexts can have their contents exactly aligning + // These contexts can have their contents exactly aligning | _, ((CtxtParen _ | CtxtFor _ | CtxtWhen _ | CtxtWhile _ | CtxtTypeDefns _ | CtxtMatch _ | CtxtModuleBody (_, true) | CtxtNamespaceBody _ | CtxtTry _ | CtxtMatchClauses _ | CtxtSeqBlock _) as limitCtxt :: _) - -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) match newCtxt with - // Don't bother to check pushes of Vanilla blocks since we've + // Don't bother to check pushes of Vanilla blocks since we've // always already pushed a SeqBlock at this position. - | CtxtVanilla _ + | CtxtVanilla _ // String interpolation inner expressions are not limited (e.g. multiline strings) | CtxtParen((INTERP_STRING_BEGIN_PART _ | INTERP_STRING_PART _),_) -> () - | _ -> + | _ -> let p1 = undentationLimit true offsideStack let c2 = newCtxt.StartCol - if c2 < p1.Column then - warn tokenTup - (if debug then - sprintf "possible incorrect indentation: this token is offside of context at position %s, newCtxt = %A, stack = %A, newCtxtPos = %s, c1 = %d, c2 = %d" - (warningStringOfPosition p1.Position) newCtxt offsideStack (stringOfPos (newCtxt.StartPos)) p1.Column c2 + if c2 < p1.Column then + warn tokenTup + (if debug then + sprintf "possible incorrect indentation: this token is offside of context at position %s, newCtxt = %A, stack = %A, newCtxtPos = %s, c1 = %d, c2 = %d" + (warningStringOfPosition p1.Position) newCtxt offsideStack (stringOfPos (newCtxt.StartPos)) p1.Column c2 else FSComp.SR.lexfltTokenIsOffsideOfContextStartedEarlier(warningStringOfPosition p1.Position)) let newOffsideStack = newCtxt :: offsideStack @@ -1686,7 +1658,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu replaceCtxt tokenTup (CtxtSeqBlock (FirstInSeqBlock, offsidePos, addBlockEnd)) // No change to offside stack: another statement block starts... insertTokenFromPrevPosToCurrentPos OBLOCKSEP - + // Offside rule for CtxtLetDecl // let .... = // ... From 4d912cd628dcef5811dd1918857e8defb4ecc03b Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 00:59:29 +0800 Subject: [PATCH 11/24] Update LexFilter.fs --- src/fsharp/LexFilter.fs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index ae41677b5d9..e0416df4b3d 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -182,13 +182,13 @@ let infixTokenLength token = /// Matches against a left-parenthesis-like token that is valid in expressions. let (|TokenLExprParen|_|) = function - | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true | LBRACK_LESS + | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true -> Some TokenLExprParen | _ -> None /// Matches against a right-parenthesis-like token that is valid in expressions. let (|TokenRExprParen|_|) = function - | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true | GREATER_RBRACK + | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true -> Some TokenRExprParen | _ -> None From 02a98808831302b6b6bdba832f0eaa8e92c4ec33 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 16:14:33 +0800 Subject: [PATCH 12/24] Attributes do work correctly --- src/fsharp/LexFilter.fs | 2 ++ .../LexicalFiltering/Basic/OffsideExceptions.fs | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index e0416df4b3d..19115c6a323 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -179,6 +179,8 @@ let infixTokenLength token = | COLON_QMARK_GREATER -> 3 | _ -> assert false; 1 +// LBRACK_LESS and GREATER_RBRACK are not here because adding them in these active patterns +// causes more offside warnings, while removing them doesn't add offside warnings in attributes. /// Matches against a left-parenthesis-like token that is valid in expressions. let (|TokenLExprParen|_|) = function diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 7f9b72af9ca..9d4d66248c2 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -196,6 +196,20 @@ type __() = |> typecheck |> shouldSucceed |> ignore + [] + let RelaxWhitespace2_AllowedBefore10() = + Fsx """ +module [< + Experimental "a" +>] A = type [< + Experimental "b" + >] B() = let [< + Experimental "c" + >] c = 1 + """ + |> typecheck + |> shouldSucceed + |> ignore [] let RelaxWhitespace2_Neg1() = From dc423d31b89c5ba16e68e0bc9511dbb73af6967b Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 16:17:54 +0800 Subject: [PATCH 13/24] Ooops --- .../Conformance/LexicalFiltering/Basic/OffsideExceptions.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 9d4d66248c2..9e8bfb7d7f3 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -201,7 +201,7 @@ type __() = Fsx """ module [< Experimental "a" ->] A = type [< + >] A = type [< Experimental "b" >] B() = let [< Experimental "c" From cc39457ae8691af90123501d48b072828bf93f50 Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 16:21:11 +0800 Subject: [PATCH 14/24] Reduce diff --- src/fsharp/LexFilter.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index 19115c6a323..7ed14122469 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -1660,7 +1660,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu replaceCtxt tokenTup (CtxtSeqBlock (FirstInSeqBlock, offsidePos, addBlockEnd)) // No change to offside stack: another statement block starts... insertTokenFromPrevPosToCurrentPos OBLOCKSEP - + // Offside rule for CtxtLetDecl // let .... = // ... From af7e1cfdfffd223acb02c564e6f8a7cf417960ef Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Wed, 7 Jul 2021 16:32:08 +0800 Subject: [PATCH 15/24] Ooops fix --- .../LexicalFiltering/Basic/OffsideExceptions.fs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 9e8bfb7d7f3..411ea0ad0c7 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -202,10 +202,10 @@ type __() = module [< Experimental "a" >] A = type [< - Experimental "b" - >] B() = let [< - Experimental "c" - >] c = 1 + Experimental "b" + >] B() = let [< + Experimental "c" + >] c = 1 """ |> typecheck |> shouldSucceed From aa49cd85d431b31e8af5ba6007c4d0f998a02b11 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Sat, 24 Jul 2021 12:21:50 +0100 Subject: [PATCH 16/24] merge main --- src/fsharp/xlf/FSComp.txt.es.xlf | 5 +++++ src/fsharp/xlf/FSComp.txt.fr.xlf | 2 -- src/fsharp/xlf/FSComp.txt.it.xlf | 2 -- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/fsharp/xlf/FSComp.txt.es.xlf b/src/fsharp/xlf/FSComp.txt.es.xlf index c58f35adb4f..6fd884a8c2a 100644 --- a/src/fsharp/xlf/FSComp.txt.es.xlf +++ b/src/fsharp/xlf/FSComp.txt.es.xlf @@ -182,6 +182,11 @@ whitespace relaxation v2 + + resumable state machines + resumable state machines + + single underscore pattern patrón de subrayado simple diff --git a/src/fsharp/xlf/FSComp.txt.fr.xlf b/src/fsharp/xlf/FSComp.txt.fr.xlf index 478045b0097..07a133d8266 100644 --- a/src/fsharp/xlf/FSComp.txt.fr.xlf +++ b/src/fsharp/xlf/FSComp.txt.fr.xlf @@ -181,8 +181,6 @@ whitespace relaxation v2 whitespace relaxation v2 - - single underscore pattern diff --git a/src/fsharp/xlf/FSComp.txt.it.xlf b/src/fsharp/xlf/FSComp.txt.it.xlf index 1e210a17eb7..8a0ef108955 100644 --- a/src/fsharp/xlf/FSComp.txt.it.xlf +++ b/src/fsharp/xlf/FSComp.txt.it.xlf @@ -181,8 +181,6 @@ whitespace relaxation v2 whitespace relaxation v2 - - single underscore pattern From 98889449a0c2786e18ca2e46aebc8a80fc7a8076 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Sat, 24 Jul 2021 18:27:55 +0100 Subject: [PATCH 17/24] update xlf --- src/fsharp/xlf/FSComp.txt.fr.xlf | 5 +++++ src/fsharp/xlf/FSComp.txt.it.xlf | 5 +++++ src/fsharp/xlf/FSComp.txt.ja.xlf | 5 ----- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/fsharp/xlf/FSComp.txt.fr.xlf b/src/fsharp/xlf/FSComp.txt.fr.xlf index 07a133d8266..159d5f654b2 100644 --- a/src/fsharp/xlf/FSComp.txt.fr.xlf +++ b/src/fsharp/xlf/FSComp.txt.fr.xlf @@ -182,6 +182,11 @@ whitespace relaxation v2 + + resumable state machines + resumable state machines + + single underscore pattern modèle de trait de soulignement unique diff --git a/src/fsharp/xlf/FSComp.txt.it.xlf b/src/fsharp/xlf/FSComp.txt.it.xlf index 8a0ef108955..9d12ccf3ee6 100644 --- a/src/fsharp/xlf/FSComp.txt.it.xlf +++ b/src/fsharp/xlf/FSComp.txt.it.xlf @@ -182,6 +182,11 @@ whitespace relaxation v2 + + resumable state machines + resumable state machines + + single underscore pattern criterio per carattere di sottolineatura singolo diff --git a/src/fsharp/xlf/FSComp.txt.ja.xlf b/src/fsharp/xlf/FSComp.txt.ja.xlf index db8a0f7731a..3c1c09ac722 100644 --- a/src/fsharp/xlf/FSComp.txt.ja.xlf +++ b/src/fsharp/xlf/FSComp.txt.ja.xlf @@ -422,11 +422,6 @@ 登録された PackageManager によって、#i はサポートされていません - - #i is not supported by the registered PackageManagers - 登録された PackageManager によって、#i はサポートされていません - - The state machine has an unexpected form ステート マシンに予期しない形式があります From f405d0640ed759ef2ff8c9589a21170a305f6658 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Sat, 24 Jul 2021 19:59:06 +0100 Subject: [PATCH 18/24] update baseline --- .../Regressions/E_InvalidQuotationLiteral01.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs b/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs index 752ce457fba..98d1f8fdcd5 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs +++ b/tests/fsharpqa/Source/Conformance/Expressions/ExpressionQuotations/Regressions/E_InvalidQuotationLiteral01.fs @@ -2,7 +2,7 @@ // Verify restrictions for what can be written in a quotation //Incomplete structured construct at or before this point in quotation literal //Unmatched '<@ @>' -//Unexpected keyword 'type' in quotation literal +//Unexpected keyword 'type' in binding //Incomplete value or function definition. If this is in an expression, the body of the expression must be indented to the same column as the 'let' keyword. //Unexpected end of quotation in expression. Expected incomplete structured construct at or before this point or other token. From 677da813577841387e0d0c66feb8d1046e02ac07 Mon Sep 17 00:00:00 2001 From: Don Syme Date: Sun, 25 Jul 2021 00:24:40 +0100 Subject: [PATCH 19/24] use 'when' --- src/fsharp/LexFilter.fs | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index bd3d0b194cd..f26e94ab880 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -179,19 +179,21 @@ let infixTokenLength token = | COLON_QMARK_GREATER -> 3 | _ -> assert false; 1 +/// Matches against a left-parenthesis-like token that is valid in expressions. +// // LBRACK_LESS and GREATER_RBRACK are not here because adding them in these active patterns // causes more offside warnings, while removing them doesn't add offside warnings in attributes. -/// Matches against a left-parenthesis-like token that is valid in expressions. -let (|TokenLExprParen|_|) = - function +let (|TokenLExprParen|_|) tok = + match tok with | BEGIN | LPAREN | LBRACE _ | LBRACE_BAR | LBRACK | LBRACK_BAR | LQUOTE _ | LESS true - -> Some TokenLExprParen + -> Some () | _ -> None + /// Matches against a right-parenthesis-like token that is valid in expressions. -let (|TokenRExprParen|_|) = - function +let (|TokenRExprParen|_|) tok = + match tok with | END | RPAREN | RBRACE _ | BAR_RBRACE | RBRACK | BAR_RBRACK | RQUOTE _ | GREATER true - -> Some TokenRExprParen + -> Some () | _ -> None /// Determine the tokens that may align with the 'if' of an 'if/then/elif/else' without closing @@ -712,7 +714,8 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // Undentation rules //-------------------------------------------------------------------------- - let (|RelaxWhitespace2|_|) x = if lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 then Some x else None + let relaxWhitespace2 = lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 + let pushCtxt tokenTup (newCtxt: Context) = let rec undentationLimit strict stack = match newCtxt, stack with @@ -745,7 +748,11 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu -> undentationLimit false rest // 'try ... with' limited by 'try' - | _, (CtxtMatchClauses _ :: (CtxtTry _ | RelaxWhitespace2 (CtxtMatch _) as limitCtxt) :: _rest) + | _, (CtxtMatchClauses _ :: (CtxtTry _ as limitCtxt) :: _rest) + -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) + + // 'try ... with' limited by 'try' (updated rule) + | _, (CtxtMatchClauses _ :: (CtxtMatch _ as limitCtxt) :: _rest) when relaxWhitespace2 -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) // 'fun ->' places no limit until we hit a CtxtLetDecl etc... (Recursive) @@ -762,10 +769,11 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 'let (ActivePattern <@' limited by 'let' (given RelaxWhitespace2) // 'let (ActivePattern <@@' limited by 'let' (given RelaxWhitespace2) // Same for 'match', 'if', 'then', 'else', 'for', 'while', 'member', 'when', and everything: No need to specify rules like the 'then' and 'else's below over and over again - | _, RelaxWhitespace2 (CtxtParen (TokenLExprParen, _) :: rest) + | _, CtxtParen (TokenLExprParen, _) :: rest // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. - | _, RelaxWhitespace2 (CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest) + | _, CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest when relaxWhitespace2 + -> undentationLimit false rest // 'f ...{' places no limit until we hit a CtxtLetDecl etc... // 'f ...[' places no limit until we hit a CtxtLetDecl etc... @@ -1253,7 +1261,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // ) = ... // ODUMMY is a context closer token, after its context is closed match token with - | ODUMMY TokenRExprParen -> lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 + | ODUMMY TokenRExprParen -> relaxWhitespace2 | _ -> false // If you see a 'member' keyword while you are inside the body of another member, then it usually means there is a syntax error inside this method @@ -1771,7 +1779,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu insertToken ODECLEND | _, CtxtMatch offsidePos :: _ - when isSemiSemi || (if relaxWhitespace2OffsideRule || lexbuf.SupportsFeature LanguageFeature.RelaxWhitespace2 && isMatchBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> + when isSemiSemi || (if relaxWhitespace2OffsideRule || relaxWhitespace2 && isMatchBlockContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtMatch\n" popCtxt() reprocess() From 8d83d383026271cd2bb7cc18f4a289dfe3e2409f Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Sun, 8 Aug 2021 17:43:01 +0800 Subject: [PATCH 20/24] Tests pog --- src/fsharp/LexFilter.fs | 24 +++++++++++-- .../Basic/OffsideExceptions.fs | 34 +++++++++++++++++++ 2 files changed, 56 insertions(+), 2 deletions(-) diff --git a/src/fsharp/LexFilter.fs b/src/fsharp/LexFilter.fs index f26e94ab880..f668af52987 100644 --- a/src/fsharp/LexFilter.fs +++ b/src/fsharp/LexFilter.fs @@ -729,7 +729,21 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 'begin match' limited by minimum of two // '(match' limited by minimum of two - | _, (CtxtMatch _ as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _rest + | _, (CtxtMatch _ as ctxt1) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _ + -> if ctxt1.StartCol <= ctxt2.StartCol + then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) + else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) + // Insert this rule to allow + // begin match 1 with + // | 1 -> () + // | 2 -> + // f() // <- No offside warning here + // end + // when relaxWhitespace2 + // Otherwise the rule of 'match ... with' limited by 'match' (given RelaxWhitespace2) + // will consider the CtxtMatch as the limiting context instead of allowing undentation until the parenthesis + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2_AllowedBefore11 + | _, (CtxtMatchClauses _ as ctxt1) :: (CtxtMatch _) :: CtxtSeqBlock _ :: (CtxtParen ((BEGIN | LPAREN), _) as ctxt2) :: _ when relaxWhitespace2 -> if ctxt1.StartCol <= ctxt2.StartCol then PositionWithColumn(ctxt1.StartPos, ctxt1.StartCol) else PositionWithColumn(ctxt2.StartPos, ctxt2.StartCol) @@ -751,7 +765,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu | _, (CtxtMatchClauses _ :: (CtxtTry _ as limitCtxt) :: _rest) -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) - // 'try ... with' limited by 'try' (updated rule) + // 'match ... with' limited by 'match' (given RelaxWhitespace2) | _, (CtxtMatchClauses _ :: (CtxtMatch _ as limitCtxt) :: _rest) when relaxWhitespace2 -> PositionWithColumn(limitCtxt.StartPos, limitCtxt.StartCol) @@ -769,9 +783,11 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // 'let (ActivePattern <@' limited by 'let' (given RelaxWhitespace2) // 'let (ActivePattern <@@' limited by 'let' (given RelaxWhitespace2) // Same for 'match', 'if', 'then', 'else', 'for', 'while', 'member', 'when', and everything: No need to specify rules like the 'then' and 'else's below over and over again + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2 | _, CtxtParen (TokenLExprParen, _) :: rest // 'let x = { y =' limited by 'let' (given RelaxWhitespace2) etc. // 'let x = {| y =' limited by 'let' (given RelaxWhitespace2) etc. + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2 | _, CtxtSeqBlock _ :: CtxtParen (TokenLExprParen, _) :: rest when relaxWhitespace2 -> undentationLimit false rest @@ -1697,6 +1713,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // do ignore ( // 1 // ), 2 // This is a 'unit * int', so for backwards compatibility, do not treat ')' as a continuator, don't apply relaxWhitespace2OffsideRule + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2_AllowedBefore9 | _, CtxtDo offsidePos :: _ when isSemiSemi || (if (*relaxWhitespace2OffsideRule ||*) isDoContinuator token then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from DO(offsidePos=%a)! delaying token, returning ODECLEND\n" tokenStartCol outputPos offsidePos @@ -1749,6 +1766,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // }; static member e() = [ // 1 // This is not offside for backcompat, don't apply relaxWhitespace2OffsideRule // ] + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2_AllowedBefore9 | _, CtxtMemberBody offsidePos :: _ when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "token at column %d is offside from MEMBER/OVERRIDE head with offsidePos %a!\n" tokenStartCol outputPos offsidePos popCtxt() @@ -1806,6 +1824,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // fun () -> async { // 1 // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator, don't apply relaxWhitespace2OffsideRule + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2_AllowedBefore9 when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> if debug then dprintf "offside from CtxtFun\n" popCtxt() @@ -1813,6 +1832,7 @@ type LexFilterImpl (lightStatus: LightSyntaxStatus, compilingFsLib, lexer, lexbu // function () -> async { // 1 // }, 2 // This is a '(unit -> seq) * int', so for backwards compatibility, do not treat '}' as a continuator, don't apply relaxWhitespace2OffsideRule + // Test here: Tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs, RelaxWhitespace2_AllowedBefore9 | _, CtxtFunction offsidePos :: _ when isSemiSemi || (if (*relaxWhitespace2OffsideRule*)false then tokenStartCol + 1 else tokenStartCol) <= offsidePos.Column -> popCtxt() diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index b09218ff148..21fe6159f2a 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -18,6 +18,7 @@ module OffsideExceptions = |> asFsx |> typecheck |> shouldSucceed + |> shouldSucceed |> ignore [] @@ -176,17 +177,34 @@ type __() = ), 2 |> printfn "%O" in let () = ignore<(unit -> int) * unit> a + let a' = + fun () -> seq { + 1 + }, 2 + |> printfn "%O" + in let () = ignore<(unit -> int) * unit> a' let b = fun () -> ( 1 ), 2 |> printfn "%O" in do ignore<(unit -> int) * unit> b + let b' = + fun () -> seq { + 1 + }, 2 + |> printfn "%O" + in do ignore<(unit -> int) * unit> b' let c = do ignore ( 1 ), 2 |> printfn "%O" in do ignore c + let c' = + do ignore seq { + 1 + }, 2 |> printfn "%O" + in do ignore c' member _.d() = seq { 1 }; static member e() = [ @@ -210,6 +228,22 @@ module [< |> typecheck |> shouldSucceed |> ignore + [] + // https://github.com/dotnet/fsharp/pull/11772#issuecomment-888637013 + let RelaxWhitespace2_AllowedBefore11() = + Fsx """ +let f() = () + +begin match 1 with +| 1 -> () +| 2 -> + f() +| _ -> printfn ":)" +end + """ + |> typecheck + |> shouldSucceed + |> ignore [] let RelaxWhitespace2_Neg1() = From 1d76694e125cb934654e942e5f47b634e8974a0b Mon Sep 17 00:00:00 2001 From: Hadrian Tang Date: Sun, 8 Aug 2021 20:35:03 +0800 Subject: [PATCH 21/24] Oopsay --- .../LexicalFiltering/Basic/OffsideExceptions.fs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 21fe6159f2a..be92f802ddd 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -182,7 +182,7 @@ type __() = 1 }, 2 |> printfn "%O" - in let () = ignore<(unit -> int) * unit> a' + in let () = ignore<(unit -> seq) * unit> a' let b = fun () -> ( 1 @@ -194,14 +194,14 @@ type __() = 1 }, 2 |> printfn "%O" - in do ignore<(unit -> int) * unit> b' + in do ignore<(unit -> seq) * unit> b' let c = do ignore ( 1 ), 2 |> printfn "%O" in do ignore c let c' = - do ignore seq { + do ignore <| seq { 1 }, 2 |> printfn "%O" in do ignore c' @@ -5160,4 +5160,4 @@ exit 1 EndColumn = 14 } Message = "Possible incorrect indentation: this token is offside of context started at position (3901:16). Try indenting this token further or using standard formatting conventions." } - |] \ No newline at end of file + |] From 3f5609f4828649df5202fb1c205419db392ca48d Mon Sep 17 00:00:00 2001 From: Don Syme Date: Mon, 9 Aug 2021 13:16:25 +0100 Subject: [PATCH 22/24] Update FSComp.txt.es.xlf --- src/fsharp/xlf/FSComp.txt.es.xlf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fsharp/xlf/FSComp.txt.es.xlf b/src/fsharp/xlf/FSComp.txt.es.xlf index 6fd884a8c2a..9d509b13541 100644 --- a/src/fsharp/xlf/FSComp.txt.es.xlf +++ b/src/fsharp/xlf/FSComp.txt.es.xlf @@ -184,7 +184,7 @@ resumable state machines - resumable state machines + máquinas de estado reanudables @@ -7809,4 +7809,4 @@ - \ No newline at end of file + From ad085f2409f81adc10a2e4924459210181c34c7f Mon Sep 17 00:00:00 2001 From: Don Syme Date: Mon, 9 Aug 2021 13:17:10 +0100 Subject: [PATCH 23/24] Update FSComp.txt.fr.xlf --- src/fsharp/xlf/FSComp.txt.fr.xlf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fsharp/xlf/FSComp.txt.fr.xlf b/src/fsharp/xlf/FSComp.txt.fr.xlf index 159d5f654b2..878de8daf16 100644 --- a/src/fsharp/xlf/FSComp.txt.fr.xlf +++ b/src/fsharp/xlf/FSComp.txt.fr.xlf @@ -184,7 +184,7 @@ resumable state machines - resumable state machines + ordinateurs d’état pouvant être repris @@ -7809,4 +7809,4 @@ - \ No newline at end of file + From f2f5cdef2c7f059a4635ea51507390492b7e250c Mon Sep 17 00:00:00 2001 From: Don Syme Date: Mon, 9 Aug 2021 13:17:48 +0100 Subject: [PATCH 24/24] Update FSComp.txt.it.xlf --- src/fsharp/xlf/FSComp.txt.it.xlf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/fsharp/xlf/FSComp.txt.it.xlf b/src/fsharp/xlf/FSComp.txt.it.xlf index 9d12ccf3ee6..a20b877f930 100644 --- a/src/fsharp/xlf/FSComp.txt.it.xlf +++ b/src/fsharp/xlf/FSComp.txt.it.xlf @@ -184,7 +184,7 @@ resumable state machines - resumable state machines + macchine a stati ripristinabili @@ -7809,4 +7809,4 @@ - \ No newline at end of file +