Can you try the attached patch? It should apply cleanly on r4840. It works for me, but I want to be sure that it fixes your issue as well - I'm not really familiar with ex23. If it works, I'll check that in.
Thanks, -- David Andrs David Knezevic <[email protected]> wrote on 09/07/2011 09:47:31 AM: > OK, great, thanks for clarifying. > > Dave > > > On 09/07/2011 11:42 AM, David Andrs wrote: > > Hi! > > I was able to replicate this on a linux platform (it works on my Mac). > > The problem here is, that we are writing an empty array and because > of that this line fails because it is accessing zeroth element of > that vector : > return xdr_vector(x, (char*) &a[0], length, sizeof(T), > xdr_translator<T>()); > > This seems to be catched by the safe guards of gcc 4.6.1. (which I > have on that linux machine), but not by 4.2.1 which is on my Mac. > > I'll make a patch to fix this problem. > > Thanks for reporting, > -- > David Andrs > > > David Knezevic <[email protected]> wrote on 09/06/2011 08:13:17 PM: > > > I updated to the svn head and I'm now getting an error in ex23 in debug > > mode. I traced it back to r4827: > > > > ------------------------------------------------------------------------ > > r4827 | andrsd | 2011-08-30 15:18:24 -0400 (Tue, 30 Aug 2011) | 1 line > > > > Storing subdomain ids in and XDA solution file > > ------------------------------------------------------------------------ > > > > The problem seems to arise in src/systems/rb_evaluation.C:986 (the stack > > trace is below), where I added an explicit call to write_header a while > > back. Any thoughts on the right fix here? > > > > Thanks, > > Dave > > > > > > > > > > Writing out the basis functions... > > /usr/include/c++/4.5/debug/vector:272:error: attempt to subscript container > > with out-of-bounds index 0, but container only holds 0 elements. > > > > Objects involved in the operation: > > sequence "this" @ 0x0x7fffffffd210 { > > type = NSt7__debug6vectorItSaItEEE; > > } > > > > Program received signal SIGABRT, Aborted. > > 0x00007ffff08cad05 in raise (sig=6) at > > ../nptl/sysdeps/unix/sysv/linux/raise.c:64 > > 64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory. > > in ../nptl/sysdeps/unix/sysv/linux/raise.c > > (gdb) bt > > #0 0x00007ffff08cad05 in raise (sig=6) at > > ../nptl/sysdeps/unix/sysv/linux/raise.c:64 > > #1 0x00007ffff08ceab6 in abort () at abort.c:92 > > #2 0x00007ffff0c8ec64 in __gnu_debug::_Error_formatter::_M_error() > > const () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 > > #3 0x00007ffff72be6d4 in std::__debug::vector<unsigned short, > > std::allocator<unsigned short> >::operator[] ( > > this=0x7fffffffd210, __n=0) at /usr/include/c++/4.5/debug/vector:272 > > #4 0x00007ffff7782ab2 in libMesh::(anonymous > > namespace)::xdr_translate<unsigned short> (x=0xb57050, a=...) > > at src/utils/xdr_cxx.C:469 > > #5 0x00007ffff778aa02 in > > libMesh::Xdr::data<std::__debug::vector<unsigned short> > > > (this=0x7fffffffd6b0, a=..., > > comment=0xc940d8 "# Subdomains, Variable \"u\", System > > \"RBConvectionDiffusion\"") at src/utils/xdr_cxx.C:612 > > #6 0x00007ffff76d8cc6 in libMesh::System::write_header (this=0x7e7a70, > > io=..., write_additional_data=false) > > at src/systems/system_io.C:1063 > > #7 0x00007ffff7675418 in > > libMesh::RBEvaluation::write_out_basis_functions (this=0x7fffffffd880, > > sys=..., directory_name=..., > > write_binary_basis_functions=true) at src/systems/rb_evaluation.C:986 > > #8 0x000000000044a92f in main (argc=1, argv=0x7fffffffe658) at ex23.C:174 > > > > > > > ------------------------------------------------------------------------------ > > Using storage to extend the benefits of virtualization and iSCSI > > Virtualization increases hardware utilization and delivers a new level of > > agility. Learn what those decisions are and how to modernize your storage > > and backup environments for virtualization. > > http://www.accelacomm.com/jaw/sfnl/114/51434361/ > > _______________________________________________ > > Libmesh-devel mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/libmesh-devel > > > ------------------------------------------------------------------------------ > Using storage to extend the benefits of virtualization and iSCSI > Virtualization increases hardware utilization and delivers a new level of > agility. Learn what those decisions are and how to modernize your storage > and backup environments for virtualization. > http://www.accelacomm.com/jaw/sfnl/114/51434361/ > > > _______________________________________________ > Libmesh-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/libmesh-devel > ------------------------------------------------------------------------------ > Using storage to extend the benefits of virtualization and iSCSI > Virtualization increases hardware utilization and delivers a new level of > agility. Learn what those decisions are and how to modernize your storage > and backup environments for virtualization. > http://www.accelacomm.com/jaw/sfnl/114/51434361/ > _______________________________________________ > Libmesh-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/libmesh-devel
0001-Fixing-bug-in-writing-zero-length-vectors-in-XDA.patch
Description: Binary data
------------------------------------------------------------------------------ Using storage to extend the benefits of virtualization and iSCSI Virtualization increases hardware utilization and delivers a new level of agility. Learn what those decisions are and how to modernize your storage and backup environments for virtualization. http://www.accelacomm.com/jaw/sfnl/114/51434361/
_______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
