From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1350 invoked by alias); 18 Nov 2007 14:38:34 -0000 Received: (qmail 1342 invoked by uid 22791); 18 Nov 2007 14:38:34 -0000 X-Spam-Check-By: sourceware.org Received: from nf-out-0910.google.com (HELO nf-out-0910.google.com) (64.233.182.186) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sun, 18 Nov 2007 14:38:30 +0000 Received: by nf-out-0910.google.com with SMTP id h3so1056220nfh for ; Sun, 18 Nov 2007 06:38:27 -0800 (PST) Received: by 10.86.58.3 with SMTP id g3mr4009208fga.1195396707636; Sun, 18 Nov 2007 06:38:27 -0800 (PST) Received: by 10.86.36.16 with HTTP; Sun, 18 Nov 2007 06:38:27 -0800 (PST) Message-ID: <24b520d20711180638l2d166ea1u4fb14b3a7cb51f03@mail.gmail.com> Date: Sun, 18 Nov 2007 15:46:00 -0000 From: "Doug Gregor" To: "GCC Patches" Subject: [C++ PATCH] Handle TYPE_PACK_EXPANSION return in tsubst_exception_specification MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_9182_14368176.1195396707633" 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: 2007-11/txt/msg00977.txt.bz2 ------=_Part_9182_14368176.1195396707633 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Content-length: 670 This little patch fixes PR 33509, a P2 ice-on-valid where we failed to handle the instantiation of exception specifications that involve parameter packs from multiple levels of template parameters. The fix is relatively simple; we just deal with the resulting TYPE_PACK_EXPANSION explicitly. Tested i686-pc-linux-gnu; okay for mainline? - Doug 2007-11-18 Douglas Gregor PR c++/33509 * pt.c (tsubst_exception_specification): Handle substitutions into member templates, where tsubst_pack_expansion returns a TYPE_PACK_EXPANSION. 2007-11-18 Douglas Gregor PR c++/33509 * g++.dg/cpp0x/variadic-throw.C: New. ------=_Part_9182_14368176.1195396707633 Content-Type: text/x-patch; name=variadic-throw.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_f95ob8be0 Content-Disposition: attachment; filename=variadic-throw.patch Content-length: 2253 SW5kZXg6IGNwL3B0LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gY3Av cHQuYwkocmV2aXNpb24gMTMwMjY4KQorKysgY3AvcHQuYwkod29ya2luZyBj b3B5KQpAQCAtODY1Myw3ICs4NjUzLDI0IEBAIHRzdWJzdF9leGNlcHRpb25f c3BlY2lmaWNhdGlvbiAodHJlZSBmbnQKICAgICAgICAgICAgICAgICBleHBh bmRlZF9zcGVjcyA9IHRzdWJzdF9wYWNrX2V4cGFuc2lvbiAoVFJFRV9WQUxV RSAoc3BlY3MpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsIGNvbXBsYWluLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGluX2RlY2wpOwotICAgICAgICAgICAgICAgIGxlbiA9IFRSRUVfVkVD X0xFTkdUSCAoZXhwYW5kZWRfc3BlY3MpOworCisJCWlmIChleHBhbmRlZF9z cGVjcyA9PSBlcnJvcl9tYXJrX25vZGUpCisJCSAgcmV0dXJuIGVycm9yX21h cmtfbm9kZTsKKwkJZWxzZSBpZiAoVFJFRV9DT0RFIChleHBhbmRlZF9zcGVj cykgPT0gVFJFRV9WRUMpCisJCSAgbGVuID0gVFJFRV9WRUNfTEVOR1RIIChl eHBhbmRlZF9zcGVjcyk7CisJCWVsc2UKKwkJICB7CisJCSAgICAvKiBXZSdy ZSBzdWJzdGl0dXRpbmcgaW50byBhIG1lbWJlciB0ZW1wbGF0ZSwgc28KKwkJ ICAgICAgIHdlIGdvdCBhIFRZUEVfUEFDS19FWFBBTlNJT04gYmFjay4gIEFk ZCB0aGF0CisJCSAgICAgICBleHBhbnNpb24gYW5kIG1vdmUgb24uICAqLwor CQkgICAgZ2NjX2Fzc2VydCAoVFJFRV9DT0RFIChleHBhbmRlZF9zcGVjcykg CisJCQkJPT0gVFlQRV9QQUNLX0VYUEFOU0lPTik7CisJCSAgICBuZXdfc3Bl Y3MgPSBhZGRfZXhjZXB0aW9uX3NwZWNpZmllciAobmV3X3NwZWNzLAorCQkJ CQkJCSBleHBhbmRlZF9zcGVjcywKKwkJCQkJCQkgY29tcGxhaW4pOworCQkg ICAgc3BlY3MgPSBUUkVFX0NIQUlOIChzcGVjcyk7CisJCSAgICBjb250aW51 ZTsKKwkJICB9CiAgICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgZm9y IChpID0gMDsgaSA8IGxlbjsgKytpKQpJbmRleDogdGVzdHN1aXRlL2crKy5k Zy9jcHAweC92YXJpYWRpYy10aHJvdy5DCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tIHRlc3RzdWl0ZS9nKysuZGcvY3BwMHgvdmFyaWFkaWMtdGhyb3cu QwkocmV2aXNpb24gMCkKKysrIHRlc3RzdWl0ZS9nKysuZGcvY3BwMHgvdmFy aWFkaWMtdGhyb3cuQwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMCBAQAor Ly8geyBkZy1vcHRpb25zIC1zdGQ9YysrMHggfQorLy8gUFIgYysrLzMzNTA5 Cit0ZW1wbGF0ZTxpbnQgTSwgaW50IE4+IHN0cnVjdCBwYWlyCit7CisgIGlu dCBpLCBqOworICBwYWlyKCkgOiBpKE0pLCBqKE4pIHt9Cit9OworCit0ZW1w bGF0ZTxpbnQuLi4gTT4gc3RydWN0IFMKK3sKKyAgdGVtcGxhdGU8aW50Li4u IE4+IHN0YXRpYyBpbnQgZm9vKCkgdGhyb3cgKHBhaXIgPE0sIE4+Li4uKQor ICB7CisgICAgcmV0dXJuIDE7CisgIH0KK307CisKK2ludCBiYXIgKCkKK3sK KyAgcmV0dXJuIFM8MCwgMSwgMj46OmZvbzwwLCAxLCAzPiAoKTsKK30K ------=_Part_9182_14368176.1195396707633--