add workaround for clang3.4 or later: base class construct