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

Bug#489462: g++-4.3: Problem with #define minor -> gnu_dev_minor



Package: g++-4.3
Version: 4.3.1-2
Severity: normal

Hello

I am trying to update my tango package (not yet release) after the 4.2
-> 4.3 transition.

you can find the packaging git repository here:
git://repo.or.cz/tango.git

during the first compilation it hang on the log4tango compilation
due to ian ambiguity with std::abs
I solved the proble with this patch

--- tango.orig/lib/cpp/log4tango/src/PatternLayout.cpp
+++ tango/lib/cpp/log4tango/src/PatternLayout.cpp
@@ -209,7 +209,7 @@
     FormatModifierComponent(PatternLayout::PatternComponent* component,
		                                  int minWidth, int
						  maxWidth) :
         _component(component) , 
-        _minWidth(std::abs(minWidth)),
+        _minWidth(minWidth < 0 ? -minWidth : minWidth),
	_maxWidth(maxWidth),
	_alignLeft(minWidth < 0) {
						   }


and a missing header in lib/cpp/log4tango/src/Level.cpp
add <cstdlib>

now the real problem is with lib/cpp/client/api_util.cpp
where 
make[6]: entrant dans le répertoire «
/home/picca/Debian/tango/tango/lib/cpp/client »
/bin/sh ../../../libtool --mode=compile --tag=CXX g++ -DHAVE_CONFIG_H
-I. -I. -I../../.. -I../../../lib/cpp/server
-I../../../lib/cpp/log4tango/include
-I../../../lib/cpp/log4tango/include -I/usr/include  -Wl,-z,defs
-I/usr/include  -D_TANGO_LIB -D_REENTRANT -DOMNI_UNLOADABLE_STUBS -c -o
api_util.lo api_util.cpp
 g++ -DHAVE_CONFIG_H -I. -I. -I../../.. -I../../../lib/cpp/server
 -I../../../lib/cpp/log4tango/include
 -I../../../lib/cpp/log4tango/include -I/usr/include -Wl,-z,defs
 -I/usr/include -D_TANGO_LIB -D_REENTRANT -DOMNI_UNLOADABLE_STUBS -c
 api_util.cpp  -fPIC -DPIC -o .libs/api_util.o
 api_util.cpp: In member function 'void
 Tango::ApiUtil::get_asynch_replies()':
 api_util.cpp:465: error: 'class CORBA::BAD_INV_ORDER' has no member
 named 'gnu_dev_minor'
 api_util.cpp: In member function 'void
 Tango::ApiUtil::get_asynch_replies(long int)':
 api_util.cpp:624: error: 'class CORBA::BAD_INV_ORDER' has no member
 named 'gnu_dev_minor'
 api_util.cpp:690: error: 'class CORBA::BAD_INV_ORDER' has no member
 named 'gnu_dev_minor'

but when I look the code nothing about gnu_dev_minor in the
CORBA::BAD_INV_ORDER class.

so i suspect a problem with a #define of minor in a header.
Is it a bug of gcc-4.3 (it compiles fine with gcc-4.2) ?

have a good night

Frederic


-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-1-686 (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages g++-4.3 depends on:
ii  gcc-4.3                   4.3.1-2        The GNU C compiler
ii  gcc-4.3-base              4.3.1-2        The GNU Compiler Collection (base 
ii  libc6                     2.7-10         GNU C Library: Shared libraries
ii  libgmp3c2                 2:4.2.2+dfsg-3 Multiprecision arithmetic library
ii  libmpfr1ldbl              2.3.1.dfsg.1-2 multiple precision floating-point 
ii  libstdc++6-4.3-dev        4.3.1-2        The GNU Standard C++ Library v3 (d

g++-4.3 recommends no packages.

-- no debconf information



Reply to: