This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [C++ PATCH] Fix PR7639




--On Wednesday, October 23, 2002 10:29:50 PM +0700 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> wrote:

Hi

The patch below fixes a main-trunk regression introduced in the
major build_component_ref overhaul.  In build_class_member_access_expr
we only check if the class is complete.  But we forget to check
that the member data we are accessing is also complete as well.
This might be a work-around for the problem, but I'm not happy with
the approach.

The basic problem is that the can_complete_without_circularity stuff
has made template classes different from ordinary classes; ordinary
classes never have data members with incomplete types.  The reason
we needed can_complete_without_circularity was basically that we
were mishandling tyenames and/or an implicit-typename (now deprecated)
problem.

I'd like to see if we can unravel the basic problem; if we can do
that then we can get back to the situation where template classes
and normal classes are treated in the same way, which would be
better.

--
Mark Mitchell                mark@codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]