Commit Graph

882 Commits (57620a7afd0e9416c76120017bdcbece0500481b)

Author SHA1 Message Date
Hugo Heuzard 1e1a1d6ead Tests for constants with modifiers
add some tests

more tests
2015-12-03 17:20:49 +01:00
alainfrisch 1c9e418b92 #6939: add non-regression test. 2015-12-03 16:42:57 +01:00
alainfrisch 9879d54989 #6865: restore previous behavior for 'let _ = expr' in the toplevel, i.e. it prints the result of 'expr'. 2015-12-03 09:26:36 +01:00
alainfrisch a46d7f7f16 Accept change. 2015-12-02 23:53:17 +01:00
alainfrisch 46c871768f Accept changes. 2015-12-02 23:49:34 +01:00
alainfrisch 2a36df0eb2 'cp' instead of 'ln' (required for Windows, harmless for Unix). 2015-12-02 16:05:52 +01:00
Daniel Bünzli 940144f304 Add Uchar module to the standard library. 2015-12-02 14:39:32 +00:00
Alain Frisch 4d7a8ce62d Fix EOL convention. 2015-12-02 14:42:11 +01:00
alainfrisch 90544ab95e Merge with trunk. 2015-12-02 12:00:44 +01:00
alainfrisch 3e96e4fffc Add testsuite for deprecated warnings. 2015-12-02 09:42:44 +01:00
Gabriel Scherer fa4a2d3dcd float parsing: also disable {+,-}infinity testing on Windows 2015-12-02 06:23:18 +01:00
Alain Frisch cb21ce3d7e Use Unix EOL convention. 2015-12-01 12:46:31 +01:00
Gabriel Scherer 1bc5c7417a Fix the windows CI: (float_of_string "nan") fails on Windows
(Report by Alain Frisch)
2015-12-01 10:24:43 +01:00
alainfrisch 4195a21d2e Merge branch 'trunk' of ssh://github.com/ocaml/ocaml into trunk 2015-12-01 09:32:05 +01:00
alainfrisch 11ea50d8e2 PR#6762: improve warning 45 (shadowing caused by open) for labels/constructors in presence of re-exported type definitions. 2015-12-01 09:30:41 +01:00
Jacques Garrigue 25dfd82184 add test for regression in commit 9229b1 (fix of PR#6980) 2015-12-01 08:29:31 +09:00
Jacques Garrigue 381328e92e add module alias support to ocamldep 2015-12-01 00:07:36 +09:00
Jeremie Dimino 62fb2c58d6 Fix PR#6920
Make sure correct debugging informations are generated for %apply and
%revapply.
2015-11-30 10:27:29 +00:00
Jacques Garrigue a1bb57048c Fix PR#6946 2015-11-30 16:45:44 +09:00
Jacques Garrigue 20b59a3318 Fix PR#6981 2015-11-30 15:17:41 +09:00
Jacques Garrigue 9229b15aaa Fix PR#6980 and remove unused Ctype.iterative_generalization 2015-11-30 13:49:30 +09:00
Gabriel Scherer 5873613d14 revert user-defined operators: fix testsuite
Some reverted change in the typer affects the Ident.t counter, and
thus changes an error message in the extension_constructor testsuite.
2015-11-29 21:01:30 +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
Gabriel Scherer 312d977037 testsuite for formatting of hexadecimal floats 2015-11-28 19:14:08 +01:00
Jeremie Dimino 4af976cffe Add tests for [%ocaml.extension_constructor <path>] 2015-11-27 18:22:52 +00:00
Jeremie Dimino d3b60c8dce Use the extension_constructor type in Obj
Rename Obj.extension_slot to Obj.extension_constructor as well
2015-11-27 17:57:41 +00:00
Damien Doligez 449ba6b7b7 Revert "testsuite/tests/lib-dynlink-*/Makefile: fix wrong include dir"
This reverts commit 7f8019fe30.

That commit was just wrong, but gcc's heuristics hide the bug,
so it only breaks on Windows :-(
2015-11-26 11:28:40 +01:00
Jacques Garrigue 61c2dd2220 Do not warn for unused [pat -> .] clauses 2015-11-26 15:01:58 +09:00
Damien Doligez 2512b48307 arg: add changelog entry and test 2015-11-25 22:22:24 +01:00
Damien Doligez 7f8019fe30 testsuite/tests/lib-dynlink-*/Makefile: fix wrong include dir 2015-11-25 15:47:53 +01:00
ygrek 53ea437ecd add tests for Stack 2015-11-22 12:42:23 -08:00
iguer d689a686b9 Map.add x y m returns the original map if x is already bound to a value that is physically equal to y in m 2015-11-22 18:29:16 +01:00
iguer 37159fbc42 Map.filter returns the original map when the given predicate satisfies all the bindings of the map 2015-11-22 18:29:16 +01:00
iguer 81ca324ef3 Map.remove returns the original map when the binding to be removed is not present in the map 2015-11-22 18:29:15 +01:00
Jacques Garrigue f4f85881fc Fix problem reported by trefis in PR#6437 2015-11-21 14:33:18 +09:00
Xavier Leroy 51104fc231 Update zsystem branch wrt upstream trunk.
Resolved conflicts: testsuite/tests/asmcomp/mainarith.c
2015-11-19 13:55:54 +01:00
Xavier Leroy 6cd8656249 PR#7024 and GPR#295: CSE confuses +0.0 and -0.0
The fix consists in representing float literals by their bit patterns (int64) in the Mach and Linear intermediate languages.

A regression test was added to the test suite.
2015-11-19 09:25:02 +01:00
Simon Cruanes a8d9896bde add test for margins 2015-11-15 17:31:01 +01:00
Damien Doligez 7cb9a80744 simplify .gitignore; remove .ignore files and tools/setignore; adjust tools/check-typo 2015-11-06 16:25:05 +01:00
François Bobot c0f19965f4 Make specialized compare unboxed
- float
    - int32
    - int64
    - nativeint

  Not for int because the comparison is done directly on the untagged version.
  Useful mainly for floats since they can be stored unboxed in records or arrays.
2015-11-05 13:07:03 +01:00
Leo White 44306923a8 Merge pull request #261 from lpw25/fix-pr6998
Fix PR6998
2015-11-05 11:35:55 +00:00
Jeremie Dimino 6676784f63 PR#6806: Allow type annotations before the "->" in "fun <args> -> <expr>"
Patch by Valentin Gatien-Baron
2015-11-05 10:41:13 +00:00
Jeremie Dimino 26657d5736 PR#6806: Syntactic sugar for type annotations on record fields
Add the following syntactic sugars, in both expressions and patterns:
- { f : typ = x } to mean { f = (x : typ) }
- { f : typ     } to mean { f = (f : typ) }

In expressions, the type annotation can also be a coercion. For
instance: { f :> typ } to mean { f = (f :> typ) }.

Patch by Valentin Gatien-Baron
2015-11-05 10:41:13 +00:00
Jacques Garrigue f32db119ce Fix PR#7036: Module alias and package type equality 2015-11-05 14:20:50 +09:00
Leo White 02ef87ed8f Add a test for no-alias-deps 2015-11-04 13:46:46 +00:00
alainfrisch 364f1cb79f Merge branch 'trunk' of github.com:ocaml/ocaml into unbox_classify_float 2015-11-03 21:03:07 +01:00
Xavier Leroy af584b9f1b testsuite: add missing prototypes for C functions
In Suse SLES 12, gcc (by default) emits warnings for unprototyped C functions.  In conjunction with -Werror this makes the test suite unusable.

Also: in tests/unboxed-primitive-args/common.ml, fixed what looks like a harmless typo in the declaration of cleanup_float.
2015-11-03 11:45:11 +01:00
Xavier Leroy 2cdb50009b z port: update the tests/asmcomp test 2015-10-31 06:44:21 -04:00
Xavier Leroy 1ef188e2b1 tests/asmcomp: improve the arith test
- Test multiply-high
- Less verbose output
- Use our own PRNG instead of rand()
2015-10-31 06:39:27 -04:00
Xavier Leroy 58db11e051 IBM zSystem port of OCaml
Import of Bill O'Farrell's port, rebased from 4.02.1 to trunk.
2015-10-29 09:55:19 +01:00
alainfrisch 96c3a3da75 Avoid boxing floats when calling Pervasives.classify_float. 2015-10-28 16:43:35 +01:00
Xavier Leroy 313877fac9 Include test/basic in the "all-basic" target. 2015-10-26 10:32:48 +01:00
Gabriel Scherer e88b2fbf69 testsuite/Makefile: subset targets all-{basic,lib,typing,tool}
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16547 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-25 16:24:49 +00:00
Gabriel Scherer 54e039901e GPR#42: Add simpler functor type syntax
(Leo White)

Add support for simple functor types of the form:

    S -> T

equivalent to:

    functor (_ : S) -> T

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16546 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-25 16:24:47 +00:00
Gabriel Scherer 8afbaa5747 New representation for queues, avoiding Obj.magic
(Jérémie Dimino)

- use inline-records to avoid using Obj.magic while keeping
  indirections to the minumum
- change the representation from a cyclic list to a simply-linked
  list. The drawback is one more word per queue, but it makes the
  implementation clearer

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16545 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-25 13:39:07 +00:00
Gabriel Scherer 2d9ff61b02 Improve the code generation for if equivalent to seqand or sequor
(Pierre Chambart)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16544 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-25 13:39:05 +00:00
Gabriel Scherer b64bef1aa4 Fix few reference files in the test suite
(Florian Angeletti)

Update few reference files in tests/typing-gadt to cope with the
altered error message for non-refutable pattern, i.e. invalid use of
`| _ -> .`.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16542 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-25 12:06:38 +00:00
Jacques Garrigue a335b18a45 merge branches/gadt-warnings
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16532 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-23 08:33:44 +00:00
Mark Shinwell e27e699fca GPR#173: Attributes to control inlining
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16530 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-23 08:18:08 +00:00
Alain Frisch 4984cd0f8f PR#7022, GPR#259: unbox float and boxed ints earlier, avoid second pass.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16527 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-20 15:11:11 +00:00
Alain Frisch c9f0dc9703 Get rid of warning 52.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16524 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-19 13:48:30 +00:00
Gabriel Scherer 41a8aa5771 PR#7012: hint when using [ 'A | 'B ] instead of [ B ]
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16519 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-17 13:46:02 +00:00
Jacques Garrigue 211888ed03 Fix PR#6907: always mark all loops...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16513 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-16 15:00:46 +00:00
Jacques Garrigue 0e4d0e218b test case for PR#6954
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16510 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-16 14:03:45 +00:00
Jacques Garrigue 8ff158b81c Fix PR#6954: subtleties of expansion...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16509 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-16 14:03:04 +00:00
Jacques Garrigue bea2f16ec8 Fix PR#7016: occur check must handle existing recursive types
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16508 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-16 10:25:08 +00:00
Jacques Garrigue e34f40ad87 switch to 'pat -> .' and add P/Texp_unreachable
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16507 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-16 00:13:40 +00:00
Jacques Garrigue 4188f0543d mark empty matches as Partial
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16506 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-15 15:59:28 +00:00
Jacques Garrigue b784b65925 add distinct warning for unreachable cases
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16504 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-15 15:39:59 +00:00
Alain Frisch aaeda7763b #4800: better compilation of tuple assignment (joint work Gabriel Scherer / Alain Frisch).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16501 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-15 12:07:08 +00:00
Jacques Garrigue a09fb037ac add refuted cases, syntax is 'pat -> _'
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16500 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-15 01:55:52 +00:00
Jacques Garrigue e6075fd1e3 recursive expansion for single cases
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16496 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-13 12:38:07 +00:00
Damien Doligez cafbcaf785 tests/lib-threads/swapchan: sort results of nondeterministic test
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16493 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-12 15:11:14 +00:00
Damien Doligez 8463f6667f ignore generated files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16491 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-12 09:44:51 +00:00
Jacques Garrigue 0a4f57d5b7 Fix PR#7012
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16489 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-10 07:22:35 +00:00
Gabriel Scherer 3d36df5781 minor comment fixes by Octachron
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16488 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-10 03:50:57 +00:00
Gabriel Scherer fcb1eb35d2 Translation of french comments in testsuite
(user 'octachron')

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16481 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-09 20:41:49 +00:00
Damien Doligez 3397e7ff16 GPR#243: Faster test suite
(Xavier Leroy)


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16466 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-09 15:45:37 +00:00
Jérémie Dimino 4098845132 Don't allow "noalloc" together with [@@noalloc]
To avoid confusion about how the "noalloc" is to be interpreted if
both are present.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16461 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-06 10:58:28 +00:00
Jérémie Dimino bd21592814 Deprecated warning for "float" and "noalloc"
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16460 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-06 10:58:27 +00:00
Jérémie Dimino 380e66d6db Add tests for [@@unboxed] and [@@noalloc]
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16458 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-06 10:58:26 +00:00
Jérémie Dimino 62b89a3a5c Replace uses of "noalloc" by [@@noalloc]
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16455 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-06 10:58:22 +00:00
Alain Frisch 12f6a53937 GPR#250: Check for negative start element in Array.sub.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16450 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-10-05 09:02:05 +00:00
Pierre Weis dfcc115f12 Consistently quoting quote and doublequote into string and character litterals.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16436 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-21 17:42:11 +00:00
Pierre Weis 571b7e49e6 Consistently quoting quote and doublequote into string and character litterals.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16435 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-21 17:40:50 +00:00
Jacques Garrigue 66dc0fc0fc Add test case from PR#6992
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16428 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-18 13:51:41 +00:00
Jacques Garrigue f5bf4bdce1 Fix PR#6993: allow recursive types when doing unification on GADT indices
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16426 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-18 09:55:18 +00:00
Damien Doligez b860d63145 whitespace cleanup, cut long lines, add some missing headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16415 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-11 11:58:31 +00:00
Jacques Garrigue ceb8ceca82 Fix PR#6985
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16413 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-10 02:34:04 +00:00
Jacques Garrigue a0f6145be5 Fix PR#6944
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16412 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-09 09:17:02 +00:00
Jacques Garrigue 8873757fb1 partial fix of PR#5780
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16411 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-09 08:51:02 +00:00
Jacques Garrigue 65435149d2 Fix PR#6982
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16410 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-09 06:37:16 +00:00
Jérémie Dimino eeced22d26 Use [intnat] instead of [long] in tests/unboxed-primitive-args
Because sizeof(long)=4 on Win64.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16409 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-08 15:29:33 +00:00
Jérémie Dimino 2db27c031b Avoid generating huge files in tests/unboxed-primitive-args
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16408 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-08 15:29:31 +00:00
Jacques Garrigue 3b0837181f make all
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16404 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-02 18:49:52 +00:00
Jacques Garrigue 9fb224a836 slightly more efficient redundancy check
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16403 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-02 16:00:19 +00:00
Jacques Garrigue e2c5a47a95 redundancy check now works / complement of exhaustiveness
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16402 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-02 10:03:02 +00:00
Jacques Garrigue a5fbe184fb do not add .result
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16401 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-02 08:54:45 +00:00
Jacques Garrigue 254ab1d1b6 check for unused cases due to GADTs
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16400 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-09-02 08:53:47 +00:00
Jérémie Dimino 0850ec49ce Fix compilation of the unboxed-primitive-args test on arm32
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16396 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-26 09:12:33 +00:00
Jérémie Dimino 79978e5a39 Add a test for int64 unboxing
Especially, test that unboxing of int64 works correctly on 32 bit
platforms.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16389 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-25 16:18:52 +00:00
Jérémie Dimino 4032ba1540 Add typing tests for [@unboxed] and [@untagged]
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16388 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-25 16:18:52 +00:00
Jérémie Dimino 5a19e95868 Add tests for [@unboxed] and [@untagged]
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16387 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-25 16:18:51 +00:00
Jérémie Dimino 7a3517bcbe Allow tests to be native code only
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16386 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-25 16:18:50 +00:00
Damien Doligez ba6bcdf8a8 tests/lib-dynlink-{bytecode,native} : fix slightly wrong command line options
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16381 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-25 15:07:12 +00:00
Xavier Leroy 84ebf792e6 Update wrt trunk, revision 16361.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/ppc64@16362 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-20 16:53:53 +00:00
Gabriel Scherer 6437506bfe Regression test for PR#3612
(Pierre Chambart)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16359 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-16 21:23:51 +00:00
Gabriel Scherer 5ede9b7ebf minor testsuite fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16355 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-16 20:56:10 +00:00
Xavier Leroy cf87a2c664 Update wrt trunk r16319.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/ppc64@16320 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-03 09:18:04 +00:00
Gabriel Scherer 370677b639 PR#6649, GPR#222: accept (int_of_string "+3")
(Christopher McAlpine)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16308 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-08-02 13:32:44 +00:00
Xavier Leroy d232e7d4ff PPC64 little-endian support.
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/ppc64@16298 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-30 09:07:09 +00:00
Xavier Leroy c157926a36 float_of_big_int: for negative arguments, the top 55 bits must round towards -inf, otherwise wrong rounding occurs. Hence, use shift_right_big_int and not shift_right_towards_zero_big_int.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16284 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-28 07:49:50 +00:00
Damien Doligez debaf6edb2 fix regression test for PR#6938 for 32-bit machines
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16283 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-27 18:44:10 +00:00
Xavier Leroy 53231bcdc3 Update to trunk r16267.
A change on trunk in cmmgen was causing problems: the use of array_indexing
in bigarray_indexing was constructing derived pointers of Addr type
instead of the correct Int type.  (Because bigarray inner pointers
are outside the heap, and because they are live across allocations.)
Added an optional argument to array_indexing to specify expected
pointer type, and adapted bigarray_indexing to use it with type Int.


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@16268 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-27 08:18:53 +00:00
Gabriel Scherer 235ee2ddef GPR#26: support for "(type a b ..)" as sugar for "(type a) (type b) .."
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16258 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-26 19:01:42 +00:00
Gabriel Scherer 907305ce20 PR#6938: fix regression on "%047.27{l,L,n}{d,i,x,X,o,u}"
(Benoît Vaugon, report by Arduino Cascella)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16250 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-25 20:44:02 +00:00
Xavier Leroy 8fc4849b83 big_int.ml: clarify comments.
test_ratios.ml: on x86-32 with x87 extended precision, the computation of the expected result is sometimes wrong because of double rounding in FP division.  Reduce the number of test rounds so that we don't run into this problem.  Note that the float_of_ratio function being tested produces the correct results on x86-x87, because it is immune to double rounding (exact -> extended precision -> double precision).


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16249 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-25 15:25:01 +00:00
Xavier Leroy af4e6bff91 PR#6896: serious reimplementation of Big_int.float_of_big_int and
Ratio.float_of_ratio, ensuring that the result is correctly rounded.

The previous implementations were embarassingly imprecise and slow.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16247 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-24 17:44:12 +00:00
Xavier Leroy bf778d1d5d PPC64: add support for large TOC (32-bit offsets instead of 16-bit)
PPC: add some CFI directives and a bit of debug info.
testsuite/tests/asmcomp/power.S: update for PPC64le.


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/ppc64@16227 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-21 08:28:26 +00:00
Xavier Leroy 8815d7e1a2 PowerPC port of ocamlopt:
- Removed MacOS X support, long dead.
- Added support for PowerPC 64 bits, big-endian, ELF v1 ABI
  (tested, mostly works, some issues remain with marshaling of code pointers)
- Added support for PowerPC 64 bits, little-endian, ELF v2 ABI
  (completely untested)


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/ppc64@16226 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-20 15:41:44 +00:00
Damien Doligez 60c854b66d tests/float-unboxing: fix test for Windows
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16220 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-20 12:53:17 +00:00
Alain Frisch 748ec06e6e GPR#109: new unboxing strategy (patch by vbrankov).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16215 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-17 15:47:59 +00:00
Damien Doligez 860c670848 merge branch 4.02 from 4.02.1 (rev 15540) to a few fixes after 4.02.2 (rev 16205)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16214 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-17 14:31:05 +00:00
Damien Doligez ca2db8a939 fix problems with FORTRAN tests
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-15 14:52:12 +00:00
Damien Doligez 222562d376 typo in FORTRAN test
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16209 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-15 14:51:42 +00:00
Damien Doligez 002122b2da remove spurious verbosity in test makefile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16208 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-15 14:51:08 +00:00
Damien Doligez 999d9ca008 remove spurious verbosity in test makefile
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16207 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-15 14:50:36 +00:00
Damien Doligez ea671f7f0b fix problems with FORTRAN tests
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16206 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-15 14:50:04 +00:00
Jérémie Dimino 9ad65262de add test for PR#6865
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16200 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-13 11:22:13 +00:00
Jacques Garrigue c2984fe481 add tests related to PR#6899
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16190 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-29 07:33:28 +00:00
Leo White 5c55e4cc08 Attach documentation comments to Parsetree
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16189 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-28 13:11:50 +00:00
Jacques Garrigue fbcfd218f1 Fix PR#6899
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16184 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-23 08:40:10 +00:00
Jacques Garrigue 0e56dde7be For PR#6897
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16183 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-23 08:38:16 +00:00
Jacques Garrigue b650a13145 Fix PR#6897 as suggested by Alain
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-06-17 11:09:49 +00:00
Gabriel Scherer 92c67a5a02 minor: the previous commit had an old version of the patch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16139 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-24 08:15:41 +00:00
Gabriel Scherer e9785253b2 PR#6876: improve warning 6 by listing the omitted labels.
(Eyyüb Sari)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16137 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-24 07:33:32 +00:00
Jacques Garrigue f1bcf0eb6d use or-patterns in exhaustiveness warnings when possible
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16136 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-21 03:29:47 +00:00
Jacques Garrigue c88f3d0634 Improved exhaustiveness warnings for GADTs, with non-deterministic in type_pat
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/gadt-warnings@16133 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-19 22:52:21 +00:00
Jacques Garrigue 10c907f99c test case for PR#5545
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16131 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-19 22:33:07 +00:00
Jacques Garrigue bf2c5c3c17 Fix PR#6870
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16122 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-17 03:07:10 +00:00
Jacques Garrigue 6f5241de44 Fix PR#6872
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16121 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-17 02:36:30 +00:00
Damien Doligez 5fe760c7da remove "external" testsuite (superseded by opam)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16116 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-12 16:50:44 +00:00
Jacques Garrigue 691aabb723 Fix PR#6849 and PR#6862
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16102 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-09 02:17:36 +00:00
Alain Frisch b94c4b840f GPR#174: ensure that Set.remove and Set.filter return the original set (physically) when no change is required. Also avoid allocations in this case. Similar to what had been done for Set.add in #6645.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16080 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-05 16:08:00 +00:00
Damien Doligez ea845ce074 GPR#159: Better locations for structure/signature items
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16075 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-04 18:44:11 +00:00
Gabriel Scherer 0d3d003198 GPR#168: fix bad interaction of warning 34 (unused type declaration) with "nonrec"
(Frédéric Bour)

Typechecking of nonrec types was still looking for uses in the temporary environment.
This made the compiler fail with "exception Not_found" when warning 34 was enabled.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16065 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-05-01 21:45:10 +00:00
Gabriel Scherer 736b4e2f8f minor testsuite fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16051 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 21:57:51 +00:00
Gabriel Scherer 0cc8a6fb39 Make accessing Bigarray.t faster by optimizing Cmmgen.bigarray_indexing
(Vladimir Brankov)

bigarray_indexing now works the same way indexing ordinary arrays works.

Review note: the local ba_indexing function now returns a tagged
integer instead of an untagged integer.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16046 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 20:41:50 +00:00
Gabriel Scherer 926cc79f1c PR#6824: fix buffer sharing on partial application of Format.asprintf
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16043 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 20:00:57 +00:00
Gabriel Scherer 078afef9e1 make the edit_distance testsuite bytecode-only (Leo White)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16042 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-26 20:00:55 +00:00
Mark Shinwell 78bb2fd2e4 Fix PR#6686 and PR#6770
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16036 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-24 09:29:57 +00:00
Jacques Garrigue 8d1f813dee test for PR#5663
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16030 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-22 07:14:26 +00:00
Gabriel Scherer 8bd234ffab fix minor CI failure (the test for PR#6672 was incorrect)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16028 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-21 20:50:45 +00:00
Jacques Garrigue 3b1a33c77b PR#6672: Unused variance specification allowed in with constraint
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16024 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-20 07:57:51 +00:00
Damien Doligez 98b4109c7d extend OCAMLRUNPARAM instead of replacing it
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16021 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-15 19:22:20 +00:00
Jacques Garrigue 5b8e25d27a Fix PR#6836: Assertion failure using -short-paths
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16012 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-13 07:17:09 +00:00
Gabriel Scherer 90061455e6 GPR#111: `(f [@taillcall]) x y` warns if `f x y` is not a tail-call
(Simon Cruanes)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16010 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-12 18:26:38 +00:00
Gabriel Scherer bbf92df92c minor testsuite fix after PR#6827
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15990 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-11 13:34:03 +00:00
Damien Doligez 823be1d693 use the official name of Jane Street in headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15986 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-04-07 18:48:35 +00:00
Alain Frisch 30bb2c39d8 #6645: Set.add returns the original set when the element to be added is already in it, and document this invariant. Also guarantee that in that case, Set.add doesn't allocate (but do not document it for now).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15966 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-26 09:28:59 +00:00
Jacques Garrigue aa5422cdeb Fix PR#5545, cleaner use of generalize_spine
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15964 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-25 23:25:52 +00:00
Jacques Garrigue d2bed28077 Fix PR#6817
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15959 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-25 01:49:07 +00:00
Jérémie Dimino 321e95804c Fix printing of sequence of type delcarations with -short-paths
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15942 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-16 17:38:38 +00:00
Damien Doligez e60a2db81c PR#6521: {Bytes,Char,String}.escaped are locale-dependent
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15901 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-11 18:41:15 +00:00
Gabriel Scherer efa9d3bd9e PR#6791: "%s@[", "%s@{" regression in Scanf
(Benoît Vaugon)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15881 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-03-07 10:55:13 +00:00
Jacques Garrigue 22a3f9fc16 Fix PR#6787
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15851 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-19 09:57:41 +00:00
Gabriel Scherer 218f16f5ee PR#6749: ocamlopt returns n for (n mod 1) instead of 0
(Mark Shinwell and Jérémie Dimino)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15824 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-08 10:00:18 +00:00
Damien Doligez 97b2fe76ae replace use of deprecated String.uppercase
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15816 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-06 21:54:40 +00:00
Jacques Garrigue a5252548c6 Fix PR#6768: Typechecker overflow the stack on cyclic type
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15810 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-05 07:47:14 +00:00
Damien Doligez 0f5046b8b4 configure: add test for cygwin64
Makefile: fix compilation of checkstack
tests/callback: fix compilation



git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15809 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-02-05 04:28:25 +00:00
Jacques Garrigue 410a8b599d Fix PR#6752: scope escaping due to reference inside a module
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15783 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-17 03:58:11 +00:00
Jacques Garrigue 21bec6fb4b Fix PR#6171: Error message confusing for the beginner when a type escapes its scope.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15782 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-17 03:26:54 +00:00
Jacques Garrigue 1bb0491e64 partial fix of PR#6744
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15781 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-01-17 00:44:02 +00:00
Gabriel Scherer 4f69a66ac4 PR#5887: windows testsuite fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15761 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-27 16:21:25 +00:00
Gabriel Scherer 0fd484a582 PR#5887: windows testsuite fix
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15760 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-27 15:38:08 +00:00
Gabriel Scherer 7ca29ef3f7 PR#5887: move the byterun/*.h headers to byterun/caml/*.h to avoid header name clashes
(Jérôme Vouillon and Adrien Nader and Peter Zotov)


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15757 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-27 14:41:49 +00:00
Gabriel Scherer 055d5ff07f PR#6714: allow [@@ocaml.warning] on most structure and signature items (values, modules, module types)
(Peter Zotov)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15752 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-27 08:44:50 +00:00
Damien Doligez 4403ab3bb5 PR#6665: Failure of tests/asmcomp on sparc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15744 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-24 16:24:51 +00:00
Gabriel Scherer c0de696981 minor fixes to some testsuite tests
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15736 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-21 12:39:39 +00:00
Gabriel Scherer 85b75d7963 PR#6494: Add equal function in modules Big_int, Bytes, Char, Digest, Int32, Int64, Nativeint, Num and String
(Romain Calascibetta)

From: Romain Calascibetta <romain.calascibetta@gmail.com>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15725 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-21 11:46:08 +00:00
Gabriel Scherer e2b662980f testsuite/Makefile.toplevel: make terminal DUMB by default (tests rely on this)
Currently it is not equivalent to do:
  cd testsuite; make one DIR=tests/$foo
and
  cd testsuite/tests/$foo; make
because the latter will not set TERM=dumb and toplevel tests will use
nice escape-code location highlighting instead of ASCII-made squiggly
lines, which breaks the tests.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15716 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-21 08:26:20 +00:00
Gabriel Scherer 4c5c124785 PR#6466: use "extensible variant" rather than "open" types in error message
(Leo White)

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15715 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-21 08:26:18 +00:00
Jacques Garrigue 583395b0c6 Fix PR#6726: Access to the wrong field of aliased module
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15681 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-19 07:20:00 +00:00
Jacques Garrigue fd2e5d7a52 Fix PR#6716: Assertion failure with existentials + inline records + rows
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15675 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-16 01:37:44 +00:00
Gabriel Scherer 4a80e9da11 Simplify the definition of custom .{} operators
This commits modify the Bigarray syntax extension in order to facilitate the use of custom .{} operators. The compatibility with the existing Bigarray syntax has been preserved as much as possible. However, this commit will break code which use the Bigarray .{}
syntax without opening the Bigarray module first!

Like the previous commit, this commit modifies the parser to desugar bigarray1.{index} to ( .{} ) bigarray1 index. Following the bigarray syntax, the index operator used
in the desugaring changes if the index is a n-tuple:
1-tuple => .{}
2-tuple => .{,}
3-tuple => .{,,}
4 and more tuples => .{,..,}

The bigarray modules has been modified to use this new index operators. Note that this means that these index operators are not anymore accessible without opening the bigarray module.

From: octachron <octa@polychoron.fr>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15662 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-13 22:13:37 +00:00
Gabriel Scherer 14ab17aab9 harden testsuite/makefile/Makefile.dlambda wrt identifiers with quotes
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15659 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-13 22:12:27 +00:00
Jacques Garrigue 1453740778 fix PR#6690
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15637 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-12-08 07:51:10 +00:00
Luc Maranget a142a01dae correct PR#6674
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15608 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-25 15:11:40 +00:00
Gabriel Scherer 849488e126 testsuite/lib-hashtbl: use LICENSE rather than /usr/share/dict/words to avoid excessive test time
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15604 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-23 09:18:03 +00:00
Gabriel Scherer 9db301d185 specialize_comparison: also specialize bool and all-constant-constructors types
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15596 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-17 18:18:21 +00:00
Gabriel Scherer f32f677f5a minor sed portability fix...
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15595 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-17 13:05:31 +00:00
Gabriel Scherer 7f5d60adba Add translprim testsuite
From: Frederic Bour <frederic.bour@lakaban.net>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15585 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-17 12:05:35 +00:00
Gabriel Scherer a0f1d3e171 testsuite/makefiles: a more robust -dlambda test
From: Gabriel Scherer <gabriel.scherer@gmail.com>

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15584 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-17 12:05:33 +00:00
Jacques Garrigue dcb6a4dd7e tentative fix of PR#6651
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15576 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-12 11:59:23 +00:00
Jacques Garrigue 88fadf06bc add repro case for PR#51
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15575 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-12 09:14:14 +00:00
Jacques Garrigue 18ed39fb36 Fix PR#6650: Cty_constr not handled correctly by Subst
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15574 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-10 09:43:30 +00:00
Luc Maranget 3bded3f977 Solve PR#6646, ie avoid introducing huge jump summaries
and unshared default clauses in the presence of many (>= 32) non-matched
constructors.




git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15570 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-07 14:13:53 +00:00
Xavier Leroy ac02f56351 More precise typing at the C-- and Mach level:
- Register type "Addr" is split into
    . "Val" (well-formed OCaml values, appropriate as GC roots)
    . "Addr" (derived pointers within the heap, must not survive a GC)
- memory_chunk "Word" is split into
    . "Word_val" (OCaml value)
    . "Word_int" (native-sized integer, not a pointer into the heap)

Cmmgen was updated to use Word_val or Word_int as appropriate.

Application #1: fail at compile-time if a derived pointer within the heap
survives a GC point (cf. PR#6484).

Application #2: CSE can do a better job across allocation points
(keep factoring expressions of type Int, Val, Float, but not Addr).


git-svn-id: http://caml.inria.fr/svn/ocaml/branches/cmm-mach-types@15568 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-11-06 08:54:14 +00:00
Damien Doligez 031cffd155 merge branch 4.02 from release 4.02.0 to release 4.02.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15558 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-15 13:34:58 +00:00
Alain Frisch e3ad818fb5 Reintegrate-merge constructors_with_record5 branch.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15556 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-14 15:51:30 +00:00