1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 22:31:12 +02:00
guile/module/system/base
Ludovic Courtès e06972410a Implement fancy format string analysis.
* module/language/tree-il/analyze.scm (format-string-argument-count):
  Return two values, the minimum and maximum number of arguments.
  Add support for most of `format' escapes, including conditionals.
  (format-analysis): Adjust accordingly.

* module/system/base/message.scm (%warning-types)[format]: Take two
  arguments, MIN and MAX, instead of EXPECTED.  Display warning
  accordingly.

* test-suite/tests/tree-il.test ("warnings")["format"]("~%, ~~, ~&, ~t,
  ~_, and ~\\n", "~{...~}", "~{...~}, too many args", "~@{...~}",
  "~@{...~}, too few args", "~(...~)", "~v", "~v:@y", "~*", "~?",
  "complex 1", "complex 2", "complex 3"): New tests.
  ("conditionals"): New test prefix.
2010-10-10 19:10:10 +02:00
..
compile.scm Check for go/scm mtime ordering rather than equality. 2010-07-26 19:38:52 +02:00
lalr.scm Add Boucher's lalr-scm' as the (system base lalr)' module. 2010-03-31 00:41:59 +02:00
lalr.upstream.scm Add Boucher's lalr-scm' as the (system base lalr)' module. 2010-03-31 00:41:59 +02:00
language.scm current-language fluid refactoring 2010-06-02 22:19:40 +02:00
message.scm Implement fancy format string analysis. 2010-10-10 19:10:10 +02:00
pmatch.scm pmatch license clarification clarifications 2010-03-14 17:48:49 +01:00
syntax.scm let-values in terms of syntax-case, add make-tree-il-folder 2009-08-05 21:35:30 +02:00