This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Building with old gcc
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: paulkoning at comcast dot net
- Cc: "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Tue, 9 Oct 2018 14:33:20 +0100
- Subject: Re: Building with old gcc
- References: <AB389698-2994-4129-98DF-579EB259B89F@comcast.net>
On Tue, 9 Oct 2018 at 14:30, Paul Koning <paulkoning@comcast.net> wrote:
>
> I'm trying to build the current code on Linux with GCC 4.3.2 (stock compiler in Fedora 10 which is my old test system). It fails like this:
>
> In file included from /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/tree-data-ref.h:27,
> from /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/gimple-loop-interchange.cc:44:
> /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/opt-problem.h: In constructor ‘opt_result::opt_result(bool, opt_problem*)’:
> /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/opt-problem.h:217: error: class ‘opt_result’ does not have any field named ‘opt_wrapper’
> /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/opt-problem.h:217: error: no matching function for call to ‘opt_wrapper<bool>::opt_wrapper()’
> /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/opt-problem.h:160: note: candidates are: opt_wrapper<T>::opt_wrapper(T, opt_problem*) [with T = bool]
> /mnt/hgfs/pkoning/Documents/svn/gcc/gcc/opt-problem.h:147: note: opt_wrapper<bool>::opt_wrapper(const opt_wrapper<bool>&)
> make[3]: *** [gimple-loop-interchange.o] Error 1
>
> Is 9.0 supposed to build with a build compiler this old?
Yes.
GCC 4.3 doesn't define the injected-class-name for the base, so this
patch is needed:
--- a/gcc/opt-problem.h
+++ b/gcc/opt-problem.h
@@ -214,7 +214,7 @@ class opt_result : public opt_wrapper <bool>
/* Private ctor. Instances should be created by the success and failure
static member functions. */
opt_result (wrapped_t result, opt_problem *problem)
- : opt_wrapper (result, problem)
+ : opt_wrapper<bool> (result, problem)
{}
};