103 Commits
Author SHA1 Message Date
Siegfried Pammer 2c419f68cf Fix #3322: Add missing checks for equality comparison 2025-02-14 20:27:41 +01:00
Siegfried Pammer e6004e5f26 Handle ReferenceKind.RefReadOnly in a few more cases 2024-07-20 15:17:10 +02:00
Siegfried Pammer 4bf9487ecd Remove IsRef, IsOut and IsIn flags from IParameter and Replace ParameterModifiers with ReferenceKind. 2024-07-19 18:40:07 +02:00
Siegfried Pammer ee160b4e2a #3075: Improve performance of CSharpResolver.LookupSimpleNameOrTypeName in cases with a large number of local variables. 2023-10-14 23:11:52 +02:00
Siegfried Pammer 5a3c6e0872 Remove some unused variable management methods in CSharpResolver. 2023-10-14 23:11:52 +02:00
Daniel Grunwald 3c46271a11 Add support for unsigned right shift.
Only for user-defined operators so far; builtin right shifts still cast to the appropriate type.
2023-06-02 21:37:42 +02:00
Daniel Grunwald 3f09958922 Fix #2987: (nuint)(-3) is not a compile-time constant. 2023-05-29 21:50:26 +02:00
Siegfried Pammer bde782e4f5 Fix #2806: Do not use implicitly typed out variables, if argument and parameter types do not match exactly. 2022-10-27 19:16:05 +02:00
ElektroKill 1447038ce1 Fix #2736 2022-09-18 20:16:27 +02:00
Siegfried Pammer 583f661153 Work on #1204: Add optimized implementation of HasAttribute and GetAttribute to IEntity. 2022-08-24 12:05:09 +02:00
Siegfried Pammer 702a7da2c3 Fix #2714: Force inlining of call targets in ctor initializers. 2022-06-15 22:03:02 +02:00
Daniel Grunwald 9bbb944e97 Avoid crashing on invalid certain forms of invalid metadata (found in obfuscated assemblies) 2021-11-25 00:34:48 +01:00
Daniel Grunwald 9a053d5e6c nullable enable for CSharpOperators.cs 2021-09-18 22:48:50 +02:00
Daniel Grunwald 5fb2f7a22f #nullable enable for ILAst (except for generated code) 2021-06-03 21:36:12 +02:00
Daniel Grunwald bbaddf84cc Fix #2424: Suppress the string==null special-case within the string class itself. 2021-06-03 16:34:09 +02:00
Daniel Grunwald c95da67cbe Fix extension method calls on this in. 2021-02-13 18:24:49 +01:00
Daniel Grunwald 3c554b5e6c Fix overload resolution: overloads with in parameters are applicable even if the argument is passed without explicit in 2021-02-13 17:30:13 +01:00
Daniel Grunwald 514cf9b03b Fix #1944: Add support for implicit conversions with in parameters. 2021-02-13 15:23:10 +01:00
Daniel Grunwald 7ebfc5ded5 Fix #2294: Issues discovered by static analysis. 2021-02-13 14:31:39 +01:00
Daniel Grunwald 5bbd34a53b Function pointers are invocable. 2020-09-17 18:57:57 +02:00
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.
2020-09-12 15:44:48 +02:00
Daniel Grunwald b8796908f6 Fix some type inference issues with pointer types. 2020-09-06 18:59:07 +02:00
Daniel Grunwald d13a8bb64d Support ldftn in the context of a function pointer. 2020-09-06 18:59:07 +02:00
Daniel Grunwald 7f915ad035 Add OutVarResolveResult to overload resolution (not yet used by CallBuilder) 2020-09-02 21:39:28 +02:00
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 2020-08-28 01:05:38 +02:00
Siegfried Pammer a0d9410f67 Fix build. 2020-08-15 09:33:25 +02:00
Siegfried Pammer 3bc0bf3270 WIP 2020-08-15 09:06:40 +02:00
Siegfried Pammer eea4b7701c #2098: CallBuilder: Fix named argument handling in TI 2020-08-12 17:55:08 +02:00
Daniel Grunwald dc3dd193c8 Support unary operators on native integers. 2020-07-13 23:38:16 +02:00
Daniel Grunwald 3a4db502bc Add support for arithmetic using C# 9 native integer types. 2020-07-12 23:29:06 +02:00
Daniel Grunwald 450fae49e3 Introduce nint/nuint types and their conversions in the type system 2020-07-12 01:28:28 +02:00
Siegfried Pammer 8925b4ff7b Inline variable declarations/modernize parts of our code base. 2020-04-16 11:22:18 +02:00
Siegfried Pammer e211b01595 Fix CA1507:UseNameofInPlaceOfString, adjust formatting of some older source files copied from NRefactory. 2019-11-04 20:40:21 +01:00
Daniel Grunwald cb301bb0e2 Merge pull request #1730 from icsharpcode/async-streams
C# 8.0 Async streams
2019-11-04 18:39:20 +01:00
Siegfried Pammer 6e4db66b61 Fix CA1825:AvoidZeroLengthArrayAllocations, use Empty<T>.Array consistently. 2019-11-04 12:41:38 +01:00
Jane Doe d7fb32741b compilaton -> compilation 2019-10-13 07:52:53 -07:00
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.
2019-09-29 19:21:17 +02:00
Daniel Grunwald 5d337aa655 TypeInference: add support for nullability annotated types 2019-09-29 16:12:39 +02:00
Siegfried Pammer f0b186c50c use IdentityConversion instead of IType.Equals. 2019-09-29 15:40:52 +02:00
Siegfried Pammer 79b56543e3 Merge branch 'master' of https://github.com/icsharpcode/ILSpy into throwExpression 2019-07-27 23:08:12 +02:00
Siegfried Pammer 9c1bf7fbdf Introduce ReferenceKind in IParameter and ByReferenceResolveResult. 2019-07-25 23:23:44 +02:00
Siegfried Pammer 3c185f2845 Merge branch 'master' of https://github.com/icsharpcode/ILSpy into ref 2019-07-25 22:00:17 +02:00
Siegfried Pammer 860f9db950 Extend type inference to allow ref return types. 2019-07-25 19:51:12 +02:00
Daniel Grunwald 7223806967 Disable resolver log again. 2019-07-25 00:31:54 +02:00
Daniel Grunwald b75c252193 Upgrade C# 8.0 nullability support for Roslyn 3.2.0-beta4. 2019-07-24 23:10:33 +02:00
Siegfried Pammer dc74e4ee9d Fix build. 2019-07-18 23:22:52 +02:00
Siegfried Pammer 763ea38644 Clean up CallBuilder.HandleDelegateConstruction 2019-07-18 23:20:36 +02:00
Siegfried Pammer 8bfd17404b Merge branch 'master' of https://github.com/icsharpcode/ILSpy into local-functions 2019-07-18 21:50:23 +02:00
Siegfried Pammer 37e14f43e3 Refactor/Clean up local functions representation in type system. 2019-07-18 20:51:24 +02:00
Daniel Grunwald ccdabf2325 Fix a bunch of XmlDoc compiler warnings. 2019-07-17 19:15:43 +02:00