呼び出しの前後で、ptrの値が 同じかもしれない、場合よっては変わるかもしれない関数

ptr = func1(ptr, opt); と func2(&ptr, opt);

うーんどっちも使うな…