[prev in list] [next in list] [prev in thread] [next in thread]
List: aspell-user
Subject: [Aspell-user] apparent bug in 'aspell-0.60.4/modules/filter/nroff.cpp' file
From: Sergei Steshenko <sergstesh () yahoo ! com>
Date: 2006-12-17 14:40:59
Message-ID: 401523.37971.qm () web35211 ! mail ! mud ! yahoo ! com
[Download RAW message or body]
Hello All,
I am building 'aspell' in the framework of my project (see signature).
Recent update to SUSE 10.2 and new C++ compiler exposed what looks like
a bug to me, though my C++ knowledge is superficial.
'make' fails with these messages:
"
(cd .libs && rm -f context-filter.la && ln -s ../context-filter.la context-filter.la)
depbase=`echo modules/filter/nroff.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`; \
if /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I./gen -I./gen
-I./common -I./interfaces/cc/ -I./modules/speller/default/
-DLOCALEDIR=\"/maxtor5/sergei/AppsFromScratchWD/install/aspell-0.60.4/share/locale\"
-I/maxtor5/sergei/AppsFromScratchWD/install/ncurses-5.5/include -g -O2 -fno-exceptions -MT
modules/filter/nroff.lo -MD -MP -MF "$depbase.Tpo" -c -o modules/filter/nroff.lo
modules/filter/nroff.cpp; \
then mv -f "$depbase.Tpo" "$depbase.Plo"; else rm -f "$depbase.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I./gen -I./gen -I./common -I./interfaces/cc/
-I./modules/speller/default/
-DLOCALEDIR=\"/maxtor5/sergei/AppsFromScratchWD/install/aspell-0.60.4/share/locale\"
-I/maxtor5/sergei/AppsFromScratchWD/install/ncurses-5.5/include -g -O2 -fno-exceptions -MT
modules/filter/nroff.lo -MD -MP -MF modules/filter/.deps/nroff.Tpo -c modules/filter/nroff.cpp
-fPIC -DPIC -o modules/filter/.libs/nroff.o
modules/filter/nroff.cpp:76: error: extra qualification '<unnamed>::NroffFilter::' on member
'process_char'
make[1]: *** [modules/filter/nroff.lo] Error 1
make[1]: Leaving directory `/maxtor5/sergei/AppsFromScratchWD/build/aspell-0.60.4'
make: *** [all-recursive] Error 1
".
Here is the context:
34 class NroffFilter : public IndividualFilter
35 {
36 private:
37 enum filter_state {
38 initial,
39 escape,
40 request,
41 font_switch,
42 size_switch,
43 skip_char,
44 skip_digit,
45 skip_space_before_ident,
46 skip_ident,
47 skip_cond,
48 skip_leading_ws,
49 argument,
50 register_reference,
51 gnu_register_name
52 } state;
53 bool newline; // Newline has just been seen.
54 size_t skip_chars; // Number of characters to skip
55 char req_name[2]; // Name of the recent nroff request
56 int pos; // position of the next char in req_name
57 bool in_request; // are we within a request?
58
59 // Return true if we should ignore argument to the current request.
60 bool inline ignore_request_argument ()
61 {
62 static char ignore_req_tab[][3] = {
63 "ds",
64 "de",
65 "nr",
66 "do",
67 "so"
68 };
69 for (int i = 0; i < sizeof(ignore_req_tab)/sizeof(ignore_req_tab[0]);
70 i++)
71 if (memcmp(ignore_req_tab[i], req_name, 2) == 0)
72 return true;
73 return false;
74 }
75
76 bool NroffFilter::process_char (FilterChar::Chr c);
77
78 public:
79
80 PosibErr<bool> setup(Config *);
81 void reset();
82 void process(FilterChar * &, FilterChar * &);
83 };
I believe that class member should be declared without namespace qualifiers,
at least, if my code replaces
76 bool NroffFilter::process_char (FilterChar::Chr c);
with
76 bool process_char (FilterChar::Chr c);
the whole thing compiles.
This should probably be filed like a bug report, but I got confused trying to figure
out how/where to do this.
Please fix this anyway.
Thanks,
Sergei.
P.S. Info on my system:
"
[164] 16:40 sergei@amdam2:/maxtor5/sergei/AppsFromScratchWD> uname -a
Linux amdam2 2.6.18.2-34-default #1 SMP Mon Nov 27 11:46:27 UTC 2006 i686 athlon i386 GNU/Linux
[165] 16:40 sergei@amdam2:/maxtor5/sergei/AppsFromScratchWD> gcc -v
Using built-in specs.
Target: i586-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local
--infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release
--with-gxx-include-dir=/usr/include/c++/4.1.2 --enable-ssp --disable-libssp --disable-libgcj
--with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit
--enable-libstdcxx-allocator=new --program-suffix=-4.1 --enable-version-specific-runtime-libs
--without-system-libunwind --with-cpu=generic --host=i586-suse-linux
Thread model: posix
gcc version 4.1.2 20061115 (prerelease) (SUSE Linux)
".
Applications From Scratch: http://appsfromscratch.berlios.de/
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic