ExternalClock() clock is never initialized! auxDets in the arguments and instead relies on a cache that is never filled by this class (derived classes can fill it though). geo::InvalidWireError exception is thrown geo::InvalidWireError exception is thrown geo::InvalidWireError is thrown Template types taking only type arguments can be used. For example, attempting to use it with std::array, which contains a non-type argument (of type std::size_t), will cause a compilation error. For example, GCC 7.2 reports:
1.8.5