Erik Källén
a069866ae9
Return ambiguous conversions when no most specific source and/or destination could be found.
13 years ago
Erik Källén
f186d27cc9
Return a CSharpInvocationResolveResult with the type overridden with Dynamic instead of a converted invocation
13 years ago
Erik Källén
32561557df
Look at implicit and explicit user-defined conversion operators at the same time when performing an explicit conversion
13 years ago
Daniel Grunwald
e29ca30daf
More implicit conversion unit tests.
13 years ago
Daniel Grunwald
d175871ede
Add another explicit conversion test.
13 years ago
Daniel Grunwald
c1b2b13b5d
Ambiguous conversions don't cause overload resolution to pick a different overload.
13 years ago
Erik Källén
a1337bc954
A new user-defined operator try
13 years ago
Daniel Grunwald
902f00ee7a
Add support for user-defined conversions starting with a constant expression conversion.
13 years ago
Daniel Grunwald
7eeb0348fb
Attempt that makes all the implicit conversions work
...
However, it introduces a problem with one of the explicit conversion test cases.
13 years ago
Daniel Grunwald
056a45df44
Fix a bug with type inference for nullables.
...
Simplify away the unnecessary portion of Mike's fix in df57e1d
, and add an additional test for it.
13 years ago
Mike Krüger
df57e1dad2
Fixed bug in type inference.
13 years ago
Daniel Grunwald
46881e6ea2
Un-ignore some tests that were fixed
13 years ago
Erik Källén
7b1530e814
When invoking a method with dynamic arguments (and there is only one applicable method), convert the result of the call to 'dynamic' ( http://blogs.msdn.com/b/ericlippert/archive/2012/10/22/a-method-group-of-one.aspx )
13 years ago
Erik Källén
e8131dca28
Implemented selection of best user-defined conversion operator according to §6.4.4 and §6.4.5
13 years ago
Erik Källén
06703663f0
Fixed await with generic awaiter types.
13 years ago
erikkallen
c615c9f730
Make 'await' resolve as in the C# 5.0 language specification.
...
This means that the awaiter type must implement INotifyCompletion and can optionally implement ICriticalNotifyCompletion.
13 years ago
Daniel Grunwald
d4df4d9790
Fixed using implicit user-defined conversions as part of explicit conversions.
13 years ago
Daniel Grunwald
8f459c2460
Ensure IVariable.ConstantValue has the correct type when a local constant declaration involves an implicit conversion
...
E.g. "const int MAXSIZE = ushort.MaxValue;"
13 years ago
Daniel Grunwald
27978f44c7
Add 'allowOptionalParameters' flag to MGRR.PerformOverloadResolution.
13 years ago
Daniel Grunwald
5e01d285d0
Fix InvalidCastException on invalid compile-time constant casts.
13 years ago
Daniel Grunwald
59cc439a30
Added delegate compatibility check to method-group conversions.
13 years ago
Erik Källén
8d5536e2f6
Handle await expressions in find references.
13 years ago
Erik Källén
66f51bff3a
Added a separate AwaitResolveResult
13 years ago
Mike Krüger
aebedfea27
Added test that exposes a problem with empty namespaces.
13 years ago
Daniel Grunwald
80ba1b3dba
Always set ArrayCreateResolveResult.SizeArguments. Closes #111 .
13 years ago
Daniel Grunwald
875ee8d079
Add test: implicit long constant expression conversion to short
13 years ago
Daniel Grunwald
47aa23e828
Add unit tests that check that a class hiding a field depends on the generics.
13 years ago
Daniel Grunwald
5670248de8
Add 'FullTypeName' struct, and use it to represent type names.
...
Contains some breaking API changes:
- Renamed 'FullNameAndTypeParameterCount' to 'TopLevelTypeName'.
- IAssembly.GetTypeDefinition(string, string, int) -> IAssembly.GetTypeDefinition(TopLevelTypeName)
- IAssembly.GetTypeDefinition(IUnresolvedTypeDefinition) -> IAssembly.GetTypeDefinition(FullTypeName)
- GetClassTypeReference now supports nested types
13 years ago
Daniel Grunwald
31474555b2
Avoid looking for inner classes when resolving a class constraint.
13 years ago
Mike Krüger
3dbba420eb
[Resolver] Fixed infinite loop issue when a type inherits from type
...
parameter.
13 years ago
Daniel Grunwald
c403f389b7
Move the fix for #94 into CSharpConversions.IsConstraintConvertible.
...
Also added a couple of additional unit tests for constraint validation.
13 years ago
erikkallen
a00495c22b
Test that demonstrates that a generic method cannot be invoked with a nullable type argument.
13 years ago
erikkallen
d857a8ba8d
Test demonstrating issue with duplicate using directive.
13 years ago
Daniel Grunwald
c3a31c9c81
Fix #92 : The resolver does not check type constraints on calls to generic methods
13 years ago
Daniel Grunwald
16aa0c6c28
Rename IParsedFile -> IUnresolvedFile to make clear it belongs to the unresolved type system.
13 years ago
Daniel Grunwald
9a9485a49d
Add ProjectReference class to NRefactory to simplify creating the type system for a solution with multiple projects.
13 years ago
Daniel Grunwald
62a8b20208
Fix icsharpcode/NRefactory#89 : explicit conversion of array to generic IList fails when array covariance is used.
13 years ago
Daniel Grunwald
087aee7fe8
Simplify parser API.
13 years ago
Daniel Grunwald
26409db2bb
Implemented explicit conversions - invalid casts now resolve to Conversion.None.
13 years ago
Daniel Grunwald
eaba9798d3
Rename 'cu' to 'syntaxTree'.
13 years ago
Daniel Grunwald
979fa91a2e
Fix icsharpcode/NRefactory#88 : implicit conversion between type parameters.
...
Convert from T to U where T : class, U. Only T is known to be a reference type; U is not.
C# still classifies the conversion as a reference conversion.
13 years ago
Daniel Grunwald
273178a141
Rename CompilationUnit to SyntaxTree.
13 years ago
Erik Källén
0af0137bdb
Use NamedArgumentResolveResult for dynamic invocations.
13 years ago
Daniel Grunwald
cc37a7179d
TypeSystemAstBuilder: do not specify accessibility on accessors unless necessary.
...
Ported some SD4 unit tests to NR5.
13 years ago
Daniel Grunwald
d6b4420940
Introduced NamedArgumentResolveResult.
13 years ago
Daniel Grunwald
60607bcc65
Fix icsharpcode/NRefactory#86 : method declaration with attributes fails to resolve since 2926e24
.
13 years ago
Erik Källén
ecd3de7ece
Implementation of feature
13 years ago
Erik Källén
ce5a42c4ee
Tests for the improved dynamic handling.
13 years ago
Daniel Grunwald
ea5e36c836
Fix icsharpcode/NRefactory#60 : Implicit type parameter conversion
13 years ago
Daniel Grunwald
93e2def893
Fix #75 : conversion between delegate types
13 years ago