diff --git a/src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs b/src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs index 4727b1f829..f8430f6a98 100644 --- a/src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs +++ b/src/Libraries/NRefactory/Project/Src/Visitors/ToCSharpConvertVisitor.cs @@ -37,7 +37,8 @@ namespace ICSharpCode.NRefactory.Visitors } FieldDeclaration fd = node as FieldDeclaration; if (fd != null) { - fd.Modifier |= Modifiers.Static; + if ((fd.Modifier & Modifiers.Const) == 0) + fd.Modifier |= Modifiers.Static; } } } diff --git a/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs b/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs index 9a5dc22eef..321a8774d9 100644 --- a/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs +++ b/src/Libraries/NRefactory/Test/Output/CSharp/VBNetToCSharpConverterTest.cs @@ -691,5 +691,15 @@ static int static_Test2_j = 0;"); { TestStatement("For Me.Field = 1 To 10 : Next Me.Field", "for (this.Field = 1; this.Field <= 10; this.Field++) {\n}"); } + + [Test] + public void ConstModuleMember() + { + TestProgram("Module Test : Public Const C As Integer = 0 : End Module", + "static class Test\r\n" + + "{\r\n" + + " public const int C = 0;\r\n" + + "}"); + } } }