Commit Graph

12940 Commits (f4a29c6ca2d926fa988e1bcd3a838247932beaf8)

Author SHA1 Message Date
Alain Frisch f4a29c6ca2 Merge branch '4.03_merged_in_trunk' of https://github.com/bobot/ocaml into bobot-4.03_merged_in_trunk 2016-03-15 22:09:24 +01:00
Alain Frisch b791a20b69 Merge pull request #301 from alainfrisch/let_exception
Local exceptions (without the optimization)
2016-03-15 22:04:39 +01:00
alainfrisch 43f90e9f58 Local let exceptions. 2016-03-15 22:02:55 +01:00
Alain Frisch 8a4837ef82 Update dependencies in tools/.depend (deps were missing for e.g. stripdebug). 2016-03-15 15:56:30 +01:00
Alain Frisch 8a19a63d8c Really refresh dependencies. 2016-03-15 15:31:29 +01:00
Alain Frisch 04b67e474d Update .depend (should be more stable now). 2016-03-15 15:24:25 +01:00
Mark Shinwell 924c165f8d Correct copyright header 2016-03-15 08:39:53 +00:00
François Bobot 2aec849922 Merge remote-tracking branch 'origin/4.03' into trunk
travis.yml is kept from trunk

Conflicts:
  	.depend
	Changes
	Makefile
	VERSION
	boot/ocamlc
	boot/ocamldep
	boot/ocamllex
	parsing/parser.mly
	parsing/pprintast.ml
	stdlib/hashtbl.ml
	testsuite/tests/unwind/Makefile
	tools/check-typo
2016-03-11 18:44:32 +01:00
alainfrisch 7a76cf1b3e Typo. 2016-03-11 17:28:29 +01:00
Alain Frisch 4aac280492 Merge pull request #328 from alainfrisch/optim_hashtbl
Optim hashtbl
2016-03-11 16:07:21 +01:00
alainfrisch bd85720f98 Document that Hashtbl.copy can be much slower than before. 2016-03-11 11:47:14 +01:00
alainfrisch bff08d2763 Adapt filter_map_inplace. 2016-03-11 11:45:59 +01:00
alainfrisch 23b2edf286 Keep track of whether a traversal is ongoing and in this case, disables the inplace implementation of resizing. 2016-03-11 11:45:58 +01:00
alainfrisch 7394676c7d Optimize Hashtbl by using in-place updates of bucket list cells. 2016-03-11 11:45:57 +01:00
alainfrisch 6d36beb17a Switch to inline records to represent bucket lists in Hashtbl. 2016-03-11 11:45:16 +01:00
Damien Doligez e329753384 update a reporter name in Changes 2016-03-11 11:41:46 +01:00
alainfrisch 2383de557c Changelog. 2016-03-10 15:38:04 +01:00
alainfrisch c4e8117c2b Cleanup. 2016-03-10 15:34:48 +01:00
alainfrisch 3730cab2d1 Sort the list of input files alphabetically. 2016-03-10 15:33:36 +01:00
alainfrisch 1ef3f35c02 Print dependencies at the end.
This introduces a tiny change of behavior since command line options which affect the
printing of dependencies (-modules, -all, -ml-synonym, -mlfi-synonym) are taken into
account even for files mentioned before on the command-line.  This is probably not going to break
anything.

Note: this commit also reverse the ordering of the output, but we will normalize it in the next
commit anyway.
2016-03-10 15:33:35 +01:00
alainfrisch 2261e4413d Single entry point to print deps. 2016-03-10 15:33:34 +01:00
alainfrisch 4aea2c1903 Move dependency printing code to their own function. 2016-03-10 15:33:33 +01:00
alainfrisch a00a193e35 Cleanup. 2016-03-10 15:33:32 +01:00
Alain Frisch b9b0285333 Add non-regression test for previous commit. 2016-03-10 15:11:02 +01:00
Alain Frisch af09eacaf2 Bug fix: Hashtbl.filter_map_inplace did not correctly update the size field. 2016-03-10 15:10:47 +01:00
Alain Frisch b1e2c5acd6 Add non-regression test for previous commit. 2016-03-10 15:10:02 +01:00
Alain Frisch dcc98090cb Bug fix: Hashtbl.filter_map_inplace did not correctly update the size field. 2016-03-10 14:42:36 +01:00
alainfrisch 0310ff4415 Changes. 2016-03-10 10:57:11 +01:00
David Allsopp d31773e0f4 For discussion! Enable compilation using Visual C++ 2002 & 2003
This bizarre patch results in a full test-suite pass for Visual Studio
.NET 2002 & 2003. Without it, the following code segfaults (resulting in
6 failing tests):

