Siegfried Pammer
bde782e4f5
Fix #2806 : Do not use implicitly typed out variables, if argument and parameter types do not match exactly.
3 years ago
ElektroKill
1447038ce1
Fix #2736
3 years ago
Siegfried Pammer
583f661153
Work on #1204 : Add optimized implementation of HasAttribute and GetAttribute to IEntity.
3 years ago
Siegfried Pammer
702a7da2c3
Fix #2714 : Force inlining of call targets in ctor initializers.
3 years ago
Daniel Grunwald
9bbb944e97
Avoid crashing on invalid certain forms of invalid metadata (found in obfuscated assemblies)
4 years ago
Daniel Grunwald
9a053d5e6c
nullable enable for CSharpOperators.cs
4 years ago
Daniel Grunwald
5fb2f7a22f
#nullable enable for ILAst (except for generated code)
4 years ago
Daniel Grunwald
bbaddf84cc
Fix #2424 : Suppress the string==null special-case within the string class itself.
4 years ago
Daniel Grunwald
c95da67cbe
Fix extension method calls on `this in`.
5 years ago
Daniel Grunwald
3c554b5e6c
Fix overload resolution: overloads with `in` parameters are applicable even if the argument is passed without explicit `in`
5 years ago
Daniel Grunwald
514cf9b03b
Fix #1944 : Add support for implicit conversions with `in` parameters.
5 years ago
Daniel Grunwald
7ebfc5ded5
Fix #2294 : Issues discovered by static analysis.
5 years ago
Daniel Grunwald
5bbd34a53b
Function pointers are invocable.
5 years ago
Daniel Grunwald
a26a25d689
Fix #2158 : Remove PointerType support from CSharpResolver for additions/subtractions.
These have special semantics (number of elements in C# vs. number of bytes in IL), and so pointer arithmetic must go through the special HandlePointerArithmetic() code path --> the normal logic in HandleBinaryNumeric must not ever emit pointer arithmetic.
5 years ago
Daniel Grunwald
b8796908f6
Fix some type inference issues with pointer types.
5 years ago
Daniel Grunwald
d13a8bb64d
Support `ldftn` in the context of a function pointer.
5 years ago
Daniel Grunwald
7f915ad035
Add `OutVarResolveResult` to overload resolution (not yet used by CallBuilder)
5 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
5 years ago
Siegfried Pammer
a0d9410f67
Fix build.
5 years ago
Siegfried Pammer
3bc0bf3270
WIP
5 years ago
Siegfried Pammer
eea4b7701c
#2098 : CallBuilder: Fix named argument handling in TI
5 years ago
Daniel Grunwald
dc3dd193c8
Support unary operators on native integers.
5 years ago
Daniel Grunwald
3a4db502bc
Add support for arithmetic using C# 9 native integer types.
5 years ago
Daniel Grunwald
450fae49e3
Introduce nint/nuint types and their conversions in the type system
5 years ago
Siegfried Pammer
8925b4ff7b
Inline variable declarations/modernize parts of our code base.
5 years ago
Siegfried Pammer
e211b01595
Fix CA1507:UseNameofInPlaceOfString, adjust formatting of some older source files copied from NRefactory.
6 years ago
Siegfried Pammer
6e4db66b61
Fix CA1825:AvoidZeroLengthArrayAllocations, use Empty<T>.Array consistently.
6 years ago
Jane Doe
d7fb32741b
compilaton -> compilation
6 years ago
Daniel Grunwald
080f63e660
Fix LambdaResolveResult.IsValid() being too restrictive.
This could cause our overload resolution to consider an overload as not-applicable when it actually is applicable. This could cause us to miss some cases where we need to insert casts.
6 years ago
Daniel Grunwald
5d337aa655
TypeInference: add support for nullability annotated types
6 years ago
Siegfried Pammer
f0b186c50c
use IdentityConversion instead of IType.Equals.
6 years ago
Siegfried Pammer
9c1bf7fbdf
Introduce ReferenceKind in IParameter and ByReferenceResolveResult.
6 years ago
Siegfried Pammer
860f9db950
Extend type inference to allow ref return types.
6 years ago
Daniel Grunwald
7223806967
Disable resolver log again.
6 years ago
Daniel Grunwald
b75c252193
Upgrade C# 8.0 nullability support for Roslyn 3.2.0-beta4.
6 years ago
Siegfried Pammer
dc74e4ee9d
Fix build.
6 years ago
Siegfried Pammer
763ea38644
Clean up CallBuilder.HandleDelegateConstruction
6 years ago
Siegfried Pammer
37e14f43e3
Refactor/Clean up local functions representation in type system.
6 years ago
Daniel Grunwald
ccdabf2325
Fix a bunch of XmlDoc compiler warnings.
6 years ago
Siegfried Pammer
8d1522f387
Transform display classes used in local functions.
6 years ago
Siegfried Pammer
ceefac6ddc
Fix #1490 : NRE in MemberLookup.AddMembers
6 years ago
Daniel Grunwald
8d99af14c5
Add support for 'ref readonly' return type.
6 years ago
Daniel Grunwald
a5505ab00d
Expose IMethod.AccessorKind. This makes it easier to determine if a method is a setter, particular in generic classes where "m.AccessorOwner?.Setter == m" ended up being wrong.
6 years ago
Daniel Grunwald
72d755037b
Fix #1283 : handle invalid metadata when decoding constants
7 years ago
Daniel Grunwald
35a0ee2263
Fix #1309 : Decompilation of dynamic casts.
7 years ago
Siegfried Pammer
0fc5c8b988
Add support for FormattableString patterns.
7 years ago
Daniel Grunwald
9479e8af13
Support overloaded operator &&/||.
7 years ago
Daniel Grunwald
3b46776c5e
Rename IAssembly -> IModule.
While support for multi-module assemblies isn't fully working yet; it is clear at this point that we want
to treat each module in a multi-module assembly separately for the purposes of the type system.
7 years ago
Siegfried Pammer
e3dd2f6d86
LookupIndexers should ignore explicit interface implementations.
7 years ago
Daniel Grunwald
4ec0028356
Don't cache attributes in the type system.
7 years ago