use c-string cache