@@ -209,7 +209,9 @@ module ts {
209209 visitNode ( cbNode , ( < WithStatement > node ) . statement ) ;
210210 case SyntaxKind . SwitchStatement :
211211 return visitNode ( cbNode , ( < SwitchStatement > node ) . expression ) ||
212- visitNodes ( cbNodes , ( < SwitchStatement > node ) . clauses ) ;
212+ visitNode ( cbNode , ( < SwitchStatement > node ) . caseBlock ) ;
213+ case SyntaxKind . CaseBlock :
214+ return visitNodes ( cbNodes , ( < CaseBlock > node ) . clauses ) ;
213215 case SyntaxKind . CaseClause :
214216 return visitNode ( cbNode , ( < CaseClause > node ) . expression ) ||
215217 visitNodes ( cbNodes , ( < CaseClause > node ) . statements ) ;
@@ -3954,9 +3956,11 @@ module ts {
39543956 parseExpected ( SyntaxKind . OpenParenToken ) ;
39553957 node . expression = allowInAnd ( parseExpression ) ;
39563958 parseExpected ( SyntaxKind . CloseParenToken ) ;
3959+ var caseBlock = < CaseBlock > createNode ( SyntaxKind . CaseBlock , scanner . getStartPos ( ) ) ;
39573960 parseExpected ( SyntaxKind . OpenBraceToken ) ;
3958- node . clauses = parseList ( ParsingContext . SwitchClauses , /*checkForStrictMode*/ false , parseCaseOrDefaultClause ) ;
3961+ caseBlock . clauses = parseList ( ParsingContext . SwitchClauses , /*checkForStrictMode*/ false , parseCaseOrDefaultClause ) ;
39593962 parseExpected ( SyntaxKind . CloseBraceToken ) ;
3963+ node . caseBlock = finishNode ( caseBlock ) ;
39603964 return finishNode ( node ) ;
39613965 }
39623966
0 commit comments