I added the line RemoteElem::create();
in between the calls to Singleton::setup() and libmesh_assert(remote_elem); Now the code is crashing in libMesh::ReferenceCounter::increment_constructor_count(). It seems like there may be another static initialization that reference counter depends on. If so, then this could point towards a compiler issue. -Manav > On Mar 11, 2015, at 10:52 AM, Roy Stogner <royst...@ices.utexas.edu> wrote: > > > On Wed, 11 Mar 2015, Manav Bhatia wrote: > >> I have compared this with how the code executes on my Mac (which works fine). > >> So far, my understanding is that RemoteElemSetup needs to be called >> prior to getting into this setup routine. But for some reason it is >> not in this case. Would that be a compiler error? > > Did you make a global LibMeshInit variable? If so, then the solution > is "don't do that!" > > If not, then this actually *could* be a compiler error. There's a > RemoteElemSetup object, remote_elem_setup (verify that in the > debugger), and it's a global object, so it's constructor is supposed > to be called before main(). > >> Can this be forced in the code somehow? > > As a workaround you could call RemoteElem::create() manually before > that assertion. > --- > Roy ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Libmesh-users mailing list Libmesh-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-users