use portable c types