------- Comment #2 from mark at codesourcery dot com 2007-05-30 21:08 ------- Subject: Re: uninitialized_fill compile failure if no default assignment operator
pcarlini at suse dot de wrote: > ------- Comment #1 from pcarlini at suse dot de 2007-05-30 21:00 ------- > Curious, this is actually a C++ front-end issue, a bug in my implementation of > __is_pod: currently it just forwards to pod_type_p, in cp/tree.c, and > apparently I was wrong to assume it exactly implements the Standard concept of > POD-ness: it returns true for std::pair, which is *not* a POD. The problem is > that std::pair isn't an aggregate type, thus cannot be a POD. I think I should > just also check CP_AGGREGATE_TYPE_P, in order to fix that. Mark, can you > confirm that? Thanks in advance. pop_type_p is indeed to exactly implement the standard definition of POD. If it's giving the wrong answer, then we need to fix it. There is code to set CLASSTYPE_NON_POD_P for non-aggregates. So, I'm not sure what's going wrong, but we need to track it down. Let me know if you need help. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32158