[mcs] Handle using aliases in evaluator. Fixes #32894
authorMarek Safar <marek.safar@gmail.com>
Tue, 10 Nov 2015 15:55:50 +0000 (16:55 +0100)
committerMarek Safar <marek.safar@gmail.com>
Tue, 10 Nov 2015 15:55:50 +0000 (16:55 +0100)
mcs/class/Mono.CSharp/Test/Evaluator/ExpressionsTest.cs
mcs/mcs/namespace.cs

index d70638693621bf309b9f33104958877f87b0120d..74fc4a03cf2cbd4605da80b3f3059eec57089057 100644 (file)
@@ -95,6 +95,14 @@ namespace MonoTests.EvaluatorTest
                        Evaluator.Evaluate ("1+1");
                }
 
+               [Test]
+               public void UsingAlias ()
+               {
+                       Evaluator.Run("using System;");
+                       Evaluator.Run("using MyConsole = System.Console;");
+                       Evaluator.Run("Console.WriteLine(\"Hello World\")");
+               }
+
                [Test]
                public void WithTypeBuilders ()
                {
index d129aa6c7f332586d254e0de1fcf2a815fe5013c..d81c307ae085acd14d48606b1af9d068b0c4ee25 100644 (file)
@@ -1347,7 +1347,7 @@ namespace Mono.CSharp {
                                        for (int i = 0; i < clauses.Count; ++i) {
                                                var entry = clauses[i];
                                                if (entry.Alias != null) {
-                                                       aliases.Add (entry.Alias.Value, (UsingAliasNamespace) entry);
+                                                       aliases[entry.Alias.Value] = (UsingAliasNamespace) entry;
                                                }
                                        }
                                }