From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23578 invoked by alias); 14 Dec 2007 00:11:12 -0000 Received: (qmail 23568 invoked by uid 22791); 14 Dec 2007 00:11:10 -0000 X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.45.13) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 14 Dec 2007 00:11:04 +0000 Received: from zps77.corp.google.com (zps77.corp.google.com [172.25.146.77]) by smtp-out.google.com with ESMTP id lBE0Au2B010699 for ; Thu, 13 Dec 2007 16:10:56 -0800 Received: from wa-out-1112.google.com (wahj4.prod.google.com [10.114.236.4]) by zps77.corp.google.com with ESMTP id lBE08NbF018296 for ; Thu, 13 Dec 2007 16:10:56 -0800 Received: by wa-out-1112.google.com with SMTP id j4so1414801wah.1 for ; Thu, 13 Dec 2007 16:10:55 -0800 (PST) Received: by 10.114.13.1 with SMTP id 1mr2952559wam.106.1197591055918; Thu, 13 Dec 2007 16:10:55 -0800 (PST) Received: by 10.115.107.7 with HTTP; Thu, 13 Dec 2007 16:10:55 -0800 (PST) Message-ID: Date: Fri, 14 Dec 2007 00:26:00 -0000 From: "Doug Evans" To: gdb-patches@sourceware.org Subject: [RFA] patch for 2384, dangling TYPE_VPTR_BASETYPE Cc: "Jim Blandy" MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_36058_4172450.1197591055916" X-IsSubscribed: yes 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: 2007-12/txt/msg00180.txt.bz2 ------=_Part_36058_4172450.1197591055916 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Content-length: 569 I think(!) this patch is reasonable. It seems to be in line with what Jim has in mind (based on my interpretation of your comments Jim on the gdb list - please correct me if I'm wrong of course). When gdb resolves type information for class "derived" from objfile gdb2384 (from the testcase), it fills in the TYPE_VPTR_BASETYPE field with class "base" from objfile gdb2384-base.so. When the program is rerun the type information for base-in-so-base.so is discarded leaving TYPE_VPTR_BASETYPE dangling. Ok to check in? Or any suggestions for what's needed instead? ------=_Part_36058_4172450.1197591055916 Content-Type: text/x-patch; name=gdb-071213-2384-1.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fa5ys3170 Content-Disposition: attachment; filename=gdb-071213-2384-1.patch Content-length: 7674 MjAwNy0xMi0xMyAgRG91ZyBFdmFucyAgPGRqZUBnb29nbGUuY29tPgoKCVBS IDIzODQKCSogZ2RidHlwZXMuYyAoZmlsbF9pbl92cHRyX2ZpZWxkbm8pOiBE b24ndCBzZXQgVFlQRV9WUFRSX0ZJRUxETk8sCglUWVBFX1ZQVFJfQkFTRVRZ UEUgaWYgZnJvbSBkaWZmZXJlbnQgb2JqZmlsZS4KCgkqIGdkYi5jcC9nZGIy Mzg0LmV4cDogTmV3IGZpbGUuCgkqIGdkYi5jcC9nZGIyMzg0LmNjOiBOZXcg ZmlsZS4KCSogZ2RiLmNwL2dkYjIzODQtYmFzZS5oOiBOZXcgZmlsZS4KCSog Z2RiLmNwL2dkYjIzODQtYmFzZS5jYzogTmV3IGZpbGUuCgpJbmRleDogZ2Ri dHlwZXMuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zz L3NyYy9zcmMvZ2RiL2dkYnR5cGVzLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9u IDEuMTQwCmRpZmYgLXUgLXAgLXUgLXAgLXIxLjE0MCBnZGJ0eXBlcy5jCi0t LSBnZGJ0eXBlcy5jCTQgRGVjIDIwMDcgMjM6MzM6MDAgLTAwMDAJMS4xNDAK KysrIGdkYnR5cGVzLmMJMTMgRGVjIDIwMDcgMjM6NTk6MzUgLTAwMDAKQEAg LTEzMDcsOCArMTMwNywxMyBAQCBmaWxsX2luX3ZwdHJfZmllbGRubyAoc3Ry dWN0IHR5cGUgKnR5cGUpCiAJICBmaWxsX2luX3ZwdHJfZmllbGRubyAoYmFz ZWNsYXNzKTsKIAkgIGlmIChUWVBFX1ZQVFJfRklFTEROTyAoYmFzZWNsYXNz KSA+PSAwKQogCSAgICB7Ci0JICAgICAgVFlQRV9WUFRSX0ZJRUxETk8gKHR5 cGUpID0gVFlQRV9WUFRSX0ZJRUxETk8gKGJhc2VjbGFzcyk7Ci0JICAgICAg VFlQRV9WUFRSX0JBU0VUWVBFICh0eXBlKSA9IFRZUEVfVlBUUl9CQVNFVFlQ RSAoYmFzZWNsYXNzKTsKKwkgICAgICAvKiBJZiB0aGUgdHlwZSBjb21lcyBm cm9tIGEgZGlmZmVyZW50IG9iamZpbGUgd2UgY2FuJ3QgdXNlIGl0CisJCSBo ZXJlLCBpdCBtYXkgaGF2ZSBhIGRpZmZlcmVudCBsaWZldGltZS4gUFIgMjM4 NCAqLworCSAgICAgIGlmIChUWVBFX09CSkZJTEUgKHR5cGUpID09IFRZUEVf T0JKRklMRSAoYmFzZWNsYXNzKSkKKwkJeworCQkgIFRZUEVfVlBUUl9GSUVM RE5PICh0eXBlKSA9IFRZUEVfVlBUUl9GSUVMRE5PIChiYXNlY2xhc3MpOwor CQkgIFRZUEVfVlBUUl9CQVNFVFlQRSAodHlwZSkgPSBUWVBFX1ZQVFJfQkFT RVRZUEUgKGJhc2VjbGFzcyk7CisJCX0KIAkgICAgICBicmVhazsKIAkgICAg fQogCX0KSW5kZXg6IHRlc3RzdWl0ZS9nZGIuY3AvZ2RiMjM4NC1iYXNlLmNj Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IHRlc3RzdWl0ZS9n ZGIuY3AvZ2RiMjM4NC1iYXNlLmNjCmRpZmYgLU4gdGVzdHN1aXRlL2dkYi5j cC9nZGIyMzg0LWJhc2UuY2MKLS0tIC9kZXYvbnVsbAkxIEphbiAxOTcwIDAw OjAwOjAwIC0wMDAwCisrKyB0ZXN0c3VpdGUvZ2RiLmNwL2dkYjIzODQtYmFz ZS5jYwkxMyBEZWMgMjAwNyAyMzo1OTozNSAtMDAwMApAQCAtMCwwICsxLDEy IEBACisjaW5jbHVkZSAiZ2RiMjM4NC1iYXNlLmgiCisKK2Jhc2U6OmJhc2Ug KGludCBfeCkKKyAgOiB4IChfeCkKK3sKK30KKworaW50CitiYXNlOjptZXRo ICgpCit7CisgIHJldHVybiB4OworfQpJbmRleDogdGVzdHN1aXRlL2dkYi5j cC9nZGIyMzg0LWJhc2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm aWxlOiB0ZXN0c3VpdGUvZ2RiLmNwL2dkYjIzODQtYmFzZS5oCmRpZmYgLU4g dGVzdHN1aXRlL2dkYi5jcC9nZGIyMzg0LWJhc2UuaAotLS0gL2Rldi9udWxs CTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAwMDAKKysrIHRlc3RzdWl0ZS9nZGIu Y3AvZ2RiMjM4NC1iYXNlLmgJMTMgRGVjIDIwMDcgMjM6NTk6MzUgLTAwMDAK QEAgLTAsMCArMSw3IEBACitjbGFzcyBiYXNlCit7CisgcHVibGljOgorICBi YXNlIChpbnQgX3gpOworICBpbnQgeDsKKyAgdmlydHVhbCBpbnQgbWV0aCAo KTsKK307CkluZGV4OiB0ZXN0c3VpdGUvZ2RiLmNwL2dkYjIzODQuY2MKPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogdGVzdHN1aXRlL2dkYi5j cC9nZGIyMzg0LmNjCmRpZmYgLU4gdGVzdHN1aXRlL2dkYi5jcC9nZGIyMzg0 LmNjCi0tLSAvZGV2L251bGwJMSBKYW4gMTk3MCAwMDowMDowMCAtMDAwMAor KysgdGVzdHN1aXRlL2dkYi5jcC9nZGIyMzg0LmNjCTEzIERlYyAyMDA3IDIz OjU5OjM1IC0wMDAwCkBAIC0wLDAgKzEsMjIgQEAKKyNpbmNsdWRlICJnZGIy Mzg0LWJhc2UuaCIKKworY2xhc3MgZGVyaXZlZCA6IHB1YmxpYyBiYXNlCit7 CisgcHVibGljOgorICBkZXJpdmVkIChpbnQpOworfTsKKworZGVyaXZlZDo6 ZGVyaXZlZCAoaW50IF94KQorICA6IGJhc2UgKF94KQoreworfQorCitpbnQg ZzsKKworaW50CittYWluICgpCit7CisgIGRlcml2ZWQgZCAoNDIpOworICBn ID0gZC5tZXRoICgpOyAvLyBzZXQgYnJlYWtwb2ludCBoZXJlCisgIHJldHVy biAwOworfQpJbmRleDogdGVzdHN1aXRlL2dkYi5jcC9nZGIyMzg0LmV4cAo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiB0ZXN0c3VpdGUvZ2Ri LmNwL2dkYjIzODQuZXhwCmRpZmYgLU4gdGVzdHN1aXRlL2dkYi5jcC9nZGIy Mzg0LmV4cAotLS0gL2Rldi9udWxsCTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAw MDAKKysrIHRlc3RzdWl0ZS9nZGIuY3AvZ2RiMjM4NC5leHAJMTMgRGVjIDIw MDcgMjM6NTk6MzUgLTAwMDAKQEAgLTAsMCArMSw5OSBAQAorIyBDb3B5cmln aHQgMjAwNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworIyBU aGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIg dmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9y IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQor IyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz LgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRo aXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcv bGljZW5zZXMvPi4KKworIyBXaGVuIGdkYiByZXNvbHZlcyB0eXBlIGluZm9y bWF0aW9uIGZvciBjbGFzcyAiZGVyaXZlZCIgZnJvbSBvYmpmaWxlCisjIGdk YjIzODQsIGl0IHVzZSB0byBmaWxsIGluIHRoZSBUWVBFX1ZQVFJfQkFTRVRZ UEUgZmllbGQgd2l0aCBjbGFzcyAiYmFzZSIKKyMgZnJvbSBvYmpmaWxlIGdk YjIzODQtYmFzZS5zby4gIFdoZW4gdGhlIHByb2dyYW0gaXMgcmVydW4gdGhl IHR5cGUKKyMgaW5mb3JtYXRpb24gZm9yIGJhc2UtaW4tc28tYmFzZS5zbyBp cyBkaXNjYXJkZWQgbGVhdmluZworIyBUWVBFX1ZQVFJfQkFTRVRZUEUgZGFu Z2xpbmcuCisKK2lmICR0cmFjZWxldmVsIHRoZW4geworICAgIHN0cmFjZSAk dHJhY2VsZXZlbAorfQorCitpZiB7IFtza2lwX2NwbHVzX3Rlc3RzXSB9IHsg Y29udGludWUgfQorCitzZXQgcHJtc19pZCAyMzg0CitzZXQgYnVnX2lkIDAK Kworc2V0IHRlc3RmaWxlICJnZGIyMzg0Igorc2V0IHNyY2ZpbGUgJHt0ZXN0 ZmlsZX0uY2MKK3NldCBiaW5maWxlICRvYmpkaXIvJHN1YmRpci8kdGVzdGZp bGUKKworc2V0IGxpYmZpbGUgImdkYjIzODQtYmFzZSIKK3NldCBsaWJzcmNm aWxlICR7bGliZmlsZX0uY2MKK3NldCBzb2ZpbGUgJG9iamRpci8kc3ViZGly LyIke2xpYmZpbGV9LnNvIgorCisjIENyZWF0ZSBhbmQgc291cmNlIHRoZSBm aWxlIHRoYXQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbXBp bGVyCisjIHVzZWQgdG8gY29tcGlsZSB0aGUgdGVzdCBjYXNlLgoraWYgW2dl dF9jb21waWxlcl9pbmZvICR7YmluZmlsZX0gImMrKyJdIHsKKyAgICByZXR1 cm4gLTEKK30KKworaWYgeyBbZ2RiX2NvbXBpbGVfc2hsaWIgJHNyY2Rpci8k c3ViZGlyLyRsaWJzcmNmaWxlICRzb2ZpbGUge2RlYnVnIGMrK31dICE9ICIi CisgICAgIHx8IFtnZGJfY29tcGlsZSAkc3JjZGlyLyRzdWJkaXIvJHNyY2Zp bGUgJGJpbmZpbGUgZXhlY3V0YWJsZSBbbGlzdCBkZWJ1ZyAiYysrIiBzaGxp Yj0ke3NvZmlsZX1dXSAhPSAiIn0geworICAgIHVudGVzdGVkIGdkYjIzODQu ZXhwCisgICAgcmV0dXJuIC0xCit9CisKK2dkYl9leGl0CitnZGJfc3RhcnQK K2dkYl9yZWluaXRpYWxpemVfZGlyICRzcmNkaXIvJHN1YmRpcgorZ2RiX2xv YWQgJHtiaW5maWxlfQorI2dkYl9sb2FkX3NobGlicyAke3NvZmlsZX0KKwor c2V0IGJwX2xvY2F0aW9uIFtnZGJfZ2V0X2xpbmVfbnVtYmVyICJzZXQgYnJl YWtwb2ludCBoZXJlIl0KKworIyBTZXQgYSBicmVha3BvaW50IHdpdGggbXVs dGlwbGUgbG9jYXRpb25zLgorCitnZGJfdGVzdCAiYnJlYWsgJHNyY2ZpbGU6 JGJwX2xvY2F0aW9uIiBcCisgICAgIkJyZWFrcG9pbnQuKmF0LiogZmlsZSAu KiRzcmNmaWxlLCBsaW5lLioiIFwKKyAgICAic2V0IGJyZWFrcG9pbnQiCisK K2dkYl9ydW5fY21kCitnZGJfZXhwZWN0IHsKKyAgICAtcmUgIkJyZWFrcG9p bnQgXFswLTlcXSssLiptYWluIFxcKC4qXFwpLiokZ2RiX3Byb21wdCAkIiB7 CisJcGFzcyAicnVuIHRvIGJyZWFrcG9pbnQiCisgICAgfQorICAgIC1yZSAi JGdkYl9wcm9tcHQgJCIgeworCWZhaWwgInJ1biB0byBicmVha3BvaW50Igor ICAgIH0KKyAgICB0aW1lb3V0IHsKKwlmYWlsICJydW4gdG8gYnJlYWtwb2lu dCAodGltZW91dCkiCisgICAgfQorfQorCitnZGJfdGVzdCAicHJpbnQgZC5t ZXRoICgpIiBcCisgICAgIi4qNDIuKiIgXAorICAgICJwcmludCBkLm1ldGgg KCkiCisKKyMgTm93IHRyeSBhZ2Fpbi4gIGdkYidzIHdpdGhvdXQgdGhlIGZp eCB3aWxsIGhvcGVmdWxseSBzZWd2IGhlcmUKKworZ2RiX3J1bl9jbWQKK2dk Yl9leHBlY3QgeworICAgIC1yZSAiQnJlYWtwb2ludCBcWzAtOVxdKywuKm1h aW4gXFwoLipcXCkuKiRnZGJfcHJvbXB0ICQiIHsKKwlwYXNzICJydW4gdG8g YnJlYWtwb2ludCAjMiIKKyAgICB9CisgICAgLXJlICIkZ2RiX3Byb21wdCAk IiB7CisJZmFpbCAicnVuIHRvIGJyZWFrcG9pbnQgIzIiCisgICAgfQorICAg IHRpbWVvdXQgeworCWZhaWwgInJ1biB0byBicmVha3BvaW50ICMyICh0aW1l b3V0KSIKKyAgICB9Cit9CisKK2dkYl90ZXN0ICJwcmludCBkLm1ldGggKCki IFwKKyAgICAiLio0Mi4qIiBcCisgICAgImdkYjIzODQiCg== ------=_Part_36058_4172450.1197591055916--