[svn] r7115: vs-plugin/trunk:
Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Checker.n
Nemerle.Compi...
pbludov
svnadmin at nemerle.org
Mon Dec 18 10:06:59 CET 2006
Log:
Some checks to avoid crashes on garbage code.
Author: pbludov
Date: Mon Dec 18 10:06:53 2006
New Revision: 7115
Modified:
vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Checker.n
vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/Engine/Engine-main.n
vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleDropDownMember.cs
Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Checker.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Checker.n (original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Checker.n Mon Dec 18 10:06:53 2006
@@ -354,9 +354,9 @@
&& m.Location.FileIndex == _fileIndex
}
- def members = builder.GetDirectMembers().Filter(isProcessed);
-
- foreach (member in members)
+ def members = builder.GetDirectMembers();
+ when (members != null)
+ foreach (member in members.Filter(isProcessed))
{
| method is MethodBuilder => ProcessMethod (method);
| prop is PropertyBuilder => ProcessProperty(prop);
Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/Engine/Engine-main.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/Engine/Engine-main.n (original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/Engine/Engine-main.n Mon Dec 18 10:06:53 2006
@@ -68,6 +68,7 @@
{
//Output.WriteLine($"------- $topDecl: $(topDecl.Name)");
//Output.WriteLine(topDecl.Location);
+ when (topDecl.ParsedName.context != null)
ScanningPipeline(topDecl);
}
//Trace.WriteLine("!!! End <<<<");
Modified: vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleDropDownMember.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleDropDownMember.cs (original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/LanguageService/NemerleDropDownMember.cs Mon Dec 18 10:06:53 2006
@@ -34,6 +34,8 @@
{
_members = new List<DropDownMember>();
+ if (_typeBuilder.LookupMemberAvailable)
+ {
foreach (IMember m in _typeBuilder.GetMembers())
if (m.Location.FileIndex == _fileIndex && !m.Location.IsGenerated && !(m is TypeInfo))
_members.Add(CreateMember(m));
@@ -48,6 +50,7 @@
return string.Compare(m1.Label, m2.Label);
});
}
+ }
return _members;
}
More information about the svn
mailing list