@@ -440,8 +440,7 @@ public void TestModuleConfig()
440
440
[ Test ]
441
441
public void TestEmptyComment ( )
442
442
{
443
- string code = @"'
444
- " ;
443
+ string code = @"'" ;
445
444
var parseResult = Parse ( code ) ;
446
445
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//comment" ) ;
447
446
}
@@ -450,8 +449,7 @@ public void TestEmptyComment()
450
449
[ Test ]
451
450
public void TestEmptyRemComment ( )
452
451
{
453
- string code = @"Rem
454
- " ;
452
+ string code = @"Rem" ;
455
453
var parseResult = Parse ( code ) ;
456
454
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//remComment" ) ;
457
455
}
@@ -460,8 +458,7 @@ public void TestEmptyRemComment()
460
458
[ Test ]
461
459
public void TestOneCharRemComment ( )
462
460
{
463
- string code = @"Rem a
464
- " ;
461
+ string code = @"Rem a" ;
465
462
var parseResult = Parse ( code ) ;
466
463
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//remComment" ) ;
467
464
}
@@ -470,8 +467,7 @@ public void TestOneCharRemComment()
470
467
[ Test ]
471
468
public void TestCommentThatLooksLikeAnnotation ( )
472
469
{
473
- string code = @"'@param foo; the value of something
474
- " ;
470
+ string code = @"'@param foo; the value of something" ;
475
471
var parseResult = Parse ( code ) ;
476
472
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//comment" ) ;
477
473
}
@@ -500,8 +496,7 @@ Sub FooFoo()
500
496
[ Test ]
501
497
public void TestOneCharComment ( )
502
498
{
503
- string code = @"'a
504
- " ;
499
+ string code = @"'a" ;
505
500
var parseResult = Parse ( code ) ;
506
501
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//comment" ) ;
507
502
}
@@ -2185,6 +2180,23 @@ End Sub
2185
2180
AssertTree ( parseResult . Item1 , parseResult . Item2 , "//variableSubStmt" , matches => matches . Count == 1 ) ;
2186
2181
}
2187
2182
2183
+ [ Category ( "Parser" ) ]
2184
+ [ Test ]
2185
+ public void UserDefinedType_TreatsFinalCommentAsComment ( )
2186
+ {
2187
+ // See Issue #3789
2188
+ const string code = @"
2189
+ Private Type tX
2190
+ foo As String
2191
+ bar As Long
2192
+ 'foobar as shouldNotBeVisible
2193
+ End Type
2194
+ " ;
2195
+ var parseResult = Parse ( code ) ;
2196
+ AssertTree ( parseResult . Item1 , parseResult . Item2 , "//udtMember" , matches => matches . Count == 2 ) ;
2197
+ AssertTree ( parseResult . Item1 , parseResult . Item2 , "//commentOrAnnotation" , matches => matches . Count == 1 ) ;
2198
+ }
2199
+
2188
2200
private Tuple < VBAParser , ParserRuleContext > Parse ( string code , PredictionMode predictionMode = null )
2189
2201
{
2190
2202
var stream = new AntlrInputStream ( code ) ;
0 commit comments