Fix CPP key use and code bugs which prevent compilation unless a number of particular spurious CPP key intedependencies are met.