aspell-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Aspell-user] apparent bug in 'aspell-0.60.4/modules/filter/nroff.cpp' f


From: Sergei Steshenko
Subject: [Aspell-user] apparent bug in 'aspell-0.60.4/modules/filter/nroff.cpp' file
Date: Sun, 17 Dec 2006 06:40:59 -0800 (PST)

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 address@hidden:/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 address@hidden:/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 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]