Revise behavior of ocaml.warning attribute:  when used as a floating attribute (in a signature or structure),  the scope is restricted to the current signature/structure instead of being global.  Also support the new floating attributes in classes, with the same behavior.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14752 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02