Skip to content

Conversation

wlsnmrk
Copy link
Contributor

@wlsnmrk wlsnmrk commented Sep 3, 2025

Currently, if an intermediate type is declared in the LogicBlock inheritance hierarchy (e.g., for reusable behaviors), the analyzer will warn about a missing [LogicBlock] attribute even when the state is still generic:

Screenshot 2025-09-03 122408

However, adding the [LogicBlock] attribute to this type is not feasible, as the state type is generic:

Screenshot 2025-09-03 122440

With this change, when the user declares a LogicBlock with a generic state, the analyzer no longer warns about a missing [LogicBlock] attribute:

Screenshot 2025-09-03 122252

The analyzer does still warn if the generic type does not appear to be a state (i.e., is not a member of the type argument list to the base logic block type):

Screenshot 2025-09-03 122320

When the user declares a LogicBlock with a generic state (e.g., as an
abstract intermediate type in an inheritance hierarchy), the analyzer
no longer warns about a missing [LogicBlock] attribute, as the attribute
cannot be applied to a generic type.
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