[Bug libstdc++/29286] [4.0/4.1/4.2/4.3 Regression] placement new does not change the dynamic type as it should
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Sun May 13 10:04:00 GMT 2007
------- Comment #57 from rguenth at gcc dot gnu dot org 2007-05-13 11:04 -------
It's become a libstdc++ test, but anyway: -O -fstrict-aliasing
namespace Pooma {
typedef int Context_t;
namespace Arch {
}
inline Context_t context() {
}
inline int contexts() {
}
}
template<class DomT, class T, class NewDom1T> struct DomainTraitsScalar {
};
template<class T> struct DomainTraits : public DomainTraitsScalar<T, T, T> {
};
template<int Dim> class Grid;
template<class DT> class DomainBase {
};
template<int Dim, class DT> class Domain : public DomainBase<DT> {
};
#include <vector>
template<> class Grid<1> : public Domain<1, DomainTraits<Grid<1> > > {
};
namespace Pooma {
class PatchSizeSyncer {
typedef Grid<1> Grid_t;
PatchSizeSyncer(int contextKey, Grid_t &localGrid);
int myContext_m;
int numContexts_m;
int localKey_m;
Grid_t localGrid_m;
typedef std::pair<int,Grid_t *> Elem_t;
std::vector<Elem_t> gridList_m;
};
}
namespace Pooma {
PatchSizeSyncer::PatchSizeSyncer(int contextKey, Grid_t &localGrid) :
myContext_m(Pooma::context()), numContexts_m(Pooma::contexts()),
localKey_m(contextKey), localGrid_m(localGrid) {
if (myContext_m == 0) gridList_m.reserve(numContexts_m);
}
}
/space/rguenther/tramp3d/install/lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_uninitialized.h:
In function '_ForwardIterator std::__uninitialized_copy_aux(_InputIterator,
_InputIterator, _ForwardIterator) [with _InputIterator = std::pair<int,
Grid<1>*>*, _ForwardIterator = std::pair<int, Grid<1>*>*]':
/space/rguenther/tramp3d/install/lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_uninitialized.h:71:
error: SSA name in freelist but still referenced
D.8564_13
/space/rguenther/tramp3d/install/lib/gcc/x86_64-unknown-linux-gnu/4.3.0/../../../../include/c++/4.3.0/bits/stl_uninitialized.h:71:
internal compiler error: verify_stmts failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29286
More information about the Gcc-bugs
mailing list