﻿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			
