The issue is that tilegx includes expr.h which includes tree-core.h. A
simple solution is to include "symtab.h" before "expr.h" in tilegx.c.
The port has a unrelated link error after this change.
The second possiblity is to resolve this using Prathmesh latest patch
(submitted today) for flattening expr.h which removes the dependency on
tree-core.h. Thoughts?
On 01/11/2015 08:36 PM, Jan-Benedict Glaw wrote:
On Sat, 2015-01-10 01:50:42 +0530, Prathamesh Kulkarni
<prathamesh.kulka...@linaro.org> wrote:
On 9 January 2015 at 16:21, Richard Biener <richard.guent...@gmail.com> wrote:
On Fri, Jan 9, 2015 at 10:39 AM, Michael Collison <michael.colli...@linaro.org>
wrote:
This patch flattens tree.h and tree-core.h. This is a revised
patch that does not include tree-core.h as a result of
flattening.
Version 3 of the patch adds the header files removed from
tree-core.h to gcc-plugin.h in order to allow ggc-common.c to
compile. This is a recent issue seen on trunk.
[...]
Committed as r219402 on behalf of Michael.
Great work! Almost no fallout.
Though I see some fallout for tilepro-linux, see eg. these builds:
tilegx: http://toolchain.lug-owl.de/buildbot/show_build_details.php?id=396528
tilepro: http://toolchain.lug-owl.de/buildbot/show_build_details.php?id=397033
[...]
g++ -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions
-fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic
-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common
-DHAVE_CONFIG_H -I. -I. -I/home/jbglaw/repos/gcc/gcc
-I/home/jbglaw/repos/gcc/gcc/. -I/home/jbglaw/repos/gcc/gcc/../include
-I/home/jbglaw/repos/gcc/gcc/../libcpp/include
-I/home/jbglaw/repos/gcc/gcc/../libdecnumber
-I/home/jbglaw/repos/gcc/gcc/../libdecnumber/dpd -I../libdecnumber
-I/home/jbglaw/repos/gcc/gcc/../libbacktrace -o tilepro.o -MT tilepro.o -MMD
-MP -MF ./.deps/tilepro.TPo /home/jbglaw/repos/gcc/gcc/config/tilepro/tilepro.c
In file included from /home/jbglaw/repos/gcc/gcc/expr.h:38:0,
from /home/jbglaw/repos/gcc/gcc/config/tilepro/tilepro.c:31:
/home/jbglaw/repos/gcc/gcc/tree-core.h:1139:24: error: field ‘id’ has
incomplete type
make[1]: *** [tilepro.o] Error 1
#include "symtab.h" is there, so probably too late? Fails for both, tilepro and
tilegx.
MfG, JBG
--
Michael Collison
Linaro Toolchain Working Group
michael.colli...@linaro.org