[CLJ-1134] star-directive in clojure.pprint/cl-format with an at-prefix ("~n@*") do not obey its specifications Created: 18/Dec/12 Updated: 14/Apr/14
|Affects Version/s:||Release 1.4, Release 1.5|
|Reporter:||Jean Niklas L'orange||Assignee:||Unassigned|
|Patch:||Code and Test|
The star-directive in clojure.pprint/cl-format with an at-prefix (~n@*) does not obey its specifications according to Common Lisp the Language, 2nd Edition. There are two bugs within ~n@* as of right now:
Inside a clean Clojure repl, perform these steps:
The expected output is "0 3" and "0123 0", but is "0 0" and "0123 1" as shown above.
Tested on both 1.4.0 and 1.5.0-beta2, both have the defect described.
The format strings which reproduces the problem has been compared with the format function from the Common Lisp implementations SBCL, CLisp and Clozure. All of them print the expected output.
|Comment by Jean Niklas L'orange [ 18/Dec/12 9:28 PM ]|
It may be easier to read the changes the patch does from within JIRA instead from the commit message, so I've added it here:
This solves two issues as specified by #CLJ-1134. Issue #1 is solved by doing a
Issue #2 is handled by changing the default n-parameter to * depending on
In addition, new tests have been appended to test_cl_format.clj to ensure the
|Comment by Tom Faulhaber [ 14/Apr/14 11:12 AM ]|
I walked through this patch and it looks just right. Thanks!
Let's get it applied for 1.7.