1. Add the attached java class to a test project with the plaid annotations
library included.
2. Run crystal on the file.
3. The progress bar never completes - on the machine I have, one core sits
at 100% indefinitely (or, at least, for as long as I could be bothered
watching).
I'm not sure whether "alive" is a reserved name for a state, one that
should not be redefined. I'm playing with plural just now, attempting to
understand the semantics of the system through trial and error as there are
not many examples I could find of how to use it. So, if "alive" is a
reserved state name that should not be touched, I would expect crystal to
generate an error. If it is legal to use or modify the "alive" state in
this way, there is perhaps something more subtle happening here.
The infinite loop only occurs when the explicitly defined constructor
exists - remove it, and the problem disappears also.
Versions in use:
Crystal 3.4.3 edu.cmu.cs.crystal.feature.feature.group
Fiddle Feature 1.0.1 edu.cmu.cs.fiddle.feature.feature.group
PlaidAnnotations 1.0.6 PlaidAnnotations.feature.group
Plural 1.1.5 edu.cmu.cs.plural.feature.feature.group
OS: Windows 7 x64
Java version: 1.6.0_16