Skip to content

Commit 920122c

Browse files
Correct which types receive CompilerGeneratedAttribute (#18166)
1 parent 68009f8 commit 920122c

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs

+4-1
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,7 @@ TypeDefinition AddClass(string name, TypeAttributes extraAttributes = 0)
265265
};
266266
loaderDispatcherDef.Methods.Add(loaderDispatcherMethod);
267267
loaderDispatcherDef.Methods.Add(loaderDispatcherMethodOld);
268+
typeSystem.AddCompilerGeneratedAttribute(loaderDispatcherDef);
268269

269270

270271
var stringEquals = asm.MainModule.ImportReference(asm.MainModule.TypeSystem.String.Resolve().Methods.First(
@@ -371,7 +372,7 @@ bool CompileGroup(IResourceGroup group)
371372

372373
var populateBuilder = classTypeDefinition == null ?
373374
builder :
374-
typeSystem.CreateTypeBuilder(classTypeDefinition);
375+
typeSystem.CreateTypeBuilder(classTypeDefinition, compilerGeneratedType: false); // don't add CompilerGeneratedAttribute to the user's type
375376

376377
((List<XamlDocumentResource>)parsedXamlDocuments).Add(new XamlDocumentResource(
377378
parsed, res.Uri, res, classType,
@@ -474,6 +475,7 @@ bool CompileGroup(IResourceGroup group)
474475
var designLoaderField = new FieldDefinition("!XamlIlPopulateOverride",
475476
FieldAttributes.Static | FieldAttributes.Private, designLoaderFieldTypeReference);
476477
classTypeDefinition.Fields.Add(designLoaderField);
478+
typeSystem.AddCompilerGeneratedAttribute(designLoaderField);
477479

478480
const string TrampolineName = "!XamlIlPopulateTrampoline";
479481
var trampolineMethodWithoutSP = new Lazy<MethodDefinition>(() => CreateTrampolineMethod(false));
@@ -489,6 +491,7 @@ MethodDefinition CreateTrampolineMethod(bool hasSystemProviderArg)
489491
trampoline.Parameters.Add(new ParameterDefinition(classTypeDefinition));
490492

491493
classTypeDefinition.Methods.Add(trampoline);
494+
typeSystem.AddCompilerGeneratedAttribute(trampoline);
492495

493496
var regularStart = Instruction.Create(OpCodes.Nop);
494497

0 commit comments

Comments
 (0)