id summary reporter owner description type status priority milestone component version resolution keywords cc difficulty 709 Development process problem: the self-dependency loop in the compiler is too tight johnwcowan "Today I tried to recompile the current head after a `make confclean`, and found that my copy of `chicken` dating from 2011-09-21 (11 days old) was unable to compile it, because it did not understand the specialization type `input-port`. It's reasonable to add a new specialization type. It's not reasonable to change the source to depend on it at the same time. Now I'm stuck: until there is a new release tarball from which I can get an up-to-date `chicken`, I can't rebuild my system. I see several possibilities here. 1. Use a new branch for fast-changing but un-bypassable features like specialization. I am basically in favor of doing all development on trunk, but because Chicken builds depend so delicately on Chicken builds, some concessions may have to be made. 2. Have a switch to disable optimizations like this -- I tried setting `optimize-level` to 0 in `defaults.make`, but it didn't help. 3. As a matter of social engineering, make sure to bump the minimal version number every time a backward incompatibility like this happens, and issue a release tarball. At present the latest tarball is 4.7.2, so old as to be useless with trunk." defect closed major 4.9.0 compiler 4.7.x worksforme