From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Antipov Newsgroups: gmane.emacs.devel Subject: Re: Trying coccinelle Date: Fri, 22 Jun 2012 09:57:41 +0400 Message-ID: <4FE40955.1030105@yandex.ru> References: <4FDF5AF2.2080503@yandex.ru> <4FDFFFAA.8030505@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------080905050708020006070900" X-Trace: dough.gmane.org 1340344540 32744 80.91.229.3 (22 Jun 2012 05:55:40 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 22 Jun 2012 05:55:40 +0000 (UTC) To: Emacs development discussions Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 22 07:55:40 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ShwqG-0005Hk-AC for ged-emacs-devel@m.gmane.org; Fri, 22 Jun 2012 07:55:36 +0200 Original-Received: from localhost ([::1]:42875 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShwqG-00006X-7W for ged-emacs-devel@m.gmane.org; Fri, 22 Jun 2012 01:55:36 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:47200) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShwqA-00005x-75 for emacs-devel@gnu.org; Fri, 22 Jun 2012 01:55:33 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Shwq4-0007sx-AI for emacs-devel@gnu.org; Fri, 22 Jun 2012 01:55:29 -0400 Original-Received: from forward12.mail.yandex.net ([95.108.130.94]:48288) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Shwq3-0007rt-N2 for emacs-devel@gnu.org; Fri, 22 Jun 2012 01:55:24 -0400 Original-Received: from smtp12.mail.yandex.net (smtp12.mail.yandex.net [95.108.131.191]) by forward12.mail.yandex.net (Yandex) with ESMTP id A8E4DC22DD5 for ; Fri, 22 Jun 2012 09:55:20 +0400 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1340344520; bh=D36txPvjf53o00UA+6K60J5W7H1npCFzNPKsCALTFTQ=; h=Message-ID:Date:From:MIME-Version:To:Subject:References: In-Reply-To:Content-Type; b=U7WcuyWfJ7YPPdc/KrTPT2kwmOXJdg6un5IBpZGc/eJRNgF5y9jQyZHOci4mOXLsj 2jrzoxlONYnCqGRDkPDUJfg6EvNT2a4wmXttetY9XnZAkthGYfsa5Jms/zzzqr1HE0 VIzxRnboV0ib5+NClfuNTLQ7bzWRMBgz2jPn1e/4= Original-Received: from smtp12.mail.yandex.net (localhost [127.0.0.1]) by smtp12.mail.yandex.net (Yandex) with ESMTP id 9AC2816A04AF for ; Fri, 22 Jun 2012 09:55:20 +0400 (MSK) Original-Received: from 213-148-21-55.gelicon.ru (213-148-21-55.gelicon.ru [213.148.21.55]) by smtp12.mail.yandex.net (nwsmtp/Yandex) with ESMTP id tKOigI4Y-tKOun81J; Fri, 22 Jun 2012 09:55:20 +0400 X-Yandex-Rcpt-Suid: emacs-devel@gnu.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1340344520; bh=D36txPvjf53o00UA+6K60J5W7H1npCFzNPKsCALTFTQ=; h=Message-ID:Date:From:User-Agent:MIME-Version:To:Subject: References:In-Reply-To:Content-Type; b=UsoKdF939JeSev/zsQ5/uSWeaQtaA6jCGOQYDETKELgye7B35cM4ndhXCNfgcBaVs SVvqUAz7AtwVyFuFsvoQXd6xjQ4LEgFA/41HPTmOn706KefJhc0lCLUEIdN8UBN3wm u3u0tkgOnYDdvEA7oob7VO6pHJh+1jdciXWFDrEs= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120614 Thunderbird/13.0.1 In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 95.108.130.94 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:151078 Archived-At: This is a multi-part message in MIME format. --------------080905050708020006070900 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Here is another cleanup of some buffer-related code designed with the help from this nice tool. Dmitry --------------080905050708020006070900 Content-Type: text/plain; charset=UTF-8; name="buffer_cleanup.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="buffer_cleanup.patch" PT09IG1vZGlmaWVkIGZpbGUgJ3NyYy9idWZmZXIuYycKLS0tIHNyYy9idWZmZXIuYwkyMDEy LTA2LTE4IDA3OjIwOjE5ICswMDAwCisrKyBzcmMvYnVmZmVyLmMJMjAxMi0wNi0yMiAwNToz NDoyMyArMDAwMApAQCAtMTA0OSwxNCArMTA0OSw3IEBACiAgIHJlZ2lzdGVyIHN0cnVjdCBi dWZmZXIgKmJ1ZjsKICAgcmVnaXN0ZXIgTGlzcF9PYmplY3QgcmVzdWx0OwogCi0gIGlmIChO SUxQIChidWZmZXIpKQotICAgIGJ1ZiA9IGN1cnJlbnRfYnVmZmVyOwotICBlbHNlCi0gICAg ewotICAgICAgQ0hFQ0tfQlVGRkVSIChidWZmZXIpOwotICAgICAgYnVmID0gWEJVRkZFUiAo YnVmZmVyKTsKLSAgICB9Ci0KKyAgYnVmID0gYnVmZmVyX29yX2N1cnJlbnQgKGJ1ZmZlcik7 CiAgIHJlc3VsdCA9IGJ1ZmZlcl9saXNwX2xvY2FsX3ZhcmlhYmxlcyAoYnVmKTsKIAogICAv KiBBZGQgb24gYWxsIHRoZSB2YXJpYWJsZXMgc3RvcmVkIGluIHNwZWNpYWwgc2xvdHMuICAq LwpAQCAtMTA5MSwxNSArMTA4NCw3IEBACiBObyBhcmd1bWVudCBvciBuaWwgYXMgYXJndW1l bnQgbWVhbnMgdXNlIGN1cnJlbnQgYnVmZmVyIGFzIEJVRkZFUi4gICovKQogICAocmVnaXN0 ZXIgTGlzcF9PYmplY3QgYnVmZmVyKQogewotICByZWdpc3RlciBzdHJ1Y3QgYnVmZmVyICpi dWY7Ci0gIGlmIChOSUxQIChidWZmZXIpKQotICAgIGJ1ZiA9IGN1cnJlbnRfYnVmZmVyOwot ICBlbHNlCi0gICAgewotICAgICAgQ0hFQ0tfQlVGRkVSIChidWZmZXIpOwotICAgICAgYnVm ID0gWEJVRkZFUiAoYnVmZmVyKTsKLSAgICB9Ci0KKyAgcmVnaXN0ZXIgc3RydWN0IGJ1ZmZl ciAqYnVmID0gYnVmZmVyX29yX2N1cnJlbnQgKGJ1ZmZlcik7CiAgIHJldHVybiBCVUZfU0FW RV9NT0RJRkYgKGJ1ZikgPCBCVUZfTU9ESUZGIChidWYpID8gUXQgOiBRbmlsOwogfQogCkBA IC0xMjA4LDE2ICsxMTkzLDcgQEAKIE5vIGFyZ3VtZW50IG9yIG5pbCBhcyBhcmd1bWVudCBt ZWFucyB1c2UgY3VycmVudCBidWZmZXIgYXMgQlVGRkVSLiAgKi8pCiAgIChyZWdpc3RlciBM aXNwX09iamVjdCBidWZmZXIpCiB7Ci0gIHJlZ2lzdGVyIHN0cnVjdCBidWZmZXIgKmJ1ZjsK LSAgaWYgKE5JTFAgKGJ1ZmZlcikpCi0gICAgYnVmID0gY3VycmVudF9idWZmZXI7Ci0gIGVs c2UKLSAgICB7Ci0gICAgICBDSEVDS19CVUZGRVIgKGJ1ZmZlcik7Ci0gICAgICBidWYgPSBY QlVGRkVSIChidWZmZXIpOwotICAgIH0KLQotICByZXR1cm4gbWFrZV9udW1iZXIgKEJVRl9N T0RJRkYgKGJ1ZikpOworICByZXR1cm4gbWFrZV9udW1iZXIgKEJVRl9NT0RJRkYgKGJ1ZmZl cl9vcl9jdXJyZW50IChidWZmZXIpKSk7CiB9CiAKIERFRlVOICgiYnVmZmVyLWNoYXJzLW1v ZGlmaWVkLXRpY2siLCBGYnVmZmVyX2NoYXJzX21vZGlmaWVkX3RpY2ssCkBAIC0xMjMyLDE2 ICsxMjA4LDcgQEAKIGJ1ZmZlciBhcyBCVUZGRVIuICAqLykKICAgKHJlZ2lzdGVyIExpc3Bf T2JqZWN0IGJ1ZmZlcikKIHsKLSAgcmVnaXN0ZXIgc3RydWN0IGJ1ZmZlciAqYnVmOwotICBp ZiAoTklMUCAoYnVmZmVyKSkKLSAgICBidWYgPSBjdXJyZW50X2J1ZmZlcjsKLSAgZWxzZQot ICAgIHsKLSAgICAgIENIRUNLX0JVRkZFUiAoYnVmZmVyKTsKLSAgICAgIGJ1ZiA9IFhCVUZG RVIgKGJ1ZmZlcik7Ci0gICAgfQotCi0gIHJldHVybiBtYWtlX251bWJlciAoQlVGX0NIQVJT X01PRElGRiAoYnVmKSk7CisgIHJldHVybiBtYWtlX251bWJlciAoQlVGX0NIQVJTX01PRElG RiAoYnVmZmVyX29yX2N1cnJlbnQgKGJ1ZmZlcikpKTsKIH0KIAwKIERFRlVOICgicmVuYW1l LWJ1ZmZlciIsIEZyZW5hbWVfYnVmZmVyLCBTcmVuYW1lX2J1ZmZlciwgMSwgMiwKQEAgLTM1 ODAsMTcgKzM1NDcsMTEgQEAKICAgKExpc3BfT2JqZWN0IGJlZywgTGlzcF9PYmplY3QgZW5k LCBMaXNwX09iamVjdCBidWZmZXIsIExpc3BfT2JqZWN0IGZyb250X2FkdmFuY2UsIExpc3Bf T2JqZWN0IHJlYXJfYWR2YW5jZSkKIHsKICAgTGlzcF9PYmplY3Qgb3ZlcmxheTsKLSAgc3Ry dWN0IGJ1ZmZlciAqYjsKKyAgc3RydWN0IGJ1ZmZlciAqYiA9IGJ1ZmZlcl9vcl9jdXJyZW50 IChidWZmZXIpOwogCi0gIGlmIChOSUxQIChidWZmZXIpKQotICAgIFhTRVRCVUZGRVIgKGJ1 ZmZlciwgY3VycmVudF9idWZmZXIpOwotICBlbHNlCi0gICAgQ0hFQ0tfQlVGRkVSIChidWZm ZXIpOwotICBpZiAoTUFSS0VSUCAoYmVnKQotICAgICAgJiYgISBFUSAoRm1hcmtlcl9idWZm ZXIgKGJlZyksIGJ1ZmZlcikpCisgIGlmIChNQVJLRVJQIChiZWcpICYmIFhNQVJLRVIgKGJl ZyktPmJ1ZmZlciAhPSBiKQogICAgIGVycm9yICgiTWFya2VyIHBvaW50cyBpbnRvIHdyb25n IGJ1ZmZlciIpOwotICBpZiAoTUFSS0VSUCAoZW5kKQotICAgICAgJiYgISBFUSAoRm1hcmtl cl9idWZmZXIgKGVuZCksIGJ1ZmZlcikpCisgIGlmIChNQVJLRVJQIChlbmQpICYmIFhNQVJL RVIgKGVuZCktPmJ1ZmZlciAhPSBiKQogICAgIGVycm9yICgiTWFya2VyIHBvaW50cyBpbnRv IHdyb25nIGJ1ZmZlciIpOwogCiAgIENIRUNLX05VTUJFUl9DT0VSQ0VfTUFSS0VSIChiZWcp OwpAQCAtMzYwMiw4ICszNTYzLDcgQEAKICAgICAgIHRlbXAgPSBiZWc7IGJlZyA9IGVuZDsg ZW5kID0gdGVtcDsKICAgICB9CiAKLSAgYiA9IFhCVUZGRVIgKGJ1ZmZlcik7Ci0KKyAgWFNF VEJVRkZFUiAoYnVmZmVyLCBiKTsKICAgYmVnID0gRnNldF9tYXJrZXIgKEZtYWtlX21hcmtl ciAoKSwgYmVnLCBidWZmZXIpOwogICBlbmQgPSBGc2V0X21hcmtlciAoRm1ha2VfbWFya2Vy ICgpLCBlbmQsIGJ1ZmZlcik7CiAKQEAgLTM3MDUsMTggKzM2NjUsMTQgQEAKICAgQ0hFQ0tf T1ZFUkxBWSAob3ZlcmxheSk7CiAgIGlmIChOSUxQIChidWZmZXIpKQogICAgIGJ1ZmZlciA9 IEZtYXJrZXJfYnVmZmVyIChPVkVSTEFZX1NUQVJUIChvdmVybGF5KSk7Ci0gIGlmIChOSUxQ IChidWZmZXIpKQotICAgIFhTRVRCVUZGRVIgKGJ1ZmZlciwgY3VycmVudF9idWZmZXIpOwot ICBDSEVDS19CVUZGRVIgKGJ1ZmZlcik7CisgIGIgPSBidWZmZXJfb3JfY3VycmVudCAoYnVm ZmVyKTsKIAotICBpZiAoTklMUCAoRmJ1ZmZlcl9saXZlX3AgKGJ1ZmZlcikpKQorICBpZiAo TklMUCAoQlZBUiAoYiwgbmFtZSkpKQogICAgIGVycm9yICgiQXR0ZW1wdCB0byBtb3ZlIG92 ZXJsYXkgdG8gYSBkZWFkIGJ1ZmZlciIpOwogCi0gIGlmIChNQVJLRVJQIChiZWcpCi0gICAg ICAmJiAhIEVRIChGbWFya2VyX2J1ZmZlciAoYmVnKSwgYnVmZmVyKSkKKyAgaWYgKE1BUktF UlAgKGJlZykgJiYgWE1BUktFUiAoYmVnKS0+YnVmZmVyICE9IGIpCiAgICAgZXJyb3IgKCJN YXJrZXIgcG9pbnRzIGludG8gd3JvbmcgYnVmZmVyIik7Ci0gIGlmIChNQVJLRVJQIChlbmQp Ci0gICAgICAmJiAhIEVRIChGbWFya2VyX2J1ZmZlciAoZW5kKSwgYnVmZmVyKSkKKyAgaWYg KE1BUktFUlAgKGVuZCkgJiYgWE1BUktFUiAoZW5kKS0+YnVmZmVyICE9IGIpCiAgICAgZXJy b3IgKCJNYXJrZXIgcG9pbnRzIGludG8gd3JvbmcgYnVmZmVyIik7CiAKICAgQ0hFQ0tfTlVN QkVSX0NPRVJDRV9NQVJLRVIgKGJlZyk7CkBAIC0zNzMxLDcgKzM2ODcsNiBAQAogICBzcGVj YmluZCAoUWluaGliaXRfcXVpdCwgUXQpOwogCiAgIG9idWZmZXIgPSBGbWFya2VyX2J1ZmZl ciAoT1ZFUkxBWV9TVEFSVCAob3ZlcmxheSkpOwotICBiID0gWEJVRkZFUiAoYnVmZmVyKTsK IAogICBpZiAoIU5JTFAgKG9idWZmZXIpKQogICAgIHsKCj09PSBtb2RpZmllZCBmaWxlICdz cmMvYnVmZmVyLmgnCi0tLSBzcmMvYnVmZmVyLmgJMjAxMi0wNi0xNiAxMjoyNDoxNSArMDAw MAorKysgc3JjL2J1ZmZlci5oCTIwMTItMDYtMjIgMDU6Mzc6MjggKzAwMDAKQEAgLTg4Niw2 ICs4ODYsMTcgQEAKIGV4dGVybiB2b2lkIGZpeF9vdmVybGF5c19iZWZvcmUgKHN0cnVjdCBi dWZmZXIgKiwgcHRyZGlmZl90LCBwdHJkaWZmX3QpOwogZXh0ZXJuIHZvaWQgbW1hcF9zZXRf dmFycyAoaW50KTsKIAorLyogR2V0IGJ1ZmZlciBwb2ludGVyIGZyb20gQlVGLCBvciBjdXJy ZW50IGJ1ZmZlciBwb2ludGVyIGlmIEJVRiBpcyBuaWwuICAqLworCitzdGF0aWMgaW5saW5l IHN0cnVjdCBidWZmZXIgKgorYnVmZmVyX29yX2N1cnJlbnQgKExpc3BfT2JqZWN0IGJ1ZikK K3sKKyAgaWYgKE5JTFAgKGJ1ZikpCisgICAgcmV0dXJuIGN1cnJlbnRfYnVmZmVyOworICBD SEVDS19CVUZGRVIgKGJ1Zik7CisgIHJldHVybiBYQlVGRkVSIChidWYpOworfQorCiAvKiBH ZXQgb3ZlcmxheXMgYXQgUE9TTiBpbnRvIGFycmF5IE9WRVJMQVlTIHdpdGggTk9WRVJMQVlT IGVsZW1lbnRzLgogICAgSWYgTkVYVFAgaXMgbm9uLU5VTEwsIHJldHVybiBuZXh0IG92ZXJs YXkgdGhlcmUuCiAgICBTZWUgb3ZlcmxheV9hdCBhcmcgQ0hBTkdFX1JFUSBmb3IgbWVhbmlu ZyBvZiBDSFJRIGFyZy4gICovCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3JjL2RhdGEuYycKLS0t IHNyYy9kYXRhLmMJMjAxMi0wNi0xOSAxNjo1NjoyOCArMDAwMAorKysgc3JjL2RhdGEuYwky MDEyLTA2LTIyIDA0OjU1OjU0ICswMDAwCkBAIC0xODI3LDE0ICsxODI3LDcgQEAKICAgcmVn aXN0ZXIgc3RydWN0IGJ1ZmZlciAqYnVmOwogICBzdHJ1Y3QgTGlzcF9TeW1ib2wgKnN5bTsK IAotICBpZiAoTklMUCAoYnVmZmVyKSkKLSAgICBidWYgPSBjdXJyZW50X2J1ZmZlcjsKLSAg ZWxzZQotICAgIHsKLSAgICAgIENIRUNLX0JVRkZFUiAoYnVmZmVyKTsKLSAgICAgIGJ1ZiA9 IFhCVUZGRVIgKGJ1ZmZlcik7Ci0gICAgfQotCisgIGJ1ZiA9IGJ1ZmZlcl9vcl9jdXJyZW50 IChidWZmZXIpOwogICBDSEVDS19TWU1CT0wgKHZhcmlhYmxlKTsKICAgc3ltID0gWFNZTUJP TCAodmFyaWFibGUpOwogCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3JjL2ZpbGVpby5jJwotLS0g c3JjL2ZpbGVpby5jCTIwMTItMDYtMjAgMjE6MjA6MDYgKzAwMDAKKysrIHNyYy9maWxlaW8u YwkyMDEyLTA2LTIyIDA0OjU1OjU5ICswMDAwCkBAIC01MDgxLDEzICs1MDgxLDcgQEAKICAg TGlzcF9PYmplY3QgaGFuZGxlcjsKICAgTGlzcF9PYmplY3QgZmlsZW5hbWU7CiAKLSAgaWYg KE5JTFAgKGJ1ZikpCi0gICAgYiA9IGN1cnJlbnRfYnVmZmVyOwotICBlbHNlCi0gICAgewot ICAgICAgQ0hFQ0tfQlVGRkVSIChidWYpOwotICAgICAgYiA9IFhCVUZGRVIgKGJ1Zik7Ci0g ICAgfQorICBiID0gYnVmZmVyX29yX2N1cnJlbnQgKGJ1Zik7CiAKICAgaWYgKCFTVFJJTkdQ IChCVkFSIChiLCBmaWxlbmFtZSkpKSByZXR1cm4gUXQ7CiAgIGlmIChiLT5tb2R0aW1lID09 IDApIHJldHVybiBRdDsKCj09PSBtb2RpZmllZCBmaWxlICdzcmMveGRpc3AuYycKLS0tIHNy Yy94ZGlzcC5jCTIwMTItMDYtMTkgMDY6NDk6NTAgKzAwMDAKKysrIHNyYy94ZGlzcC5jCTIw MTItMDYtMjIgMDU6MDk6MDYgKzAwMDAKQEAgLTE5ODE2LDE1ICsxOTgxNiw5IEBACiBTZWUg YWxzbyBgYmlkaS1wYXJhZ3JhcGgtZGlyZWN0aW9uJy4gICovKQogICAoTGlzcF9PYmplY3Qg YnVmZmVyKQogewotICBzdHJ1Y3QgYnVmZmVyICpidWYgPSBjdXJyZW50X2J1ZmZlcjsKKyAg c3RydWN0IGJ1ZmZlciAqYnVmID0gYnVmZmVyX29yX2N1cnJlbnQgKGJ1ZmZlcik7CiAgIHN0 cnVjdCBidWZmZXIgKm9sZCA9IGJ1ZjsKIAotICBpZiAoISBOSUxQIChidWZmZXIpKQotICAg IHsKLSAgICAgIENIRUNLX0JVRkZFUiAoYnVmZmVyKTsKLSAgICAgIGJ1ZiA9IFhCVUZGRVIg KGJ1ZmZlcik7Ci0gICAgfQotCiAgIGlmIChOSUxQIChCVkFSIChidWYsIGJpZGlfZGlzcGxh eV9yZW9yZGVyaW5nKSkKICAgICAgIHx8IE5JTFAgKEJWQVIgKGJ1ZiwgZW5hYmxlX211bHRp Ynl0ZV9jaGFyYWN0ZXJzKSkKICAgICAgIC8qIFdoZW4gd2UgYXJlIGxvYWRpbmcgbG9hZHVw LmVsLCB0aGUgY2hhcmFjdGVyIHByb3BlcnR5IHRhYmxlcwoK --------------080905050708020006070900--