[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
groff 1.21: build failure with GCC2.95
From: |
Christian Weisgerber |
Subject: |
groff 1.21: build failure with GCC2.95 |
Date: |
Thu, 17 Mar 2011 17:29:17 +0100 |
User-agent: |
Mutt/1.4.2.3i |
groff 1.21, and apparently many older releases, doesn't build with
GCC2.95. The reason appears to be a simple name clash over
"input_iterator" between src/roff/troff/input.cpp and old libstdc++:
c++ -I. -I/usr/obj/ports/groff-1.21/groff-1.21/src/roff/troff
-I/usr/obj/ports/groff-1.21/build-sparc/src/include
-I/usr/obj/ports/groff-1.21/groff-1.21/src/include -I/src/libs/gnulib/lib
-DHAVE_CONFIG_H -O2 -pipe -c
/usr/obj/ports/groff-1.21/groff-1.21/src/roff/troff/input.cpp
/usr/obj/ports/groff-1.21/groff-1.21/src/roff/troff/input.cpp:159: `struct
input_iterator' redeclared as different kind of symbol
/usr/include/g++/stl_iterator.h:47: previous declaration of `template <class
_Tp, class _Distance> struct input_iterator<_Tp,_Distance>'
/usr/obj/ports/groff-1.21/groff-1.21/src/roff/troff/input.cpp:160: syntax error
before `*'
[...]
The following (ugly) fix solves this problem.
--- src/roff/troff/input.cpp.orig Wed Mar 16 21:33:07 2011
+++ src/roff/troff/input.cpp Wed Mar 16 21:33:35 2011
@@ -156,6 +156,7 @@ static symbol get_delim_name();
static void init_registers();
static void trapping_blank_line();
+#define input_iterator my_input_iterator
class input_iterator;
input_iterator *make_temp_iterator(const char *);
const char *input_char_description(int);
--
Christian "naddy" Weisgerber address@hidden
- groff 1.21: build failure with GCC2.95,
Christian Weisgerber <=