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

Bug#373895: g++-4.1: "multiple definition" linker errors with code that used to work



Package: g++-4.1
Version: 4.1.1-5
Severity: important

While linking code that uses boost date_time headers, I get lots of
errors like:

foo.o: (.data+0x0): multiple definition of `_ZN5boost9date_time18parse_match_resultIT_E11PARSE_ERRORE'
bar.o:(.data+0x0): first defined here

That's from boost/date_time/string_parse_tree.hpp, and the relevant code
looks like:

  template<typename charT>
  struct parse_match_result
  {
[...]
    static const short PARSE_ERROR;
  };
  template<typename charT>
  const short parse_match_result<charT>::PARSE_ERROR = -1;


Reverting to 4.1.1-2 fixes this problem.  I'm guessing it's a consequence
of the patch for PR c++/26068.


-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16.4
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages g++-4.1 depends on:
ii  gcc-4.1                       4.1.1-5    The GNU C compiler
ii  gcc-4.1-base                  4.1.1-5    The GNU Compiler Collection (base 
ii  libc6                         2.3.6-15   GNU C Library: Shared libraries
ii  libstdc++6-4.1-dev            4.1.1-5    The GNU Standard C++ Library v3 (d

g++-4.1 recommends no packages.

-- no debconf information



Reply to: