Commit Graph

713 Commits (f7d20f161ae2103d376bd7432c1c7ba2b64023dc)

Author SHA1 Message Date
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 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
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