2003-10-17 Rafael Teixeira <rafaelteixeirabr@hotmail.com>
authorRafael Teixeira <monoman@gmail.com>
Fri, 17 Oct 2003 22:20:33 +0000 (22:20 -0000)
committerRafael Teixeira <monoman@gmail.com>
Fri, 17 Oct 2003 22:20:33 +0000 (22:20 -0000)
* Microsoft.VisualBasic/VBCodeGenerator.cs: Sub or Function generation is switched by method.ReturnType being "System.Void"

svn path=/trunk/mcs/; revision=19150

mcs/class/System/Microsoft.VisualBasic/ChangeLog
mcs/class/System/Microsoft.VisualBasic/VBCodeGenerator.cs

index 882629e82d763f8cec8b3f224afabadc9a5709c4..78a7034bab17c74a0fcb76fc84bb6c8140eb9350 100644 (file)
@@ -1,3 +1,7 @@
+2003-10-17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
+
+       * Microsoft.VisualBasic/VBCodeGenerator.cs: Sub or Function generation is switched by method.ReturnType being "System.Void"
+
 2003-10-17  Rafael Teixeira <rafaelteixeirabr@hotmail.com>
 
        * Microsoft.VisualBasic/VBCodeCompiler.cs: Inserts "--" before file names block
index 1ebe60cd23dbf5619d6f89139426a3b804348d4d..b59fe15787f8648059327b1df5ea891707b23c9b 100644 (file)
@@ -190,7 +190,7 @@ namespace Microsoft.VisualBasic
                        TextWriter output = Output;
 
                        GenerateExpression (expression.TargetObject);
-                       output.Write ('.Item(');
+                       output.Write (".Item(");
                        OutputExpressionList (expression.Indices);
                        output.Write (')');
                }
@@ -553,6 +553,8 @@ namespace Microsoft.VisualBasic
                [MonoTODO ("partially implemented")]
                protected override void GenerateMethod (CodeMemberMethod method, CodeTypeDeclaration declaration)
                {
+                       bool isSub = method.ReturnType == null || method.ReturnType.ToString() == "System.Void";
+
                        TextWriter output = Output;
 
                        if (method.CustomAttributes.Count > 0)
@@ -563,7 +565,7 @@ namespace Microsoft.VisualBasic
                        OutputMemberAccessModifier (attributes);
                        OutputMemberScopeModifier (attributes);
 
-                       if (method.ReturnType == null)
+                       if (isSub)
                                output.Write ("Sub ");
                        else
                                output.Write ("Function ");
@@ -573,7 +575,7 @@ namespace Microsoft.VisualBasic
                        OutputParameters (method.Parameters);
                        output.Write (')');
 
-                       if (method.ReturnType != null) {
+                       if (!isSub) {
                                output.Write (" As ");
                                OutputType (method.ReturnType);
                        }
@@ -598,7 +600,7 @@ namespace Microsoft.VisualBasic
                                ++Indent;
                                GenerateStatements (method.Statements);
                                --Indent;
-                               if (method.ReturnType == null)
+                               if (isSub)
                                        output.WriteLine ("End Sub");
                                else
                                        output.WriteLine ("End Function");