From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31280 invoked by alias); 10 Oct 2011 22:21:02 -0000 Received: (qmail 31271 invoked by uid 22791); 10 Oct 2011 22:21:02 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.44.51) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 10 Oct 2011 22:20:48 +0000 Received: from hpaq6.eem.corp.google.com (hpaq6.eem.corp.google.com [172.25.149.6]) by smtp-out.google.com with ESMTP id p9AMKkpM021288 for ; Mon, 10 Oct 2011 15:20:47 -0700 Received: from vcbfl11 (vcbfl11.prod.google.com [10.220.204.75]) by hpaq6.eem.corp.google.com with ESMTP id p9AMJJCK013900 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for ; Mon, 10 Oct 2011 15:20:45 -0700 Received: by vcbfl11 with SMTP id fl11so9153087vcb.0 for ; Mon, 10 Oct 2011 15:20:45 -0700 (PDT) Received: by 10.100.205.1 with SMTP id c1mr4077437ang.46.1318285244893; Mon, 10 Oct 2011 15:20:44 -0700 (PDT) MIME-Version: 1.0 Received: by 10.100.205.1 with SMTP id c1mr4077434ang.46.1318285244738; Mon, 10 Oct 2011 15:20:44 -0700 (PDT) Received: by 10.100.225.14 with HTTP; Mon, 10 Oct 2011 15:20:44 -0700 (PDT) In-Reply-To: References: Date: Mon, 10 Oct 2011 22:21:00 -0000 Message-ID: Subject: Re: Make DW_TAG_enumerator's consistent, regardless of containing scope From: Sterling Augustine To: gdb-patches@sourceware.org Content-Type: multipart/mixed; boundary=001636b4325bb9af3104aef9331e X-System-Of-Record: true Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-10/txt/msg00291.txt.bz2 --001636b4325bb9af3104aef9331e Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1230 On Fri, Oct 7, 2011 at 4:42 PM, Keith Seitz wrote: > On 10/07/2011 02:26 PM, Sterling Augustine wrote: >> >> saugustine@sterling$ g++ -g enum0_main.cc enum0.cc -o enum-namespace >> saugustine@sterling$ gdb ./enum-namespace >> GNU gdb (GDB) 7.3.50.20111007-cvs >> ... >> (gdb) p foo::B_B >> No symbol "B_B" in namespace "foo". >> (gdb) p foo::B::B_B >> `foo::B' is not defined as an aggregate type. > > First things first: this is going to need a test case. Enclosed please find the same patch, only this time with a test case. > I've tried to reproduce this, but I cannot seem to replicate using your > instructions: > To recap: be sure to compile it like so: g++ namespace-enum-main.cc namespace-enum.cc -g The order of the source files matters. OK to commit? Sterling gdb/ChangeLog 2011-10-07 Sterling Augustine * dwarf2read.c (partial_die_parent_scope): Rearrange conditional logic. gdb/testsuite/gdb.cp/ChangeLog 2011-10-10 Sterling Augustine * gdb.cp/Makefile.in: Add namespace-enum test. * gdb.cp/namespace-enum.exp: New file. * gdb.cp/namespace-enum.c: New file. * gdb.cp/namespace-enum-main.c: New file. --001636b4325bb9af3104aef9331e Content-Type: application/octet-stream; name=enumerator-patch Content-Disposition: attachment; filename=enumerator-patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_gtm0zobb1 Content-length: 6991 SW5kZXg6IGR3YXJmMnJlYWQuYwo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD UyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2R3YXJmMnJlYWQuYyx2CnJldHJp ZXZpbmcgcmV2aXNpb24gMS41NjgKZGlmZiAtdSAtcCAtcjEuNTY4IGR3YXJm MnJlYWQuYwotLS0gZHdhcmYycmVhZC5jCTkgT2N0IDIwMTEgMTk6MzQ6MTgg LTAwMDAJMS41NjgKKysrIGR3YXJmMnJlYWQuYwkxMCBPY3QgMjAxMSAyMToz MzowOSAtMDAwMApAQCAtMzg5Nyw3ICszODk3LDEwIEBAIHBhcnRpYWxfZGll X3BhcmVudF9zY29wZSAoc3RydWN0IHBhcnRpYWwKICAgICAgIHJldHVybiBO VUxMOwogICAgIH0KIAotICBpZiAocGFyZW50LT50YWcgPT0gRFdfVEFHX25h bWVzcGFjZQorICBpZiAocGRpLT50YWcgPT0gRFdfVEFHX2VudW1lcmF0b3Ip CisgICAgLyogRW51bWVyYXRvcnMgc2hvdWxkIG5vdCBnZXQgdGhlIG5hbWUg b2YgdGhlIGVudW1lcmF0aW9uIGFzIGEgcHJlZml4LiAgKi8KKyAgICBwYXJl bnQtPnNjb3BlID0gZ3JhbmRwYXJlbnRfc2NvcGU7CisgIGVsc2UgaWYgKHBh cmVudC0+dGFnID09IERXX1RBR19uYW1lc3BhY2UKICAgICAgIHx8IHBhcmVu dC0+dGFnID09IERXX1RBR19tb2R1bGUKICAgICAgIHx8IHBhcmVudC0+dGFn ID09IERXX1RBR19zdHJ1Y3R1cmVfdHlwZQogICAgICAgfHwgcGFyZW50LT50 YWcgPT0gRFdfVEFHX2NsYXNzX3R5cGUKQEAgLTM5MTIsOSArMzkxNSw2IEBA IHBhcnRpYWxfZGllX3BhcmVudF9zY29wZSAoc3RydWN0IHBhcnRpYWwKIAkJ CQkJIGdyYW5kcGFyZW50X3Njb3BlLAogCQkJCQkgcGFyZW50LT5uYW1lLCAw LCBjdSk7CiAgICAgfQotICBlbHNlIGlmIChwYXJlbnQtPnRhZyA9PSBEV19U QUdfZW51bWVyYXRvcikKLSAgICAvKiBFbnVtZXJhdG9ycyBzaG91bGQgbm90 IGdldCB0aGUgbmFtZSBvZiB0aGUgZW51bWVyYXRpb24gYXMgYSBwcmVmaXgu ICAqLwotICAgIHBhcmVudC0+c2NvcGUgPSBncmFuZHBhcmVudF9zY29wZTsK ICAgZWxzZQogICAgIHsKICAgICAgIC8qIEZJWE1FIGRyb3cvMjAwNC0wNC0w MTogV2hhdCBzaG91bGQgd2UgYmUgZG9pbmcgd2l0aApJbmRleDogdGVzdHN1 aXRlL2dkYi5jcC9NYWtlZmlsZS5pbgo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL3Rlc3RzdWl0ZS9nZGIuY3Av TWFrZWZpbGUuaW4sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTMKZGlmZiAt dSAtcCAtcjEuMTMgTWFrZWZpbGUuaW4KLS0tIHRlc3RzdWl0ZS9nZGIuY3Av TWFrZWZpbGUuaW4JMjIgRmViIDIwMTEgMjA6NTI6NDYgLTAwMDAJMS4xMwor KysgdGVzdHN1aXRlL2dkYi5jcC9NYWtlZmlsZS5pbgkxMCBPY3QgMjAxMSAy MTozMzoxNCAtMDAwMApAQCAtNyw5ICs3LDkgQEAgRVhFQ1VUQUJMRVMgPSBh YnN0cmFjdC1vcmlnaW4gYW1iaWd1b3VzIAogCWV4Y2VwdGlvbiBleHBhbmQt c2FscyBleHRlcm4tYyBmb3JtYXR0ZWQtcmVmIGZwb2ludGVyIGdkYjEzNTUg XAogCWdkYjIzODQgaGFuZyBpbmZjYWxsLWRsb3BlbiBpbmhlcml0IGtvZW5p ZyBsb2NhbCBtLWRhdGEgbS1zdGF0aWMgXAogCW1iLWN0b3IgbWItaW5saW5l IG1iLXRlbXBsYXRlcyBtZW1iZXItcHRyIG1ldGhvZCBtaXNjIG5hbWVzcGFj ZSBcCi0JbmFtZXNwYWNlLW5lc3RlZC1pbXBvcnQgbmV4dG92ZXJ0aHJvdyBu b3BhcmFtIG5zZGVjbCBuc2ltcG9ydCBcCi0JbnNuZXN0ZWQgbnNub2ltcG9y dHMgbnNyZWN1cnMgbnNzdHJlc3MgbnN1c2luZyBvcGVyYXRvciBvcmFua2lu ZyBcCi0Jb3ZlcmxvYWQgb3ZlcmxvYWQtY29uc3Qgb3ZsZGJyZWFrIHBhc3Mt YnktcmVmIHByLTEwMjMgcHItMTIxMCBcCisJbmFtZXNwYWNlLWVudW0gbmFt ZXNwYWNlLW5lc3RlZC1pbXBvcnQgbmV4dG92ZXJ0aHJvdyBub3BhcmFtIG5z ZGVjbCBcCisJbnNpbXBvcnQgbnNuZXN0ZWQgbnNub2ltcG9ydHMgbnNyZWN1 cnMgbnNzdHJlc3MgbnN1c2luZyBvcGVyYXRvciBcCisJb3Jhbmtpbmcgb3Zl cmxvYWQgb3ZlcmxvYWQtY29uc3Qgb3ZsZGJyZWFrIHBhc3MtYnktcmVmIHBy LTEwMjMgcHItMTIxMCBcCiAJcHItNTc0IHByMTA3MjggcHIxMjAyOCBwcjk2 MzEgcHJpbnRtZXRob2QgcHNtYW5nIHB0eXBlLWN2LWNwIFwKIAlyZS1zZXQt b3ZlcmxvYWRlZCByZWYtdHlwIHJlZi10eXAyIHJ0dGkgc2hhZG93IHNtYXJ0 cCB0ZW1hcmdzIFwKIAl0ZW1wbGF0ZXMgdHJ5X2NhdGNoIHR5cGVkZWYtb3Bl cmF0b3IgdXNlcmRlZiB2aXJ0YmFzZSB2aXJ0ZnVuYyBcCkluZGV4OiB0ZXN0 c3VpdGUvZ2RiLmNwL25hbWVzcGFjZS1lbnVtLW1haW4uY2MKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQpSQ1MgZmlsZTogdGVzdHN1aXRlL2dkYi5jcC9uYW1l c3BhY2UtZW51bS1tYWluLmNjCmRpZmYgLU4gdGVzdHN1aXRlL2dkYi5jcC9u YW1lc3BhY2UtZW51bS1tYWluLmNjCi0tLSAvZGV2L251bGwJMSBKYW4gMTk3 MCAwMDowMDowMCAtMDAwMAorKysgdGVzdHN1aXRlL2dkYi5jcC9uYW1lc3Bh Y2UtZW51bS1tYWluLmNjCTEwIE9jdCAyMDExIDIxOjMzOjE0IC0wMDAwCkBA IC0wLDAgKzEsNSBAQAorbmFtZXNwYWNlIGZvbyB7CitpbnQgYWdsb2JhbCA9 IDA7Cit9CisKK2ludCBtYWluKCkge3JldHVybiAwO30KSW5kZXg6IHRlc3Rz dWl0ZS9nZGIuY3AvbmFtZXNwYWNlLWVudW0uY2MKPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQpSQ1MgZmlsZTogdGVzdHN1aXRlL2dkYi5jcC9uYW1lc3BhY2Ut ZW51bS5jYwpkaWZmIC1OIHRlc3RzdWl0ZS9nZGIuY3AvbmFtZXNwYWNlLWVu dW0uY2MKLS0tIC9kZXYvbnVsbAkxIEphbiAxOTcwIDAwOjAwOjAwIC0wMDAw CisrKyB0ZXN0c3VpdGUvZ2RiLmNwL25hbWVzcGFjZS1lbnVtLmNjCTEwIE9j dCAyMDExIDIxOjMzOjE0IC0wMDAwCkBAIC0wLDAgKzEsOCBAQAorZW51bSBB IHsgQV9BIH07CitlbnVtIEEgYSA9IEFfQTsKKworbmFtZXNwYWNlIGZvbwor eworZW51bSBCIHsgQl9CIH07CitlbnVtIEIgYiA9IEJfQjsKK307CkluZGV4 OiB0ZXN0c3VpdGUvZ2RiLmNwL25hbWVzcGFjZS1lbnVtLmV4cAo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09ClJDUyBmaWxlOiB0ZXN0c3VpdGUvZ2RiLmNwL25h bWVzcGFjZS1lbnVtLmV4cApkaWZmIC1OIHRlc3RzdWl0ZS9nZGIuY3AvbmFt ZXNwYWNlLWVudW0uZXhwCi0tLSAvZGV2L251bGwJMSBKYW4gMTk3MCAwMDow MDowMCAtMDAwMAorKysgdGVzdHN1aXRlL2dkYi5jcC9uYW1lc3BhY2UtZW51 bS5leHAJMTAgT2N0IDIwMTEgMjE6MzM6MTQgLTAwMDAKQEAgLTAsMCArMSw0 OSBAQAorIyBDb3B5cmlnaHQgMjAxMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIEluYy4KKworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsg eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgor IyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBU aGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ T1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2 ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQor IyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRw Oi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworc2V0IHRlc3RmaWxlIG5h bWVzcGFjZS1lbnVtCitzZXQgc3JjZmlsZTAgJHt0ZXN0ZmlsZX0uY2MKK3Nl dCBvYmpmaWxlMCAke3Rlc3RmaWxlfS5vCitzZXQgc3JjZmlsZTEgJHt0ZXN0 ZmlsZX0tbWFpbi5jYworc2V0IG9iamZpbGUxICR7dGVzdGZpbGV9LW1haW4u bworc2V0IGJpbmZpbGUgJHtvYmpkaXJ9LyR7c3ViZGlyfS8ke3Rlc3RmaWxl fQorCitpZiAgeyBbZ2RiX2NvbXBpbGUgIiRzcmNkaXIvJHN1YmRpci8kc3Jj ZmlsZTAiICIkb2JqZGlyLyRzdWJkaXIvJG9iamZpbGUwIiBvYmplY3Qge2Rl YnVnIGMrK31dICE9ICIiIH0geworICAgICB1bnRlc3RlZCBuYW1lc3BhY2Ut ZW51bS5leHAKKyAgICAgcmV0dXJuIC0xCit9CisKK2lmICB7IFtnZGJfY29t cGlsZSAiJHNyY2Rpci8kc3ViZGlyLyRzcmNmaWxlMSIgIiRvYmpkaXIvJHN1 YmRpci8kb2JqZmlsZTEiIG9iamVjdCB7ZGVidWcgYysrfV0gIT0gIiIgfSB7 CisgICAgIHVudGVzdGVkIG5hbWVzcGFjZS1lbnVtLmV4cAorICAgICByZXR1 cm4gLTEKK30KKworaWYgIHsgW2dkYl9jb21waWxlICIkb2JqZGlyLyRzdWJk aXIvJG9iamZpbGUwICRvYmpkaXIvJHN1YmRpci8kb2JqZmlsZTEiICIke2Jp bmZpbGV9IiBleGVjdXRhYmxlIHtkZWJ1ZyBjKyt9XSAhPSAiIiB9IHsKKyAg ICAgdW50ZXN0ZWQgbmFtZXNwYWNlLWVudW0uZXhwCisgICAgIHJldHVybiAt MQorfQorCitpZiBbZ2V0X2NvbXBpbGVyX2luZm8gJHtiaW5maWxlfSAiYysr Il0geworICAgIHJldHVybiAtMQorfQorCitnZGJfZXhpdAorZ2RiX3N0YXJ0 CitnZGJfcmVpbml0aWFsaXplX2RpciAkc3JjZGlyLyRzdWJkaXIKK2dkYl9s b2FkICR7YmluZmlsZX0KK2dkYl90ZXN0ICJwcmludCBmb286OkI6OkJfQiIg ImBmb286OkInIGlzIG5vdCBkZWZpbmVkIGFzIGFuIGFnZ3JlZ2F0ZSB0eXBl LiIKK2dkYl90ZXN0ICJwcmludCBmb286OkJfQiIgImZvbzo6Ql9CIgorZ2Ri X3Rlc3QgInByaW50IEFfQSIgIkFfQSIKKwo= --001636b4325bb9af3104aef9331e--