[PATCH] Recognize binary integer literals
Petr Písař <[email protected]> Mon, 3 Dec 2018 14:35:27 +0100
| Newsgroups | gmane.comp.gnu.indent.bugs |
|---|---|
| Message-ID | <[email protected]> |
U29tZSBjb21waWxlcnMgc3VwcG9ydCBiaW5hcnkgY29uc3RhbnRzIHdyaXR0ZW4gYXMgMGIxIG9y IDBCMS4gVGhpcyBpcwp0aGUgY2FzZSBvZiBHQ0MKPGh0dHBzOi8vZ2NjLmdudS5vcmcvb25saW5l ZG9jcy9nY2MvQmluYXJ5LWNvbnN0YW50cy5odG1sPi4KClRoaXMgaXMgYmFzZWQgb24gYSBwYXRj aCBwcm92aWRlZCBieSBKb3NlZiBLdWJpbiA8ZW50b21vbG9nQGNlbnRydW0uY3o+LgoKPGh0dHBz Oi8vYnVnemlsbGEucmVkaGF0LmNvbS9zaG93X2J1Zy5jZ2k/aWQ9MTY1NTMxOT4KClNpZ25lZC1v ZmYtYnk6IFBldHIgUMOtc2HFmSA8cHBpc2FyQHJlZGhhdC5jb20+Ci0tLQogcmVncmVzc2lvbi9U RVNUICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiByZWdyZXNzaW9uL2lucHV0L2JpbmFy eS1jb25zdGFudC5jICAgIHwgMTIgKysrKysrKysrKysrCiByZWdyZXNzaW9uL3N0YW5kYXJkL2Jp bmFyeS1jb25zdGFudC5jIHwgMTIgKysrKysrKysrKysrCiBzcmMvbGV4aS5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgMjMgKysrKysrKysrKysrKysrKystLS0tLS0KIDQgZmlsZXMgY2hh bmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0 NCByZWdyZXNzaW9uL2lucHV0L2JpbmFyeS1jb25zdGFudC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQg cmVncmVzc2lvbi9zdGFuZGFyZC9iaW5hcnktY29uc3RhbnQuYwoKZGlmZiAtLWdpdCBhL3JlZ3Jl c3Npb24vVEVTVCBiL3JlZ3Jlc3Npb24vVEVTVAppbmRleCA1NmY0MWQ5Li42NGI5YmNlIDEwMDc1 NQotLS0gYS9yZWdyZXNzaW9uL1RFU1QKKysrIGIvcmVncmVzc2lvbi9URVNUCkBAIC0zNyw3ICsz Nyw3IEBAIEJVR1M9ImNhc2UtbGFiZWwuYyBvbmUtbGluZS0xLmMgb25lLWxpbmUtMi5jIG9uZS1s aW5lLTMuYyBcCiAgICAgICAgIG9uZS1saW5lLTQuYyBzdHJ1Y3QtZGVjbC5jIHNpemVvZi1pbi13 aGlsZS5jIGxpbmUtYnJlYWstY29tbWVudC5jIFwKICAgICAgICAgbWFjcm8uYyBlbnVtLmMgZWxp Zi5jIG5lc3RlZC5jIHdyYXBwZWQtc3RyaW5nLmMgbWludXNfcHJlZGVjcmVtZW50LmMgXAogICAg ICAgICBidWctZ251LTMzMzY0LmMgZmxvYXQtY29uc3RhbnQtc3VmZml4LmMgYmxvY2stY29tbWVu dHMuYyBcCi0gICAgICAgIG5vLWZvcmNlZC1ubC1pbi1ibG9jay1pbml0LmMgaGV4YWRlY2ltYWxf ZmxvYXQuYyIKKyAgICAgICAgbm8tZm9yY2VkLW5sLWluLWJsb2NrLWluaXQuYyBoZXhhZGVjaW1h bF9mbG9hdC5jIGJpbmFyeS1jb25zdGFudC5jIgogCiBJTkRFTlRTUkM9ImFyZ3MuYyBiYWNrdXAu aCBiYWNrdXAuYyBkaXJlbnRfZGVmLmggZ2xvYnMuYyBpbmRlbnQuaCBcCiAgICAgICAgIGluZGVu dC5jIGluZGVudF9nbG9icy5oIGlvLmMgbGV4aS5jIG1lbWNweS5jIHBhcnNlLmMgcHJfY29tbWVu dC5jIFwKZGlmZiAtLWdpdCBhL3JlZ3Jlc3Npb24vaW5wdXQvYmluYXJ5LWNvbnN0YW50LmMgYi9y ZWdyZXNzaW9uL2lucHV0L2JpbmFyeS1jb25zdGFudC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjI1ZjE2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9yZWdyZXNzaW9uL2lucHV0 L2JpbmFyeS1jb25zdGFudC5jCkBAIC0wLDAgKzEsMTIgQEAKK2ludCBmb28gPSAwYjE7Citsb25n IGludCBmb28gPSAwYjFMOwordW5zaWduZWQgaW50IGZvbyA9IDBiMVU7Cit1bnNpZ25lZCBsb25n IGludCBmb28gPSAwYjFMVTsKKworaW50IGZvbyA9IDBCMTsKK2xvbmcgaW50IGZvbyA9IDBCMUw7 Cit1bnNpZ25lZCBpbnQgZm9vID0gMEIxVTsKK3Vuc2lnbmVkIGxvbmcgaW50IGZvbyA9IDBCMUxV OworCitpbnQgZm9vID0gMGIwMTAxMDEwMTsKK2ludCBmb28gPSAwQjAxMDEwMTAxOwpkaWZmIC0t Z2l0IGEvcmVncmVzc2lvbi9zdGFuZGFyZC9iaW5hcnktY29uc3RhbnQuYyBiL3JlZ3Jlc3Npb24v c3RhbmRhcmQvYmluYXJ5LWNvbnN0YW50LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMC4uMjVmMTYyNAotLS0gL2Rldi9udWxsCisrKyBiL3JlZ3Jlc3Npb24vc3RhbmRhcmQvYmlu YXJ5LWNvbnN0YW50LmMKQEAgLTAsMCArMSwxMiBAQAoraW50IGZvbyA9IDBiMTsKK2xvbmcgaW50 IGZvbyA9IDBiMUw7Cit1bnNpZ25lZCBpbnQgZm9vID0gMGIxVTsKK3Vuc2lnbmVkIGxvbmcgaW50 IGZvbyA9IDBiMUxVOworCitpbnQgZm9vID0gMEIxOworbG9uZyBpbnQgZm9vID0gMEIxTDsKK3Vu c2lnbmVkIGludCBmb28gPSAwQjFVOwordW5zaWduZWQgbG9uZyBpbnQgZm9vID0gMEIxTFU7CisK K2ludCBmb28gPSAwYjAxMDEwMTAxOworaW50IGZvbyA9IDBCMDEwMTAxMDE7CmRpZmYgLS1naXQg YS9zcmMvbGV4aS5jIGIvc3JjL2xleGkuYwppbmRleCA4NDhkZGM5Li42ZWFiYTk1IDEwMDY0NAot LS0gYS9zcmMvbGV4aS5jCisrKyBiL3NyYy9sZXhpLmMKQEAgLTI4NiwxNSArMjg2LDI0IEBAIGV4 dGVybiBjb2Rlc190eSBsZXhpKHZvaWQpCiAgICAgICBpZiAocGFyc2VyX3N0YXRlX3Rvcy0+bGFz dF9ydyA9PSByd19yZXR1cm4pCiAgICAgICAgICAgcGFyc2VyX3N0YXRlX3Rvcy0+bGFzdF9ydyA9 IHJ3X25vbmU7CiAKKyAgICAgIC8qIGRlY2ltYWwsIG9jdGFsLCBoZXgsIGJpbmFyeSBhbmQgZmxv YXRpbmcgcG9pbnQgbnVtYmVyIGZvcm1hdCAqLwogICAgICAgaWYgKGlzZGlnaXQgKCpidWZfcHRy KSB8fAogICAgICAgICAgICgoYnVmX3B0clswXSA9PSAnLicpICYmIGlzZGlnaXQgKGJ1Zl9wdHJb MV0pKSkKICAgICAgIHsKLSAgICAgICAgIGludCBzZWVuZG90ID0gMCwgc2VlbmV4cCA9IDAsIGlz aGV4YSA9IDA7CisgICAgICAgICBpbnQgc2VlbmRvdCA9IDAsIHNlZW5leHAgPSAwLCBpc2hleGEg PSAwLCBpc2JpbmFyeSA9IDA7CiAKLSAgICAgICAgIGlmICgoKmJ1Zl9wdHIgPT0gJzAnKSAmJiAo KGJ1Zl9wdHJbMV0gPT0gJ3gnKSB8fCAoYnVmX3B0clsxXSA9PSAnWCcpKSkKKyAgICAgICAgIGlm ICgqYnVmX3B0ciA9PSAnMCcpCiAgICAgICAgICB7Ci0gICAgICAgICAgICBpc2hleGEgPSAxOwot ICAgICAgICAgICAgYnVmX3B0ciArPSAxOworICAgICAgICAgICAgaWYgKChidWZfcHRyWzFdID09 ICd4JykgfHwgKGJ1Zl9wdHJbMV0gPT0gJ1gnKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAg ICAgIGlzaGV4YSA9IDE7CisgICAgICAgICAgICAgICBidWZfcHRyICs9IDE7CisgICAgICAgICAg ICB9CisgICAgICAgICAgICBlbHNlIGlmICgoYnVmX3B0clsxXSA9PSAnYicpIHx8IChidWZfcHRy WzFdID09ICdCJykpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICBpc2JpbmFyeSA9IDE7 CisgICAgICAgICAgICAgICBidWZfcHRyICs9IDE7CisgICAgICAgICAgICB9CiAgICAgICAgICB9 CiAgICAgICAgICB3aGlsZSAoMSkKICAgICAgICAgIHsKQEAgLTMxMiw4ICszMjEsMTAgQEAgZXh0 ZXJuIGNvZGVzX3R5IGxleGkodm9pZCkKIAogICAgICAgICAgICAgYnVmX3B0cisrOwogCi0gICAg ICAgICAgICBpZiAoIShpc2hleGEgJiYgIXNlZW5leHAgPwotICAgICAgICAgICAgICAgICBpc3hk aWdpdCAoKmJ1Zl9wdHIpIDogaXNkaWdpdCAoKmJ1Zl9wdHIpCisgICAgICAgICAgICBpZiAoISgK KyAgICAgICAgICAgICAgICAgKGlzaGV4YSAmJiAhc2VlbmV4cCAmJiBpc3hkaWdpdCAoKmJ1Zl9w dHIpKSB8fAorICAgICAgICAgICAgICAgICAoaXNiaW5hcnkgJiYgIXNlZW5leHAgJiYgKCpidWZf cHRyID09ICcwJyB8fCAqYnVmX3B0ciA9PSAnMScpKSB8fAorICAgICAgICAgICAgICAgICAoKCEo aXNoZXhhIHx8IGlzYmluYXJ5KSB8fCBzZWVuZXhwKSAmJiBpc2RpZ2l0ICgqYnVmX3B0cikpCiAg ICAgICAgICAgICAgICAgICkgJiYgKmJ1Zl9wdHIgIT0gJy4nKQogICAgICAgICAgICAgewogICAg ICAgICAgICAgICAgaWYgKChpc2hleGEgPwotLSAKMi4xNy4yCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYnVnLWluZGVudCBtYWlsaW5nIGxpc3QKYnVn LWluZGVudEBnbnUub3JnCmh0dHBzOi8vbGlzdHMuZ251Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2J1 Zy1pbmRlbnQK