1
Fork 0

auto merge of #9535 : alexcrichton/rust/no-format-default, r=thestinger

As mentioned in #9456, the format! syntax extension would previously consider an
empty format as a 'Unknown' format which could then also get coerced into a
different style of format on another argument.

This is unusual behavior because `{}` is a very common format and if you have
`{0} {0:?}` you wouldn't expect them both to be coereced to the `Poly`
formatter. This commit removes this coercion, but still retains the requirement
that each argument has exactly one format specified for it (an empty format now
counts as well).

Perhaps at a later date we can add support for multiple formats of one argument,
but this puts us in at least a backwards-compatible situation if we decide to do
that.
This commit is contained in:
bors 2013-09-27 09:41:07 -07:00
commit 78c3fac852
4 changed files with 14 additions and 17 deletions

View file

@ -1159,11 +1159,12 @@ impl<'self> fmt::Default for Sidebar<'self> {
write!(w, "<a class='{ty} {class}' href='{curty, select,
mod{../}
other{}
}{ty, select,
}{tysel, select,
mod{{name}/index.html}
other{#.{name}.html}
}'>{name}</a><br/>",
ty = short,
tysel = short,
class = class,
curty = shortty(cur),
name = item.as_slice());