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

Bug#372152: g++-4.1: PR27935 appears to be unresolved (operator delete(void*, size_t) issue)



Package: g++-4.1
Version: 4.1.1-2
Severity: normal

<http://gcc.gnu.org/PR27935> describes what appears to be simply a size_t issue:

struct a
{
  void operator delete (void*, unsigned int);
  ~a();
};

void g(a *b)
{
  delete b;
}

fails to compile.  But of course size_t isn't necessarily unsigned int.

The bug has an attachment which compiles in g++-4.0, and I presume is
intended to compile in g++-4.1.  But now, it doesn't.

#include <cstddef>

struct B {
    virtual ~B() { }
    void operator delete(void*, size_t);
};

The error is

test.cpp: In destructor 'virtual B::~B()':
test.cpp:4: error: no suitable 'operator delete' for 'B'

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-2
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

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

g++-4.1 recommends no packages.

-- no debconf information



Reply to: