Generator hintName collision#1545
Open
czirok wants to merge 1 commit into
Open
Conversation
badcel
reviewed
Jul 2, 2026
Member
There was a problem hiding this comment.
The code itself looks perfectly fine for me.
Unfortunately the tests seem not to work like intended. I'm fine with having a "stupid" test like mentioned in the comments to detect if "something" is broken. I this happens to often we can still think about moving tests for namespace verification in actual unit tests.
4be0851 to
fe4e292
Compare
Contributor
Author
|
I reworked the test so it verifies the actual generator output. It now creates two subclasses with the same class name in different namespaces, runs the generator, checks that no |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Include the namespace in generated source filenames to avoid hintName collisions when different namespaces contain types with the same short name.
The filename generation in TypeDataHelper is now namespace-aware while keeping nested type names and generic parameter counts as part of the generated name.
This prevents AddSource collisions in source generators that use TypeData.Filename, including the GObject subclass generator and the GTK template generator.
Tests were added for both GObject and GTK integration paths with identical Widget type names declared in different namespaces, verifying that source generation no longer fails with CS8785.