There are some internal caches which are used to boost performance. Unfortunately they are not only platform-dependent and very obtuse but they are also utilizing global objects which can lead to static initialization order issues depending on how simplecpp is being used (see danmar/cppcheck#6542).