temporarily revert the bootstrap of naked-pointers before merging format+gadts

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14805 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
first part of Benoît Vaugon's format-gadts patch

After applying this patch, you should run:

  make library-cross
  make promote-cross
  make partialclean
  make ocamlc ocamllex ocamltools

and then immediately apply the following patches until the "second
part of Benoît Vaugon's format+gadts patch"; the bootstrap cycle is
not finished yet.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14806 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
convert Benoît's first patch to bytes/string

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14807 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
update Benoît's patch wrt. Parsetree changes

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14808 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
temporarily remove %(%) to avoid weaker typing

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
second part of Benoît Vaugon's format+gadts patch

To finish the bootstrap cycle, run:

  make library-cross
  make promote
  make partialclean
  make core

  make library-cross
  make promote-cross
  make partialclean
  make ocamlc ocamllex ocamltools

  make library-cross
  make promote
  make partialclean
  make core
  make compare

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
sync threads/pervasives.ml

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

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14812 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
sets up a 'legacy mode'

When the OCAML_LEGACY_FORMAT environment variable is set, the compiler
will try to emulate the behaviour of the previous implementation of
format.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14813 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
some benine meaningless formats were previously ignored

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14814 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
disable incompatible flags in legacy mode

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14815 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
ignore more incompatible flags

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
allows some more ignored formats

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14817 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
when passed to Printf, %l%n%L should be interepreted as %u, not %d

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14818 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
a testsuite to measure format behavior changes and the effectiveness of legacy mode

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14819 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Add support for ignored scan_get_counter formats (%_[nlNL])

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14820 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
temporary bootstrap (%_[nNlL] not yet handled by the typer)

Bootstrap steps:

  disable "-warn-error A" in Makefile

  make library -j3 \
  && cp stdlib/stdlib.cma stdlib/std_exit.cmo stdlib/*.cmi boot/ \
  && make partialclean \
  && make ocamlc ocaml -j5

  enable -warn-error A again

cp ocamlc boot/

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14821 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
add typer support for the new formats

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14822 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
finish %_[nNlL] boostrap (same bootstrap steps)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14823 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
testsuite for %_[nNlL]

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