Skip to content

February 2025 Update 1 (Version 2.18)#329

Merged
adrianoc merged 9 commits intomainfrom
staging
Feb 5, 2025
Merged

February 2025 Update 1 (Version 2.18)#329
adrianoc merged 9 commits intomainfrom
staging

Conversation

@adrianoc
Copy link
Copy Markdown
Owner

@adrianoc adrianoc commented Feb 5, 2025

01f9120 forwarded attribute reference with cycles (#311)
326683f set module architecture (either arm64 or amd64) after the runtime architecture
d072d0e added more generic attribute tests (#311)
fae791c fixes order of generated code when attributes were applied with its short syntax
ec7a009 adds support for null coalescing operator (only ??, not ??=) (#253)
1fd4e2b fixes stack underflow on local functions calls (#322)
eb3f37e Revert "fixes local functions always being handled as static (#271)"
dd4b9f5 bump cecilifier to 2.18.0

…hort syntax

for example, given the following code:

[A] class B {}
class AAttribute : System.Attribute {}

the order of processing would be as B, AAttribute instead of AAttribute, B
…hitecture

Trying to run the assembly produced by the cecilified code on an arm64 fails with
an error complaining about platform incompatibility.
Code around registering variables was very fragile; sometimes it used a open generic type's name (i.t, List<> when registering
a variable for List<int>, some times the closed type name (i.e List<int> when processing List<int>), sometimes only the type simple name, etc...

This commit also normalizes both the 'name' and 'parent name' to only use respecitively 'ITypeSymbol.OriginalDefinition.ToDisplayString()'
and 'ITypeSymbol.ContainingSymbol.ToDisplayString()' and deviating from this only in cases that requires so.

Ideally we should investigate and document such deviations.
@adrianoc adrianoc merged commit 08fd73f into main Feb 5, 2025
@adrianoc adrianoc deleted the staging branch February 5, 2025 02:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant