Bug 62895 - compile error in common/libgettext
Summary: compile error in common/libgettext
Status: RESOLVED INTENTIONAL
Alias: None
Product: kbabel
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Stanislav Visnovsky
URL:
Keywords:
: 69942 74158 75222 78408 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-08-18 18:12 UTC by Marko Rosic
Modified: 2004-03-25 08:41 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marko Rosic 2003-08-18 18:12:01 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc 3.2.2 
OS:          Linux

I run Slakware 9.0 with recent kde-HEAD and Qt-3.2. This is the error log:

Making all in common
make[3]: Entering directory /usr/local/src/kde-HEAD/kdesdk/kbabel/common'
Making all in libgettext
make[4]: Entering directory
/usr/local/src/kde-HEAD/kdesdk/kbabel/common/libgettext'
if /bin/sh ../../../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I.
-I. -I../../..   -DQT_THREAD_SUPPORT  -D_REENTRANT  -ansi -W -Wall -pedantic
-Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes
-Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -O2   -Wformat-security
-Wmissing-format-attribute -MT fstrcmp.lo -MD -MP -MF ".deps/fstrcmp.Tpo" \
  -c -o fstrcmp.lo  est -f 'fstrcmp.c' || echo './' strcmp.c; \
then mv ".deps/fstrcmp.Tpo" ".deps/fstrcmp.Plo"; \
else rm -f ".deps/fstrcmp.Tpo"; exit 1; \
fi
if /bin/sh ../../../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I.
-I. -I../../..   -DQT_THREAD_SUPPORT  -D_REENTRANT  -ansi -W -Wall -pedantic
-Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes
-Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -O2   -Wformat-security
-Wmissing-format-attribute -MT xmalloc.lo -MD -MP -MF ".deps/xmalloc.Tpo" \
  -c -o xmalloc.lo  est -f 'xmalloc.c' || echo './'alloc.c; \
then mv ".deps/xmalloc.Tpo" ".deps/xmalloc.Plo"; \
else rm -f ".deps/xmalloc.Tpo"; exit 1; \
fi
flex -+ -opofiles.cc ./pofiles.ll
if /bin/sh ../../../libtool --silent --mode=compile --tag=CXX g++
-DHAVE_CONFIG_H -I. -I. -I../../..   -DQT_THREAD_SUPPORT  -D_REENTRANT
-Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith
-Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align
-Wconversion -Wchar-subscripts -O2 -Wformat-security
-Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common
-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT
-DQT_NO_TRANSLATION  -MT pofiles.lo -MD -MP -MF ".deps/pofiles.Tpo" \
  -c -o pofiles.lo  est -f 'pofiles.cc' || echo './' ofiles.cc; \
then mv ".deps/pofiles.Tpo" ".deps/pofiles.Plo"; \
else rm -f ".deps/pofiles.Tpo"; exit 1; \
fi
In file included from /usr/include/c++/3.2.2/backward/iostream.h:31,
                 from /usr/include/FlexLexer.h:47,
                 from pofiles.cc:241:
/usr/include/c++/3.2.2/backward/backward_warning.h:32:2: warning: #warning
This file includes at least one deprecated or antiquated header. Please
consider using one of the 32 headers found in section 17.4.1.2 of the C++
standard. Examples include substituting the <X> header for the <X.h> header
for C++ includes, or <sstream> instead of the deprecated header
<strstream.h>. To disable this warning use -Wno-deprecated.
In file included from /usr/include/FlexLexer.h:47,
                 from pofiles.cc:241:
/usr/include/c++/3.2.2/backward/iostream.h:36: using declaration
stream'
   introduced ambiguous type 	stream'
pofiles.cc:401:5: warning: "YY_STACK_USED" is not defined
pofiles.cc: In member function  irtual int GettextBaseFlexLexer::yylex()':
pofiles.cc:683: cannot convert  td::istream*' to 	stream*' in
assignment
pofiles.cc: In member function  oid
   GettextBaseFlexLexer::yy_load_buffer_state()':
pofiles.cc:1216: cannot convert 	stream*' to  td::istream*' in
assignment
pofiles.cc: In member function  oid
   GettextBaseFlexLexer::yy_init_buffer(yy_buffer_state*, std::istream*)':
pofiles.cc:1267: cannot convert  td::istream*' to 	stream*' in
assignment
pofiles.cc:1458:5: warning: "YY_MAIN" is not defined
make[4]: *** [pofiles.lo] Error 1
make[4]: Leaving directory
/usr/local/src/kde-HEAD/kdesdk/kbabel/common/libgettext'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory /usr/local/src/kde-HEAD/kdesdk/kbabel/common'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory /usr/local/src/kde-HEAD/kdesdk/kbabel'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory /usr/local/src/kde-HEAD/kdesdk'
make: *** [all] Error 2
Comment 1 Stanislav Visnovsky 2003-08-18 18:39:19 UTC
What is the version of your flex? (flex --version)
Comment 2 Marko Rosic 2003-08-19 01:16:51 UTC
flex version 2.5.4 
Comment 3 Stanislav Visnovsky 2003-09-17 15:18:00 UTC
It's a flex bug.
Comment 4 Harry Mangalam 2003-10-15 00:32:30 UTC
so what version of flex fixes it?  I'm using flex 2.5.31 (Debian Sid) and get the same error.
AHA!! from the flex notes: 
The behaviour of Flex has undergone a major change since version
 2.5.4a; Flex scanners are now reenterant, you may have multiple
 scanners in the same program with differing setrs of defaults, and
 they play nicer with modern C and C++ compilers. The Flip side is
 that Flex no longer conforms to the POSIX lex behaviour, and the
 scanners require conforming implementations when flex is used in ANSI
 C mode. The package flex-old provides the older behaviour.

and in fact installing flex-old DOES fix this problem.

harry
Comment 5 Stanislav Visnovsky 2003-12-12 20:57:56 UTC
*** Bug 69942 has been marked as a duplicate of this bug. ***
Comment 6 Stanislav Visnovsky 2004-03-04 18:07:00 UTC
*** Bug 75222 has been marked as a duplicate of this bug. ***
Comment 7 Stanislav Visnovsky 2004-03-04 18:07:28 UTC
*** Bug 74158 has been marked as a duplicate of this bug. ***
Comment 8 Stanislav Visnovsky 2004-03-25 08:41:21 UTC
*** Bug 78408 has been marked as a duplicate of this bug. ***