gcc compiler problem