From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12909 invoked by alias); 21 May 2011 18:54:26 -0000 Received: (qmail 12901 invoked by uid 22791); 21 May 2011 18:54:26 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST X-Spam-Check-By: sourceware.org Received: from mail-qy0-f175.google.com (HELO mail-qy0-f175.google.com) (209.85.216.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 21 May 2011 18:54:10 +0000 Received: by qyk35 with SMTP id 35so230436qyk.20 for ; Sat, 21 May 2011 11:54:10 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.106.30 with SMTP id v30mr603751qco.113.1306004050077; Sat, 21 May 2011 11:54:10 -0700 (PDT) Received: by 10.229.81.200 with HTTP; Sat, 21 May 2011 11:54:10 -0700 (PDT) Date: Sun, 22 May 2011 04:38:00 -0000 Message-ID: Subject: [ C++ 4.6 Patch] allow uninitialized const or reference members with -fpermissive From: =?ISO-8859-1?Q?Fabien_Ch=EAne?= To: GCC Patches Cc: Jason Merrill Content-Type: multipart/mixed; boundary=00235429d1d47ae6c904a3cdc3a4 X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2011-05/txt/msg01540.txt.bz2 --00235429d1d47ae6c904a3cdc3a4 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 710 Hi, As discussed off-list with Jason, it would be better to use permerror instead of error when diagnosing uninitialized const or reference members. At least for 4.6. That would be usefull to provide a transition for invalid code that exploits the following accept-invalids: PR 25811, PR 43719, PR 44086. I have changed error to permerror only for the cases where it was needed for the PR listed above. OK for the 4.6 branch ? gcc/cp/ChangeLog: 2011-05-21 Fabien Ch=EAne * init.c (diagnose_uninitialized_cst_or_ref_member_1): Use permerror instead of error. gcc/testsuite/ChangeLog: 2011-05-21 Fabien Ch=EAne * g++.dg/init/pr25811-2.C: New. --=20 Fabien --00235429d1d47ae6c904a3cdc3a4 Content-Type: application/octet-stream; name="perm_cst_ref_diag.patch" Content-Disposition: attachment; filename="perm_cst_ref_diag.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gnz2tvpk0 Content-length: 2745 SW5kZXg6IGdjYy90ZXN0c3VpdGUvZysrLmRnL2luaXQvcHIyNTgxMS0yLkMK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gZ2NjL3Rlc3RzdWl0ZS9nKysu ZGcvaW5pdC9wcjI1ODExLTIuQwkocmV2aXNpb24gMCkKKysrIGdjYy90ZXN0 c3VpdGUvZysrLmRnL2luaXQvcHIyNTgxMS0yLkMJKHJldmlzaW9uIDApCkBA IC0wLDAgKzEsMjYgQEAKKy8vIHsgZGctZG8gY29tcGlsZSB9CisvLyB7IGRn LW9wdGlvbnMgLWZwZXJtaXNzaXZlIH0KKworc3RydWN0IEEKK3sKKyAgaW50 IGNvbnN0IGk7IC8vIHsgZGctbWVzc2FnZSAic2hvdWxkIGJlIGluaXRpYWxp emVkIiB9Cit9OworCitzdHJ1Y3QgQgoreworICBpbnQmIHI7IC8vIHsgZGct bWVzc2FnZSAic2hvdWxkIGJlIGluaXRpYWxpemVkIiB9Cit9OworCitzdHJ1 Y3QgQworeworICBpbnQgY29uc3QgaSA6IDE7IC8vIHsgZGctbWVzc2FnZSAi c2hvdWxkIGJlIGluaXRpYWxpemVkIiB9Cit9OworCit2b2lkIGYoKQorewor ICAgIG5ldyBBOyAgLy8geyBkZy13YXJuaW5nICJ1bmluaXRpYWxpemVkIiB9 CisgICAgbmV3IEI7ICAvLyB7IGRnLXdhcm5pbmcgInVuaW5pdGlhbGl6ZWQi IH0KKyAgICBuZXcgQzsgIC8vIHsgZGctd2FybmluZyAidW5pbml0aWFsaXpl ZCIgfQorICAgIEMgYzsgICAgLy8geyBkZy13YXJuaW5nICJ1bmluaXRpYWxp emVkIiB9CisgICAgQSBhWzFdOyAvLyB7IGRnLXdhcm5pbmcgInVuaW5pdGlh bGl6ZWQiIH0KK30KSW5kZXg6IGdjYy9jcC9pbml0LmMKPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0gZ2NjL2NwL2luaXQuYwkocmV2aXNpb24gMTczOTgw KQorKysgZ2NjL2NwL2luaXQuYwkod29ya2luZyBjb3B5KQpAQCAtMTkxMyw4 ICsxOTEzLDkgQEAgZGlhZ25vc2VfdW5pbml0aWFsaXplZF9jc3Rfb3JfcmVm X21lbWJlcgogCSAgaWYgKGNvbXBsYWluKQogCSAgICB7CiAJICAgICAgaWYg KHVzaW5nX25ldykKLQkJZXJyb3IgKCJ1bmluaXRpYWxpemVkIHJlZmVyZW5j ZSBtZW1iZXIgaW4gJXEjVCAiCi0JCSAgICAgICAidXNpbmcgJTxuZXclPiB3 aXRob3V0IG5ldy1pbml0aWFsaXplciIsIG9yaWdpbik7CisJCXBlcm1lcnJv ciAoaW5wdXRfbG9jYXRpb24sCisJCQkgICAidW5pbml0aWFsaXplZCByZWZl cmVuY2UgbWVtYmVyIGluICVxI1QgIgorCQkJICAgInVzaW5nICU8bmV3JT4g d2l0aG91dCBuZXctaW5pdGlhbGl6ZXIiLCBvcmlnaW4pOwogCSAgICAgIGVs c2UKIAkJZXJyb3IgKCJ1bmluaXRpYWxpemVkIHJlZmVyZW5jZSBtZW1iZXIg aW4gJXEjVCIsIG9yaWdpbik7CiAJICAgICAgaW5mb3JtIChERUNMX1NPVVJD RV9MT0NBVElPTiAoZmllbGQpLApAQCAtMTkyOCwxMCArMTkyOSwxMiBAQCBk aWFnbm9zZV91bmluaXRpYWxpemVkX2NzdF9vcl9yZWZfbWVtYmVyCiAJICBp ZiAoY29tcGxhaW4pCiAJICAgIHsKIAkgICAgICBpZiAodXNpbmdfbmV3KQot CQllcnJvciAoInVuaW5pdGlhbGl6ZWQgY29uc3QgbWVtYmVyIGluICVxI1Qg IgotCQkgICAgICAgInVzaW5nICU8bmV3JT4gd2l0aG91dCBuZXctaW5pdGlh bGl6ZXIiLCBvcmlnaW4pOworCQlwZXJtZXJyb3IgKGlucHV0X2xvY2F0aW9u LAorCQkJICAgInVuaW5pdGlhbGl6ZWQgY29uc3QgbWVtYmVyIGluICVxI1Qg IgorCQkJICAgInVzaW5nICU8bmV3JT4gd2l0aG91dCBuZXctaW5pdGlhbGl6 ZXIiLCBvcmlnaW4pOwogCSAgICAgIGVsc2UKLQkJZXJyb3IgKCJ1bmluaXRp YWxpemVkIGNvbnN0IG1lbWJlciBpbiAlcSNUIiwgb3JpZ2luKTsKKwkJcGVy bWVycm9yIChpbnB1dF9sb2NhdGlvbiwKKwkJCSAgICJ1bmluaXRpYWxpemVk IGNvbnN0IG1lbWJlciBpbiAlcSNUIiwgb3JpZ2luKTsKIAkgICAgICBpbmZv cm0gKERFQ0xfU09VUkNFX0xPQ0FUSU9OIChmaWVsZCksCiAJCSAgICAgICIl cUQgc2hvdWxkIGJlIGluaXRpYWxpemVkIiwgZmllbGQpOwogCSAgICB9Cg== --00235429d1d47ae6c904a3cdc3a4--