| Ticket UUID: | 2368084 | ||
| Title: | #343: Add %b (binary) specifier to [format/scan] | ||
| Type: | Patch | Created on: | 2008-12-01 00:54:21 |
| Submitter: | ferrieux | Assigned to: | hobbs |
| Subsystem: | 23. [scan] | Severity: | |
| Priority: | 5 Medium | Last modified: | 2008-12-12 06:36:38 |
| Status: | Closed | Closed by: | ferrieux |
| Resolution: | Accepted | Closed on: | 2008-12-11 23:36:38 |
| Version: | TIP Implementation | ||
| Description: | ||||
The attached patch adds a %b specifier meaning 'binary' to the [format] and [scan] commands. It is thus continuing in the direction pioneered by the recent addition of "0b" in [expr]'s number parsing.
The specifier of course also works with "#" (adding "0b" if nonzero) and wide- and bignum modifiers (%lb, %llb).
In addition, the patch fixes the following bug in [scan]:
% scan 0b101 %i x
1
% puts $x
0
The patch includes proper tests and documentation update. Does it really need a TIP ?
| ||||
| User Comments: | ||||
ferrieux added on 2008-12-01 07:54:21:
File Added - 303554: bin.patch ferrieux added on 2008-12-09 04:19:35:
File Added - 304588: bin2.patch ferrieux added on 2008-12-09 04:19:36:
After discussion with Don, it appears that the [scan %i] "fix", which is orthogonal to the TIP, is a dangerous breach of compatibility. So let's leave octal in its pond for now. Patch updated to restore the aforementioned bug. Now this patch is 100% faithful to the TIP's text. File Added: bin2.patch ferrieux added on 2008-12-09 04:21:45:
The mention of "octal" in the previous comment is confusing. I meant, let's just leave %i in all its historical ugliness (which includes things related to octal). Anyway. ferrieux added on 2008-12-12 06:36:38:
TIP accepted, patch committed. | ||||
