Syntax: bf(%weak-tags)

By default, the tt(%polymorphic) directive declares a strongly typed enum:
tt(enum class Tag_), and code generated by bic() always uses the tt(Tag_)
scope when referring to tag identifiers. It is often possible (by
pre-associating tokens with tags, using tt(%type) directives) to avoid 
the use of tags in user-code.

If tags em(are) explicitly used, then they must be prefixed with the tt(Tag_)
scope. Before the arrival of the C++-11 standard strongly typed enumerations
didn't exist, and explicit enum-type scope prefixes were usually omitted.

The tt(%weak-tags) directive can be specified when the tt(Tag_) enum should
em(not) be declared as a strongly typed enum. This directive should not be
used, unless you know what you're doing.
