add child class and compile parameter which support c99