From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17443 invoked by alias); 10 Dec 2007 01:55:36 -0000 Received: (qmail 17185 invoked by uid 48); 10 Dec 2007 01:55:24 -0000 Date: Mon, 10 Dec 2007 01:55:00 -0000 Message-ID: <20071210015524.17184.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug c++/33661] template methods forget explicit local reg vars In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "pinskia at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-12/txt/msg00773.txt.bz2 ------- Comment #1 from pinskia at gcc dot gnu dot org 2007-12-10 01:55 ------- Confirmed, It also fails with 3.3 so this is not a regression. A testcase for PPC: template class Tpl { public: static long* MySysCall() { register long retval __asm__("r3"); asm ( "trap #0\n\t" "move.l %0,%0\n\t" : "=r"(retval) : : "r4" ); return (long*)retval; } }; void f() { long* p = Tpl::MySysCall(); *p = 1; } Note I did not change the inline-asm's string though so it will not assemble. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords| |wrong-code Known to fail| |3.3.3 4.1.0 4.3.0 Last reconfirmed|0000-00-00 00:00:00 |2007-12-10 01:55:24 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33661