Commit Graph

12513 Commits (d9337d856de05f5203ef6887fc4b077fe0657a5f)

Author SHA1 Message Date
Thomas Refis d9337d856d Better type error location in presence of constraints 2016-01-26 10:48:34 +00:00
Pierre Chambart 3f95abd9d1 Merge pull request #428 from chambart/OCAMLPARAM_configuration_file
OCAMLPARAM option passed using a configuration file
2016-01-25 19:11:04 +01:00
Pierre Chambart ab2e736358 Rename compiler_configuration file
Renamed to ocaml_compiler_internal_params.
2016-01-25 18:50:29 +01:00
Pierre Chambart 2555c4e773 Update main and ocamldep 2016-01-25 18:50:29 +01:00
Pierre Chambart 5b2d1e7d5d Reindent compenv 2016-01-25 18:50:29 +01:00
Pierre Chambart d6ea706a02 Add handling of OCAMLPARAM as a file 2016-01-25 18:45:04 +01:00
Pierre Chambart c0d5375e06 Merge pull request #414 from chambart/add_middle_end_to_makefile
Build flambda
2016-01-25 18:41:19 +01:00
alainfrisch 0b7542ddd8 Fix testsuite. 2016-01-22 21:36:34 +01:00
alainfrisch 7dce037bdf GPR#337: Hashtbl.filter_map_inplace. 2016-01-22 18:40:16 +01:00
Damien Doligez 031d4ac095 disable asmcomp tests for msvc64 2016-01-22 18:25:25 +01:00
Pierre Chambart 4c67cc0347 Fix Makefile.nt 2016-01-22 17:02:06 +01:00
Pierre Chambart 050c454765 Add middle_end to Makefiles 2016-01-22 01:24:02 +01:00
Pierre Chambart d07c0698d0 Fix small divergences 2016-01-22 01:24:02 +01:00
Pierre Chambart 1cf70d9e6e Remove unused globals field of Export_info.t 2016-01-22 01:24:02 +01:00
Pierre Chambart f1f0a798f6 Add missing compilenv functions
approx_for_global and approx_env are missing implementation
2016-01-22 01:24:02 +01:00
Pierre Chambart 0e8ed08a9d Add warning headers to flambda files 2016-01-22 00:39:46 +01:00
Mark Shinwell fb35dc8fb4 Fix chambart/ocaml-1 GPR#134: wrong sharing of float array literals (Flambda only) 2016-01-21 16:46:49 +00:00
Damien Doligez efa7d04f11 fix problem reported in GPR#435: assertion failure 2016-01-21 17:38:09 +01:00
Mark Shinwell 20d1951566 Merge pull request #417 from chambart/flambda_prereq-duparray_and_array_mutability
GPR#417: Add explicit duplication of literal arrays
2016-01-21 16:05:44 +00:00
Jérémie Dimino fe0968f080 Merge pull request #439 from mlasson/warnings_unboxed_untagged
More errors with unboxed and untagged attributes
2016-01-20 11:05:15 +00:00
Marc Lasson 934dd9a40b More errors with unboxed and untagged attributes
This commit adds errors for bad uses of @untagged and
@unboxed attributes in external declarations.

There are three possible new errors:
  - One when the external does not contain a native version of
the primitive,
  - One when the attribute occurs deeply into the type,
  - One when the attribute is applied to the whole function type.
2016-01-20 11:51:26 +01:00
alainfrisch ae3af451b8 Remove useless bindings, use proper sequencing instead of 'let _ = ... in ...'. 2016-01-20 00:02:30 +01:00
alainfrisch 09bc267038 Simplify. 2016-01-19 23:42:54 +01:00
alainfrisch 87de6a160d Useless bindings, unit patterns, whitespace. 2016-01-19 23:40:55 +01:00
Alain Frisch 174e93ad36 Merge pull request #438 from dra27/further-msvc-silencing
Tweaks to hiding the display of .c names with MSVC
2016-01-18 17:16:38 +01:00
David Allsopp 7ae5d358c1 Tweaks to hiding the display of .c names with MSVC
1. Update FlexDLL so that ocamlc -custom no longer displays the
   intermediate C file
