From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28037 invoked by alias); 18 Apr 2002 11:06:26 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 27875 invoked by uid 71); 18 Apr 2002 11:06:12 -0000 Resent-Date: 18 Apr 2002 11:06:12 -0000 Resent-Message-ID: <20020418110612.27874.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, comer@mailru.com Received:(qmail 26073 invoked by uid 61); 18 Apr 2002 11:02:48 -0000 Message-Id:<20020418110247.26072.qmail@sources.redhat.com> Date: Thu, 18 Apr 2002 04:06:00 -0000 From: comer@mailru.com Reply-To: comer@mailru.com To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: c++/6351: GCC dosn't compile a correct code. X-SW-Source: 2002-04/txt/msg00922.txt.bz2 List-Id: >Number: 6351 >Category: c++ >Synopsis: GCC dosn't compile a correct code. >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Thu Apr 18 04:06:11 PDT 2002 >Closed-Date: >Last-Modified: >Originator: comer@mailru.com >Release: 2.95.3-5 (cygwin-version) >Organization: >Environment: Windows 2000 >Description: enum_plus.cpp:9: enumerator value for `MY_MAX' not integer constant enum_plus.cpp: In function `enum {anonymous} operator +<{anonymous enum}, int>(c onst {anonymous enum} &, const int &)': enum_plus.cpp:9: instantiated from here enum_plus.cpp:4: assignment of read-only reference `a' >How-To-Repeat: template TypeA operator+(const TypeA& a, const TypeB& b) { return TypeA(a)+=b; } enum { MY_MIN = 0 }; enum { MY_MAX = MY_MIN+10 }; int main(void) { } >Fix: Change enum { MY_MAX = MY_MIN+10 }; to enum { MY_TMP = MY_MIN, MY_MAX = MY_TMP+10 }; >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="enum_plus.cpp" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="enum_plus.cpp" dGVtcGxhdGU8Y2xhc3MgVHlwZUEsIGNsYXNzIFR5cGVCPg0KVHlwZUEgb3BlcmF0b3IrKGNvbnN0 IFR5cGVBJiBhLCBjb25zdCBUeXBlQiYgYikNCnsNCglyZXR1cm4gVHlwZUEoYSkrPWI7DQp9DQoN CmVudW0geyBNWV9NSU4gPSAwIH07DQoNCmVudW0geyBNWV9UTVAgPSBNWV9NSU4sIE1ZX01BWCA9 IE1ZX1RNUCsxMCB9Ow0KDQppbnQgbWFpbih2b2lkKQ0Kew0KfQ0KDQo=