The constructors for queue do not document their requirements with respect to the capacity tag.
Moreover in certain constructors a runtime assert (only present in debug mode) are used to verify the requirement. It shouldn't be necessary to build code in debug mode to discover what is logically a compile time constraint.