Commit Graph

1684 Commits (57620a7afd0e9416c76120017bdcbece0500481b)

Author SHA1 Message Date
Damien Doligez 5401ce8473 Update headers for the new license.
Remains to be done: remove all headers in testsuite/tests.
2016-02-18 16:59:16 +01:00
Damien Doligez ee8f71101b clean up whitespace and cut long lines 2016-02-17 13:36:27 +01:00
Mark Shinwell a5b7252bcb Fix typo in 0665172 2016-02-11 11:21:10 +00:00
Mark Shinwell 0665172cfe Build stdlib, etc. with -O3 in Flambda mode 2016-02-11 11:18:45 +00:00
David Allsopp da75a866da Use new stat implementation for fstat on Windows 2016-02-10 23:28:34 +00:00
David Allsopp e6e525c8b2 Populate st_ino for Unix.stat/lstat on Windows 2016-02-10 23:27:52 +00:00
David Allsopp bfeb61f206 Fix Unix module not working on Windows XP
Unix.symlink requires CreateSymbolicLink which prevents programs from
running on Windows XP. Dynamically link the function instead.
2016-02-10 23:25:40 +00:00
David Allsopp f23d1424ee Add Unix.has_symlink 2016-02-10 23:25:39 +00:00
David Allsopp 616ef2cae7 Support Unix.symlink on Windows 2016-02-10 23:25:39 +00:00
David Allsopp fa3abf649e Support Unix.readlink on Windows 2016-02-10 23:25:38 +00:00
David Allsopp 27bb7bf873 Support Unix.lstat on Windows 2016-02-10 23:25:35 +00:00
David Allsopp 3dfd21aa3a Support symbolic links in Win32 Unix.stat 2016-02-10 23:23:50 +00:00
David Allsopp 828cf129f7 Use _stat64 instead of _stati64 on Windows
The mingw64 headers create an inconsistency between the MSVC and MinGW
ports - mingw64 automatically defines _USE_32BIT_TIME_T on 32-bit
Windows, where the Microsoft CRT docs state that should be a user
define. The effect is that the mingw64 32-bit port suffers from the year
2038 bug, where the MSVC 32-bit port does not. Given that OCaml uses a
double for the time fields anyway and OCaml requires sufficiently modern
compilers to be able to rely on a working _stat64 (64-bit time_t and
64-bit st_size), switch from the *i64 to the *64 variants.
2016-02-10 18:23:45 +00:00
Christophe Troestler 7f6a8ae2f0 Protect install paths against spaces (on Windows) 2016-02-10 14:46:39 +01:00
Gabriel Scherer 8cbccbffe4 remove ocamlbuild-specific files 2016-02-01 15:05:18 -05:00
Nicolas Ojeda Bar e343dd0ba6 Adapt emit_external_warnings and error_if_has_deep_native_repr_attributes 2016-01-27 23:05:28 +01:00
Jeremie Dimino 9e8facef9c typo 2016-01-27 18:40:54 +00:00
Runhang Li 829dea35a4 Change function names, improve documentation.
Change ``byte_size'' to ``size_in_bytes``, change ``kind_byte_size``
to ``kind_size_in_bytes``.

Add detailed comment indicating size functions do not consider header
of OCaml value.
2016-01-27 15:58:06 +01:00
Runhang Li a41b820d26 Add byte_size and kind_byte_size to Bigarray 2016-01-27 15:57:19 +01:00
Mark Shinwell d708e2e7c7 Merge pull request #22 from bobot/feature/ephemerons
GPR#22: Add Ephemerons to OCaml
2016-01-27 09:37:59 +00:00
David Allsopp 81604e76f6 Minor corrections to clean targets 2016-01-25 15:08:03 +00:00
François Bobot 03ed6a0f51 [Stdlib] Ephemeron: add the module in the stdlib 2016-01-25 08:33:54 +01:00
David Allsopp b46843fb69 Allow compilation using bootstrapped FlexDLL
Extend the previous patch allowing make -f Makefile.nt flexdll
install-flexdll not to require the install-flexdll stage.

OCAML_FLEXLINK is utilised as required to allow compilation of the entire
system using an in-tree compiled flexlink. The build process simply
required the flexdll target to appear before world.

opt.opt compiles a native code version of flexlink.exe as flexlink.opt.

install always installs flexlink.exe if it was compiled along with any
required .manifest files. It also installs the appropriate .o/.obj files
to $(INSTALL_LIBDIR).

