No need to have a gcc with gcc-core...
With gcc 7.5.0 I get:
-o build/gengtype.o ../../gpc3/gcc-7.5.0/gcc/gengtype.c
g++ -std=gnu++98 -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -Wno-error -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -I. -Ibuild -I../../gpc3/gcc-7.5.0/gcc -I../../gpc3/gcc-7.5.0/gcc/build -I../../gpc3/gcc-7.5.0/gcc/../include -I../../gpc3/gcc-7.5.0/gcc/../libcpp/include \
-o build/gengtype-lex.o ../../gpc3/gcc-7.5.0/gcc/gengtype-lex.c
gengtype-lex.c: In function ‘int yy_get_next_buffer()’:
gengtype-lex.c:1343:18: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
gengtype-lex.c:2150:3: note: in expansion of macro ‘YY_INPUT’
gengtype-lex.c: In function ‘yy_buffer_state* yy_scan_bytes(const char*, yy_size_t)’:
gengtype-lex.c:2658:17: warning: comparison of integer expressions of different signedness: ‘int’ and ‘yy_size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
/space/rguenther/gcc-7.5.0/gcc-7.5.0/gcc/gengtype-lex.l: In function ‘int yylex(const char**)’:
gengtype-lex.c:365:15: warning: this statement may fall through [-Wimplicit-fallthrough=]
/space/rguenther/gcc-7.5.0/gcc-7.5.0/gcc/gengtype-lex.l:117:1: note: in expansion of macro ‘YY_DO_BEFORE_ACTION’
/space/rguenther/gcc-7.5.0/gcc-7.5.0/gcc/gengtype-lex.l:113:1: note: here
gengtype-lex.c:365:15: warning: this statement may fall through [-Wimplicit-fallthrough=]
/space/rguenther/gcc-7.5.0/gcc-7.5.0/gcc/gengtype-lex.l:134:1: note: in expansion of macro ‘YY_DO_BEFORE_ACTION’
/space/rguenther/gcc-7.5.0/gcc-7.5.0/gcc/gengtype-lex.l:131:1: note: here
g++ -std=gnu++98 -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -I. -Ibuild -I../../gpc3/gcc-7.5.0/gcc -I../../gpc3/gcc-7.5.0/gcc/build -I../../gpc3/gcc-7.5.0/gcc/../include -I../../gpc3/gcc-7.5.0/gcc/../libcpp/include \
-o build/gengtype-parse.o ../../gpc3/gcc-7.5.0/gcc/gengtype-parse.c
g++ -std=gnu++98 -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -I. -Ibuild -I../../gpc3/gcc-7.5.0/gcc -I../../gpc3/gcc-7.5.0/gcc/build -I../../gpc3/gcc-7.5.0/gcc/../include -I../../gpc3/gcc-7.5.0/gcc/../libcpp/include \
-o build/gengtype-state.o ../../gpc3/gcc-7.5.0/gcc/gengtype-state.c
g++ -std=gnu++98 -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -I. -Ibuild -I../../gpc3/gcc-7.5.0/gcc -I../../gpc3/gcc-7.5.0/gcc/build -I../../gpc3/gcc-7.5.0/gcc/../include -I../../gpc3/gcc-7.5.0/gcc/../libcpp/include \
-DBASEVER=""7.5.0"" -DDATESTAMP="""" \
-DREVISION="""" \
-DDEVPHASE="""" -DPKGVERSION=""(GCC) "" \
-DBUGURL=""https://gcc.gnu.org/bugs/"" -o build/version.o ../../gpc3/gcc-7.5.0/gcc/version.c
g++ -std=gnu++98 -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -DGENERATOR_FILE -fno-PIE -static-libstdc++ -static-libgcc -no-pie -o build/gengtype \
build/gengtype.o build/errors.o build/gengtype-lex.o build/gengtype-parse.o build/gengtype-state.o build/version.o ../build-x86_64-pc-linux-gnu/libiberty/libiberty.a
LC_ALL=C ; export LC_ALL ; \
gawk -f ../../gpc3/gcc-7.5.0/gcc/opt-gather.awk ../../gpc3/gcc-7.5.0/gcc/ada/gcc-interface/lang.opt ../../gpc3/gcc-7.5.0/gcc/brig/lang.opt ../../gpc3/gcc-7.5.0/gcc/fortran/lang.opt ../../gpc3/gcc-7.5.0/gcc/go/lang.opt ../../gpc3/gcc-7.5.0/gcc/lto/lang.opt ../../gpc3/gcc-7.5.0/gcc/p/lang.opt ../../gpc3/gcc-7.5.0/gcc/c-family/c.opt ../../gpc3/gcc-7.5.0/gcc/common.opt ../../gpc3/gcc-7.5.0/gcc/config/fused-madd.opt ../../gpc3/gcc-7.5.0/gcc/config/i386/i386.opt ../../gpc3/gcc-7.5.0/gcc/config/gnu-user.opt ../../gpc3/gcc-7.5.0/gcc/config/linux.opt ../../gpc3/gcc-7.5.0/gcc/config/linux-android.opt > tmp-optionlist
/bin/bash ../../gpc3/gcc-7.5.0/gcc/../move-if-change tmp-optionlist optionlist
echo timestamp > s-options
gawk -f ../../gpc3/gcc-7.5.0/gcc/opt-functions.awk -f ../../gpc3/gcc-7.5.0/gcc/opt-read.awk \
-f ../../gpc3/gcc-7.5.0/gcc/opth-gen.awk \
< optionlist > tmp-options.h
/bin/bash ../../gpc3/gcc-7.5.0/gcc/../move-if-change tmp-options.h options.h
echo timestamp > s-options-h
/bin/bash ../../gpc3/gcc-7.5.0/gcc/../move-if-change tmp-gi.list gtyp-input.list
echo timestamp > s-gtyp-input
build/gengtype \
-S ../../gpc3/gcc-7.5.0/gcc -I gtyp-input.list -w tmp-gtype.state
../../gpc3/gcc-7.5.0/gcc/p/module.c:294: option `length' may not be applied to arrays of atomic types
make[3]: *** [Makefile:2573 : s-gtype] Erreur 1
make[3] : on quitte le répertoire « /home/paul/gpc-build3/gcc »
make[2]: *** [Makefile:4548 : all-stage1-gcc] Erreur 2
make[2] : on quitte le répertoire « /home/paul/gpc-build3 »
make[1]: *** [Makefile:23803 : stage1-bubble] Erreur 2
make[1] : on quitte le répertoire « /home/paul/gpc-build3 »
make: *** [Makefile:934 : all] Erreur 2
paul@jacko:~/gpc-build3$
This time, I don't understand what the compiler wants me to do.