Merge C++ conversion into trunk (0/6 - Overview)

H.J. Lu hjl.tools@gmail.com
Sun Aug 12 22:34:00 GMT 2012


On Sun, Aug 12, 2012 at 1:04 PM, Diego Novillo <dnovillo@google.com> wrote:
> I will be sending 6 patches that implement all the changes we
> have been making on the cxx-conversion branch.  As described in
> http://gcc.gnu.org/ml/gcc/2012-08/msg00015.html, these patches
> change the default bootstrap process so that stage 1 always
> builds with a C++ compiler.
>
> Other than the bootstrap change, the patches make no functional
> changes to the compiler.  Everything should build as it does now
> in trunk.
>
> I have split the merge in 6 main patches.  I will send these
> patches to the respective maintainers and gcc-patches.
> Please remember that the patches conform to the new C++ coding
> guidelines (http://gcc.gnu.org/codingconventions.html#Cxx_Conventions):
>
> 1- Configuration changes.
> 2- Re-write of VEC.
> 3- Re-write of gengtype to support C++ templates and
>    user-provided marking functions.
> 4- New hash table class.
> 5- Re-write double_int.
> 6- Implement tree macros as inline functions so they can be
>    called from gdb.
>
> As discussed before, several of these patches do not fully change
> the call sites to use the new APIs.  We will do this change once
> the branch has been merged into trunk.  Otherwise, the branch
> becomes a maintenance nightmare (despite not having changed many
> caller sites we were already starting to run into maintenance
> problems).
>
> For those who would like to build the conversion, you can either
> checkout the branch from SVN
> (svn://gcc.gnu.org/gcc/branches/cxx-conversion) or get the merged
> trunk I have in the git repo (branch dnovillo/cxx-conversion).
>

dnovillo/cxx-conversion git branch failed to bootstrap on
Fedora 17 x86-64 when configured with

--enable-languages=c,c++,fortran,java,lto,objc,obj-c++,go

I got

/export/gnu/import/git/gcc-x32/gcc/objc/objc-act.c: In function
\u2018tree_node* objc_build_constructor(tree,
vec_t<constructor_elt_d>*)\u2019:
/export/gnu/import/git/gcc-x32/gcc/objc/objc-act.c:3212:44: error:
base operand of \u2018->\u2019 has non-pointer type
\u2018constructor_elt_d\u2019
   if (!VEC_index (constructor_elt, elts, 0)->index)


-- 
H.J.



More information about the Gcc-patches mailing list