```ocaml
  #load "unix.cma";;
  let (ifd, _) = Unix.pipe ();;
  Unix.in_channel_of_descr ifd;;
```
2016-03-10 10:56:07 +01:00
David Allsopp 7ca7db4ef2 Fix compiler limitations in old MSVC
Older Microsoft C compilers can't generate code for casting unsigned
__int64 to double and the __pragma directive is not available for
suppressing warnings.
2016-03-10 10:56:06 +01:00
David Allsopp 8ea32269d1 Correct missing header #define's in old MSVC 2016-03-10 10:56:05 +01:00
David Allsopp b002519fa5 Provide workaround for missing _vscprintf
_vscprintf was added to Microsoft Visual C++ in .NET 2002. Provide an
implementation of it for older compilers.
2016-03-10 10:56:04 +01:00
David Allsopp 78293a0775 Correct floating point on old MSVC
Visual Studio 6 and earlier have somewhat insane handling of comparisons
with nan values. Provide alternate (slower) versions of float comparison
functions using isnan rather than standardized comparison behaviour.
2016-03-10 10:56:03 +01:00
David Allsopp 709d89b438 Fix compilation using Visual Studio .NET 2002
Microsoft introduced the `LL` suffix for integer literals in Visual
Studio .NET 2003 - earlier versions use `i64`
2016-03-10 10:56:02 +01:00
David Allsopp 19dee481ea Fix DEBUG_PRINT for older MS C Compilers
Support was added for variadic macros in the RTM version of Visual Studio
2005 (CL Version 14), but there are variants of the version 14 compiler
included in SDKs released before Visual Studio 2005 itself which do not
support them. Fix the non-DEBUG version of win32unix to compile correctly
and not display a warning for DEBUG_PRINT calls in
`otherlibs/win32unix/select.c`.
2016-03-10 10:55:18 +01:00
David Allsopp ef2cdbe1e7 Correctly detect _set_invalid_parameter_handler
There is still at least one Microsoft-supported version of the CRT which
does not include the secure versions of various functions, and
consequently does not include `_set_invalid_parameter_handler`.

Tests for the definition and inclusion of
caml_install_invalid_parameter_handler refined to detect
`__STDC_SECURE_LIB__` defined in `crtdefs.h`. This is a badly documented,
but standardised, define. Although `__STDC_SECURE_LIB__` is compatible
with MinGW, I have retained the test for `_MSC_VER` and so kept this as an
MSVC-only patch.
2016-03-10 10:55:01 +01:00
alainfrisch de857d6fb9 GPR#324: Make boot/ocamlc read directly byterun/primitives (patch by Francois Bobot). 2016-03-10 10:46:19 +01:00
Alain Frisch 8eb9c0b46e An quick way to ensure that ocamlopt compiles fine on supported archs.
Examples: `make check_arch=power`, `make check_all_arches`.
2016-03-09 18:54:15 +01:00
Alain Frisch 3d00fc8773 Avoid ambiguous or-pattern. 2016-03-09 18:42:07 +01:00
alainfrisch 8d0f08b20e Fix a probable non-bug.
Commit 39760599e5 introduced some bogus logic.
Emitting structured constants can register more closures to be emitted.  But either
the name of these closures is "unique enough", in which case we don't need the already_translated
argument in transl_all_functions_and_emit_all_constants (and transl_all_functions does not need
to return the set of already emitted functions).  Or this is not the case, and the previous code
was wrong since it forgot to remember the set returned by transl_all_functions.

I've fixed the code assuming the latter in order to be on the safe side, but we would probably have
noticed if the former assumption did not hold.  I've added a note to the commit mentioned above
so that @chambart can have a look at it.
2016-03-09 13:41:13 +01:00
alainfrisch 42a5b36bab Fix probable bug.
"Probable" because this was found by code inspection after enabling warning 27.  I assume
this could lead to an actual bug in the type-checker, but I have not tried to trigger it.

Fix confirmed by @garrigue.
2016-03-09 12:00:42 +01:00
alainfrisch bbbdbdb318 Fix testsuite. 2016-03-08 23:39:17 +01:00
Frederic Bour 255d6664c0 parser: a few more wrong symbol numbers 2016-03-08 23:39:15 +01:00
Frederic Bour 92cb709e46 parser: wrong symbol number in error 2016-03-08 23:39:13 +01:00
Frederic Bour 3c259771bf Attributes sometimes dropped by parser 2016-03-08 23:39:11 +01:00
Damien Doligez 8eb1190e72 Merge pull request #487 from Drup/attr_class_4.03
Attr class 4.03
2016-03-08 11:50:40 +01:00
Damien Doligez a8d8a2adb8 Merge pull request #497 from jhjourdan/deadcode_MMAP_INTERVAL
Remove dead code related to old MMAP_INTERVAL
2016-03-08 11:36:51 +01:00
Damien Doligez 07d16450c8 Merge pull request #496 from jhjourdan/fix_bootstrap
Fix coreboot, update .depend
2016-03-08 11:36:15 +01:00
Damien Doligez 1ddc0ce8fe Merge pull request #495 from jhjourdan/multiple_hooks
Remove double calls to caml_finalize_hook
2016-03-08 11:35:26 +01:00
Jacques-Henri Jourdan 70cfba4445 Remove dead code related to old MMAP_INTERVAL 2016-03-07 23:39:07 +01:00