Error messages targetted to the user are kept in the session and are manipulated with the [error] tag. Warnings are manipulated with the [warnings] tag.
This model has the following flaws:
By default, the errors are retained in the session. This utterly confuses the user.
[error all=1] displays errors in a all but random order. Errors should be displayed in the same order as they appear in the corresponding form.
Different semantics of [error] and [warnings].