Daniel Grunwald
ee5d87a0f8
Add year to license headers.
13 years ago
Daniel Grunwald
3797b12fa7
Fix several bugs with anonymous types:
...
- DeclaringType, IsAccessor and AccessorOwner properties of anonymous type accessors (#148 )
- equality comparison of anonymous type accessors
- roundtrip of anonymous type properties via IMemberReference
- roundtrip of anonymous type accessors via IMemberReference
13 years ago
Erik Källén
0e76cae70d
Fixed stupid thing in the "no conversion in void lambda" test.
13 years ago
Erik Källén
2978af440e
No conversions in body for void lambdas
13 years ago
Erik Källén
4380297cce
Add a ConversionResolveResult to lambda body expressions, if required
13 years ago
Mike Krüger
916654c166
Fixed async lambda resolve bug.
...
Would be nice to have a newer c# language spec ...
13 years ago
Daniel Grunwald
4324311718
Use IMember.Specialize() instead of 'new SpecializedMember()', and remove unnecessary upcasts.
13 years ago
Mike Krüger
4267ccc4f2
Readded resolver test for bug 10201.
...
The bug wasn't valid but we didn't check this case.
13 years ago
Mike Krüger
8ca2d99ebc
Revert "Fixed type parameter substitution bug."
...
The old behaviour was correct.
This reverts commit c43a501ec4
.
13 years ago
Mike Krüger
c43a501ec4
Fixed type parameter substitution bug.
13 years ago
Mike Krüger
0eecec2cce
Adjusted unit tests to the new invocation resolve result.
13 years ago
Mike Krüger
8bd796eb7f
Revert "Revert "Implemented reduced method model.""
...
This reverts commit bdc1fde9d6
.
13 years ago
Mike Krüger
765d917d60
Revert "Revert "Implemented better way to handle extension method invocations.""
...
This reverts commit c26f61e813
.
13 years ago
Mike Krüger
c26f61e813
Revert "Implemented better way to handle extension method invocations."
...
This reverts commit d4afc75413
.
13 years ago
Mike Krüger
bdc1fde9d6
Revert "Implemented reduced method model."
...
This reverts commit aaf2b919f5
.
13 years ago
Mike Krüger
aaf2b919f5
Implemented reduced method model.
13 years ago
Mike Krüger
d4afc75413
Implemented better way to handle extension method invocations.
13 years ago
Mike Krüger
52350b3cb0
Fixed resolve at location failure.
...
Was caused by an invalid token location.
13 years ago
Erik Källén
4c1dbb9adc
Added information about built-in conversions before and after a user-defined conversion operator is applied
13 years ago
Erik Källén
867dc8b407
Improved handling of sizeof(x)
...
Resolving sizeof(x) will now return a specialized ResolveResult that contains information about which type's size is investigated. Also fixed a bug that caused sizeof() to not work when initializing fields. Also made sizeof(SomeEnum) resolve to the size of the underlying type which is illegal according to the spec, but mcs allows it.
13 years ago
Daniel Grunwald
b3c2b0ce9d
ResolveAtLocation: when resolving a method name within a delegate creation, produce MemberResolveResult instead of MethodGroupResolveResult.
13 years ago
Mike Krüger
11aa873815
Added alias resolve results that allows it to handle aliases more
...
easily. (for example showing them in the text editor UI or tooltips)
13 years ago
Mike Krüger
e00a9b8696
Fixed member lookup bug.
13 years ago
Daniel Grunwald
ba484d5a93
[OverloadResolution] Don't use specialized parameters of indexers or non-generic methods within generic methods for "more specific formal parameter" check; always use the original parameters like we do with generic methods.
13 years ago
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