struct funptr uses *ptr