Debian Bug report logs - #455888
g++-4.2: treats explicitly specialized templates as extern by default

version graph

Package: g++-4.2; Maintainer for g++-4.2 is (unknown);

Reported by: "brian m. carlson" <sandals@crustytoothpaste.net>

Date: Wed, 12 Dec 2007 12:27:02 UTC

Severity: normal

Found in version gcc-4.2/4.2.2-4

Done: "Manuel A. Fernandez Montecelo" <manuel.montezelo@gmail.com>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#455888; Package g++-4.2. Full text and rfc822 format available.

Acknowledgement sent to "brian m. carlson" <sandals@crustytoothpaste.ath.cx>:
New Bug report received and forwarded. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: "brian m. carlson" <sandals@crustytoothpaste.ath.cx>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: g++-4.2: treats explicitly specialized templates as extern by default
Date: Wed, 12 Dec 2007 12:26:00 +0000
[Message part 1 (text/plain, inline)]
Package: g++-4.2
Version: 4.2.2-4
Severity: normal

If a template is explicitly specialized, it is by default extern, even 
if its corresponding generic template is static.  The only way to make 
it static is by explicitly marking the specialization static.  However, 
g++-4.3 does not allow marking the specialization static, because it 
properly imports the storage class from the generic template.

gcc-4.2 should do what gcc-4.3 does, but it probably should not reject 
the explicit use of static, for backward compatibility purposes.

lakeview ok % gcc-4.2 -c static-template.cc 
lakeview ok % nm -aC static-template.o | grep size
0000000000000010 t int size<float>(float*)
0000000000000000 T int size<int>(int*)
lakeview ok % gcc-4.2 -DUSE_STATIC -c static-template.cc
lakeview ok % nm -aC static-template.o | grep size      
0000000000000010 t int size<float>(float*)
0000000000000000 t int size<int>(int*)
lakeview ok % gcc-4.3 -c static-template.cc            
lakeview ok % nm -aC static-template.o | grep size
0000000000000010 t int size<float>(float*)
0000000000000000 t int size<int>(int*)
lakeview ok % gcc-4.3 -DUSE_STATIC -c static-template.cc
static-template.cc:14: error: explicit template specialization cannot have a storage class


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.24-rc4 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages g++-4.2 depends on:
ii  gcc-4.2                       4.2.2-4    The GNU C compiler
ii  gcc-4.2-base                  4.2.2-4    The GNU Compiler Collection (base 
ii  libc6                         2.7-4      GNU C Library: Shared libraries
ii  libstdc++6-4.2-dev            4.2.2-4    The GNU Standard C++ Library v3 (d

g++-4.2 recommends no packages.

-- no debconf information

-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 713 440 7475 | http://crustytoothpaste.ath.cx/~bmc | My opinion only
a typesetting engine: http://crustytoothpaste.ath.cx/~bmc/code/thwack
OpenPGP: RSA v4 4096b 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187
[static-template.cc (text/x-c++src, attachment)]
[signature.asc (application/pgp-signature, inline)]

Changed Bug submitter to '"brian m. carlson" <sandals@crustytoothpaste.net>' from '"brian m. carlson" <sandals@crustytoothpaste.ath.cx>' Request was from "brian m. carlson" <sandals@crustytoothpaste.net> to control@bugs.debian.org. (Thu, 03 Feb 2011 20:51:22 GMT) Full text and rfc822 format available.

Reply sent to "Manuel A. Fernandez Montecelo" <manuel.montezelo@gmail.com>:
You have taken responsibility. (Wed, 16 May 2012 21:33:05 GMT) Full text and rfc822 format available.

Notification sent to "brian m. carlson" <sandals@crustytoothpaste.net>:
Bug acknowledged by developer. (Wed, 16 May 2012 21:33:06 GMT) Full text and rfc822 format available.

Message #12 received at 455888-done@bugs.debian.org (full text, mbox):

From: "Manuel A. Fernandez Montecelo" <manuel.montezelo@gmail.com>
To: 455888-done@bugs.debian.org
Subject: Re: g++-4.2: treats explicitly specialized templates as extern by default
Date: Wed, 16 May 2012 22:31:37 +0100
Hello,

Thanks for the detailed bug reports and your interest in improving
Debian.  Sorry that the bug was unattended for so long.  I'm just
doing some cleanup, I am not involved with the GCC package.

This bug report is orphan now (no maintainer assigned), since g++-4.2
is not in any current release anymore, so the bug itself would remain
untouched forever.

I think that it's better to close it right now, so I am doing it... as
I said 4.2 is no longer in the archive and the newer versions don't
allow this code (I checked it), so this report is of little use by
now.

Regards.




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 14 Jun 2012 07:47:20 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed Apr 23 14:37:12 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.