[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#18299: Analyzer issues warning with ~:p expansion of ‘format’
From: |
Frank Terbeck |
Subject: |
bug#18299: Analyzer issues warning with ~:p expansion of ‘format’ |
Date: |
Wed, 20 Aug 2014 14:26:34 +0200 |
User-agent: |
Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3.50 (gnu/linux) |
Hello Guile developers,
I was trying this:
(use-modules (ice-9 format))
(format #t "~d block~:p~%" 1) ;; and 0, and 2 etc...
This triggers a warning about the format-string argument count:
;;; <stdin>:3:0: warning: "~d block~:p~%": wrong number of `format'
arguments: expected 2, got 1
The manual says this about "~:p":
~:p re-uses the preceding argument instead of taking a new
one, which can be convenient when printing some sort of count.
(format #t "~d cat~:p" 9) ⊣ 9 cats
(format #t "~d pupp~:@p" 5) ⊣ 5 puppies
I was looking at the code, and it appears that the warning is triggered
in "module/language/tree-il/analyze.scm" in ‘format-analysis’ and more
precisely in ‘check-format-args’, due to the lack of support for "~:p"
and presumably "~:@p" in ‘format-string-argument-count’.
Regards, Frank
--
In protocol design, perfection has been reached not when there is
nothing left to add, but when there is nothing left to take away.
-- RFC 1925
- bug#18299: Analyzer issues warning with ~:p expansion of ‘format’,
Frank Terbeck <=