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

Reply via email to