fix for cpp constructor initialization list, and preprocess problem