Daniel Grunwald
2f859148f0
Use simpler IAstVisitor for ResolveVisitor.
14 years ago
Daniel Grunwald
2bebee46a1
C# XML documentation support.
14 years ago
Mike Krüger
de6870b067
Fixed completion unit test.
14 years ago
Daniel Grunwald
cfe807ab73
Fix "find references" for method group conversions in delegate creation expressions "new Action(MyMethod)"
14 years ago
Daniel Grunwald
a7245affe6
Fixed finding references to method group conversions.
14 years ago
Daniel Grunwald
311df2bbb2
CSharpAstResolver: add cancellation support
14 years ago
Daniel Grunwald
46254b3b0d
Add support for resolving "operator true".
14 years ago
Daniel Grunwald
77ea4dae30
Report more types of invalid equality comparisons as errors.
...
Mark an anonymous function conversion as invalid if there are compiler errors in the implicitly typed lambda.
14 years ago
Daniel Grunwald
67d19127f5
Fixed bug in reachability analysis when lambda/anonymous method contains a condition or switch statement.
14 years ago
Daniel Grunwald
1a7ca154b4
Allow conversion of anonymous method with unreachable endpoint to Func<T>.
14 years ago
Daniel Grunwald
822fda7e36
Handle T[] -> T* and string -> char* conversions in fixed statement initializers.
14 years ago
Daniel Grunwald
0f2b0c380e
Fixed lambda type inference in delegate creation expressions. ("new Func<int, int>(a => a)")
14 years ago
Daniel Grunwald
13ac45ebf7
Add AstType.ToTypeReference() method.
14 years ago
Daniel Grunwald
d44077aa59
Add CSharpAstResolver.GetResolverStateAfter() and fixed an issue with the scanning logic in ResolveVisitor.
14 years ago
Daniel Grunwald
3d21a80e7d
Fixed the ResolveVisitor scanning logic and several related issues.
14 years ago
Mike Krüger
440bc4f305
Fixed assertion error.
14 years ago
Mike Krüger
802cd23697
Fixed "assertion problem". Failed code was:
...
--------------------------------
using System;
using System.Collections.Generic;
namespace MyApp
{
public interface ISubject<T>
{
}
public class Test<T,TRight,TLeft>
{
public void Foo (IObserver<T> observer)
{
var rightSubs = new List<ISubject<TRight>> ();
var rightVals = new List<TRight> ();
Observer.Create<TLeft> (v => {
ISubject<TRight> rsub = new ReplaySubject<TRight> ();
foreach (var r }, () => sub.OnCompleted ());
}
}
}
------------------------------------
14 years ago
Mike
7df3367870
Guard against storing the resolve result for variable name token twice
...
in foreach statement.
14 years ago
Daniel Grunwald
f2011680e9
Fixed resolving LINQ queries that involve transparent identifiers.
14 years ago
Daniel Grunwald
418f7090cb
Fixed resolving NamedExpressions in anonymous type creation expressions.
14 years ago
Daniel Grunwald
b803d850f7
Do not report invalid conversion from int to void for this code:
...
void Run(Action<string> a) { }
int M() {
Run(x => $M()$);
}
14 years ago
Daniel Grunwald
dac8c0fd35
Implement CSharpAstResolver.GetExpectedType() and CSharpAstResolver.GetConversion().
14 years ago
Daniel Grunwald
06f96bf068
Remove IAccessor and use IMethod instead.
14 years ago
Daniel Grunwald
942b4f70ef
Move ConversionResoleResult to ICSharpCode.NRefactory.Semantics.
...
Boxing conversion for attribute arguments is now used consistently in C# type system and Cecil-loaded type system.
14 years ago
Daniel Grunwald
9af3c040f2
Fixed resolving compound assignment operators.
14 years ago
Daniel Grunwald
f70a726495
Fixed resolving "-2147483648".
14 years ago
Daniel Grunwald
b84c06e5b6
Make CSharpResolver immutable.
14 years ago
Daniel Grunwald
f410a2b5d5
Enum members are implicitly cast to the underlying type when used in an enum member initializer.
14 years ago
Daniel Grunwald
42ce4ca6e1
Fixed type inference in foreach when the collection type does not implement IEnumerable.
14 years ago
Daniel Grunwald
7e95cb7446
Add CSharpAstResolver.GetResolverStateBefore
14 years ago
Daniel Grunwald
4d4f1f42b7
Fixed various resolver bugs.
14 years ago
Daniel Grunwald
c4ce9344f0
Fixed bug when resolving base constructor calls.
14 years ago
Daniel Grunwald
e2cb5467c2
Adjust CodeDomConvertVisitor and DefiniteAssignmentAnalysis to new type system.
14 years ago
Daniel Grunwald
73438b7288
Make CSharpResolveVisitor internal and expose CSharpAstResolver instead.
14 years ago
Daniel Grunwald
9d7c018fb2
Adjusted C# resolver to refactored type system.
14 years ago
Daniel Grunwald
c02e801b5d
Introduce ResolvedUsingScope (serves as cache per using-scope; avoids resolving imported namespaces repeatedly).
14 years ago
Mike Krüger
3b6fda215c
Added gtk demo & fixed code completion bug.
14 years ago
Mike Krüger
ec82082a36
Handled pre processor directives as separate AST node.
14 years ago
Daniel Grunwald
f9916d89ef
WIP: Type system refactoring.
14 years ago
Daniel Grunwald
f631199013
Type system refactoring: split unresolved/resolved type systems.
14 years ago
Daniel Grunwald
f043e30fbf
Fix ResolveVisitor.GetResolverStateBefore(): ensure that the resolver always registers the state before it caches a result.
14 years ago
Daniel Grunwald
7063203972
FieldDeclaration/EventDeclaration/VariableDeclarationStatement now resolve to 'void'.
...
Only the individual VariableInitializers will resolve to the field/event/variable.
Fixed several bugs in 'Find References'.
14 years ago
Daniel Grunwald
800b951c6d
Fixed bugs in ResolveVisitor:
...
- forgot scanning into ForEachStatement.InExpression when the variable type was not 'var'
- ProcessConversion() was called for Expression.Null
- made Resolve() internal because it hard to use correctly
TypeSystemAstBuilder: reverted Mike's change for nested types, it is incorrect for nested types within generic types.
14 years ago
Daniel Grunwald
8389d7add6
Use OperatorResolveResult for assignments.
14 years ago
Daniel Grunwald
9ddf9bc442
Combine C#-specific UnaryOperatorResolveResult/BinaryOperatorResolveResult and ConditionalOperatorResolveResult classes into a single language-independent OperatorResolveResult class.
14 years ago
Daniel Grunwald
4bbcf2dc11
Add "public ResolveResult Body { get; }" to LambdaResolveResult.
14 years ago
Daniel Grunwald
b7fcc55308
Re-enable resolver unit tests that failed due to the parser returning incorrect positions.
...
Fixed a bug that caused array initializers to fail to resolve when the parent variable initializer was not being resolved.
14 years ago
Daniel Grunwald
b059dbcf41
Fixed NullReferenceException when resolving group join clause.
14 years ago
Daniel Grunwald
a73d7ba8db
Added async/await support to the resolver.
14 years ago
Daniel Grunwald
7ff012f1a5
Fixed some issues in the CodeDomConvertVisitor.
14 years ago