2. Ensure that, for example, ocamlc -c foo/bar.c doesn't display bar.c
2016-01-18 16:06:25 +00:00
alainfrisch 129df0ae09 Fix Changes file. 2016-01-18 11:11:39 +01:00
Alain Frisch 548c2b3463 Merge pull request #432 from damiendoligez/useless-case-in-test_bool
remove unused (and wrong?) line in cmmgen.ml
2016-01-18 10:10:00 +01:00
Alain Frisch 616e5c32f1 Merge pull request #434 from dra27/vs2015-snprintf
A further MS Universal CRT tweak
2016-01-18 09:44:41 +01:00
Mark Shinwell 56545e0dca Merge pull request #431 from chambart/allow_sharing_branch_with_float_arrays
GPR#431: Const_float_array are constant for branch merging
2016-01-18 08:36:05 +00:00
Mark Shinwell f4443180f8 merge with ocaml/trunk 2016-01-18 08:34:56 +00:00
Mark Shinwell b36f05bb34 Changes entry for GPR#431 2016-01-18 08:34:33 +00:00
Alain Frisch b0eed463b7 Merge pull request #436 from dra27/msvc-asmcomp-tests
Enable tests/asmcomp for MSVC
2016-01-18 09:26:13 +01:00
Alain Frisch 24cfbe233a Merge pull request #402 from Drup/trunk
Add Ast_helper.Const
2016-01-18 07:28:34 +01:00
Alain Frisch 87e431dd27 Merge pull request #407 from dra27/filter-cl-message
Stop ocaml{c,opt} -c foo.c displaying foo.c on stdout
2016-01-18 07:22:16 +01:00
Drup 8a9d074902 Add Ast_helper.Const, for constants. 2016-01-18 00:27:37 +01:00
Drup 6095df954e Rename parsetree constants.
PConst -> Pconst
int -> integer
2016-01-18 00:12:38 +01:00
Drup 6bb1c73197 Add comments on Parsetree's constants. 2016-01-18 00:12:38 +01:00
David Allsopp 8ca04e3b7f Use ocamlc as a C compiler in the testsuite
ocamlc and ocamlopt both provide convenient mechanisms to invoke the C
compiler for .c files. Given the filtering out of the .c line for MSVC
now performed by ocamlc and ocamlopt, changing the testsuite to invoke
the C compiler via ocamlc reduces noise from the testsuite _log file.
2016-01-17 19:21:48 +00:00
David Allsopp 124672aa13 Filter out the display of .c files by MSVC
Microsoft's C Compiler displays several lines on every invocation - most
of this is removed by specifying the /nologo command line option, but
the compiler still displays the name of every C file it compiles. The
Microsoft Macro Assembler (MASM) does the same thing, but ocamlopt by
default is able to pipe the output of that command directly to NUL, as
the assembler code should never produce errors.

The same cannot be done for invocations of the C compiler, as obviously
syntax errors must be displayed. This relative small cosmetic change
pipes the output of cl to a temporary file and filters out the first
line if it is exactly as expected. The most elegant solution would
require pipes and process handling to be merged from the Unix module
into the compilers.
2016-01-17 19:21:45 +00:00
David Allsopp bfe91a097e Fix running outside bash! 2016-01-16 14:12:18 +00:00
David Allsopp 8386733a87 Initial fixes for tests/asmcomp on MSVC 32-bit 2016-01-16 11:53:55 +00:00
David Allsopp 009e14a20c No need for vsnprintf workaround in VS2015
The Universal CRT includes a compliant implementation of vsnprintf.
2016-01-16 09:24:01 +00:00
Alain Frisch 7945404a4e Merge pull request #433 from dra27/fix-flambda-win
Fix native Windows ports (problems with #423 and #425)
2016-01-15 19:29:25 +01:00
David Allsopp 2d05cfb0b4 Add missing FLAMBDA config for native Windows
Missing options from #425.
2016-01-15 17:43:58 +00:00
David Allsopp bcbee6896c Fix missing Windows change in #423 2016-01-15 17:43:34 +00:00
David Allsopp ae49015d8e Share compiler config with ocamlmklib
Remove duplication between tools/ocamlmklibconfig.ml and
utils/config.ml and link ocamlmklib with config.cmo from compiler-libs.
2016-01-15 17:07:13 +00: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
David Allsopp fe4b643c4e Support OCAML_FLEXLINK environment variable
OCAML_FLEXLINK is inspected by ocamlopt, ocamlc and ocamlmklib and allows
the flexlink command to be overriden. This is primarily intended as a
solution for bootstrapping OCaml with FlexDLL, thus allowing a bytecode
image of flexlink launched with ocamlrun to be executed, instead of
requiring flexlink to be in PATH.
2016-01-15 17:07:11 +00:00
David Allsopp a7b6083be3 Add FlexDLL as git submodule
Messages for obtaining flexdll sources updated in Makefile.nt
2016-01-15 17:07:01 +00:00