At present, the bootstrapping is not extended to the Cygwin ports.
2016-01-15 17:07:12 +00:00
Mark Shinwell fb4d06a3aa Clflags stuff and Arg_helper 2016-01-14 11:27:30 +00:00
Mark Shinwell f9a3d0d9c1 merge with trunk 2016-01-12 13:48:39 +01:00
octachron 658c8670e3 Documentation: fix bigarray.mli documentation
Fix the documentation layout by attaching the documentation comments to
their respective type and not the last constructor of these types.
2015-12-28 18:16:23 +01:00
Damien Doligez 0225ca01e3 GC latency improvements 2015-12-21 14:27:46 +01:00
Mark Shinwell a972d4df72 Fix Makefiles 2015-12-18 17:00:46 +00:00
Gabriel Scherer d55cfb8ae5 PR#7096: fix superscripts in big_int documentation 2015-12-17 09:10:27 +01:00
Christophe Troestler 985daea528 unix.mli: Use @raise wherever fit 2015-12-13 18:56:39 +01:00
Christophe Troestler da17e59caa unix.mli: Use "on Windows" everywhere 2015-12-13 18:56:39 +01:00
Christophe Troestler 46d6e28333 Specify in unix.mli which functions are implemented on Windows
Fixes http://caml.inria.fr/mantis/view.php?id=5253
2015-12-13 18:56:32 +01:00
Xavier Leroy 77cf36cf82 Merge pull request #331 from ocaml/win32-sockets
Windows sockets in asynchronous mode
2015-12-09 11:51:36 +01:00
Gabriel Scherer c6b5a28d77 Merge pull request #320 from gasche/revert-user-defined-indexing-operators
Revert user defined indexing operators
2015-12-06 17:56:40 +01:00
Xavier Leroy 0939a59850 PR#6289: Unix.utimes uses the current time only if both arguments are exactly 0.0
Also: use utimes() in preference to utime() so as to get sub-second resolution.
2015-12-06 17:35:34 +01:00
Xavier Leroy 8e6606d729 PR#6108, PR#6802: fail cleanly if dynlink.cma or ocamltoplevel.cma are loaded inside the toplevel loop 2015-12-06 12:59:23 +01:00
Xavier Leroy 45343f6a39 PR#6989: in Str library, make sure that all \(...\) groups are binding and can be consulted with Str.matched_group.
There used to be a limitation to 32 binding groups, which is now lifted by dynamically allocating the groups data if it is too big.

Also:
- Modernize strstubs.c to use the Caml namespace
- Fixed a potential bug with backreferences \\n referring to a nonexistent group.
2015-12-06 12:43:02 +01:00
Xavier Leroy 5551db5778 Branch win32-sockets: add documentation, update Changes. 2015-12-04 14:32:30 +01:00
alainfrisch 7ad212045f Add module to deal with 'front-end' built-in attributes. 2015-12-02 14:46:14 +01:00
Xavier Leroy 15ac614a89 Experiment: Win32 sockets in non-synchronous mode.
This is an attempt to address PR#4466, #5325, #6771.  Not tested yet.
2015-11-30 11:42:16 +01:00
Gabriel Scherer 1b8909d332 Revert "Simplify the use of custom .() and .[]"
This reverts commit 7e47735db8.

(Again, this required manual conflict resolution in parsing/parser.mly,
due to the change in argument label type)
2015-11-29 21:01:29 +01:00
Gabriel Scherer cca2eed653 Revert "Simplify the definition of custom .{} operators"
This reverts commit 4a80e9da11.

(The revert required some manual conflict resolution because of use of
function argument labels in the parser.)
2015-11-29 21:01:27 +01:00
Xavier Leroy 906558a155 PR#7038: out of memory condition in caml_io_mutex_lock
Check the return code of st_mutex_create so that, in particular, out-of-memory conditions cause an exception.
2015-11-27 15:33:15 +01:00
Xavier Leroy bf87415c1c PR#7024: in documentation of Str regular expressions, clarify what "end of line" means for "^" and "$" regexps. 2015-11-26 15:08:34 +01:00
Xavier Leroy 9b1a371291 PR#6945 and GPR#227: protect Sys and Unix functions against string arguments containing the null character '\000'
Continuation of commit dc043a7.
Fix wrong declaration of cstringvect.
2015-11-16 14:10:25 +01:00
Xavier Leroy ef8bc511ce PR#4023 and GPR#68: add Unix.sleepf and improve Unix.sleep
Follow-up to commit 50648ed: update otherlibs/threads.
2015-11-16 10:48:14 +01:00
Xavier Leroy 50648ed2b7 PR#4023 and GPR#68: add Unix.sleepf and improve Unix.sleep
Unix.sleepf provides sleep with sub-second resolution.
Unix.sleep is implemented on top of Unix.sleepf.
If a handled signal causes the sleep to return early with an EINTR
error, catch it and restart the sleep for the remaining time.
2015-11-15 15:34:45 +01:00
Xavier Leroy 9893e265d8 PR#6945 and GPR#227: protect Sys and Unix functions against string arguments containing the null character '\000'
Continuation of commit dc043a7.  The following otherlibs/unix/ functions were not protected:
unix_inet_of_string
unix_getgrnam
unix_getpwnam
unix_initgroups
unix_readlink
unix_utimes
2015-11-15 15:13:30 +01:00
Xavier Leroy 29a50b4768 PR#6945 and GPR#227: protect Sys and Unix functions against string arguments containing the null character '\000'
Continuation of commits dc043a7 and 9dfa69e:
- Add checks for the command-line arguments and for the environment
  variables passed via Unix.exec* and variants.
2015-11-13 14:49:50 +01:00
Xavier Leroy 9dfa69e546 PR#6945 and GPR#227: protect Sys and Unix functions against string arguments containing the null character '\000'
Continuation of commit dc043a7:
- Update the win32unix/ files with the new checks.
- Completely untested, not even compiled.
2015-11-11 17:23:40 +01:00