Special-case ctor to help g++