Commit Graph

807 Commits (d9337d856de05f5203ef6887fc4b077fe0657a5f)

Author SHA1 Message Date
alainfrisch 8602717098 Add test. 2015-12-09 18:36:18 +01:00
Drup f76792ec04 Add a test for attributes. 2015-12-09 14:26:06 +01:00
Drup c1e91bdeee Add a test for extensions. 2015-12-09 14:26:06 +01:00
Thomas Refis 48e3ff28a5 PR#6422: add tests regarding exceptions under or-patterns 2015-12-09 11:20:19 +00: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
alainfrisch e888e099e2 Revert commits related to #330.
1. Revert "Switch to -custom for bytecode tests."
This reverts commit 6b7f81caf5.

2. Revert "Fix Changelog."
This reverts commit d94488d7b5.

3.Revert "Fix testsuite: use binary channels."
This reverts commit 840f7ca506.

4. Revert "Fix testsuite: do not require a globally installed ocamlrun."
This reverts commit 0388ef46d9.

5. Revert "Merge branch 'trunk' of https://github.com/bvaugon/ocaml into bvaugon-trunk"
This reverts commit 1ff6db10bf, reversing
changes made to 89d116c514.
2015-12-08 14:44:29 +01:00
Jacques Garrigue 78a7a55609 PR#6542: solve new performance problems du to path compression and copy
of types for the delayed icheck for unused cases
2015-12-08 19:45:42 +09:00
Simon Cruanes 6c5665393e fix 0007026
- remove write barrier for constant poly variants
- add tests
2015-12-06 19:24:31 +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 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
Alain Frisch 6b7f81caf5 Switch to -custom for bytecode tests. 2015-12-04 18:29:44 +01:00
alainfrisch f443b1b617 Merge branch 'trunk' of ssh://github.com/ocaml/ocaml into trunk 2015-12-04 16:51:52 +01:00
alainfrisch 840f7ca506 Fix testsuite: use binary channels. 2015-12-04 16:46:52 +01:00
alainfrisch 0388ef46d9 Fix testsuite: do not require a globally installed ocamlrun. 2015-12-04 16:46:36 +01:00
alainfrisch 1ff6db10bf Merge branch 'trunk' of https://github.com/bvaugon/ocaml into bvaugon-trunk 2015-12-04 16:31:59 +01:00
Damien Doligez 660dd6784f fix min_int test 2015-12-04 15:48:05 +01:00
Alain Frisch 1fa12312a1 Merge pull request #329 from bschommer/array-functions
Add array functions: for_all, exists, mem, memq.
2015-12-04 15:47:33 +01:00
Bernhard Schommer 83dcf62ebf Removed for_all2, exists2 and find again. 2015-12-04 15:41:48 +01:00
Xavier Leroy 58943faf32 Branch win32-sockets: add regression tests for PR#4466 and PR#5325 2015-12-04 13:58:12 +01:00
alainfrisch 7ce026e815 Disable a test that does not work on 32-bit. 2015-12-04 13:55:35 +01:00
Bernhard Schommer a631e0858c More tests for array functions.
The testsuite now covers more corner cases and includes also test
for float arrays and matrices.
2015-12-04 12:27:13 +01:00
Xavier Leroy b6442d5957 Branch win32-sockets: missing includes in byterun/unix.c + add test.
The "socketsbuf.ml" test checks that buffered I/O channels over sockets work properly.  (Regression test for PR#5578.)
2015-12-04 12:01:10 +01:00
Bernhard Schommer 7a082785be Fixed typos and changed exists2 and for_all2.
Now exist2 and for_all2 only raise the invalid_arg excpetion when
the end of one array is reached.
Also some new tests in the testsuite.
2015-12-04 11:15:40 +01:00
Bernhard Schommer dcc1421e1e Added exists2, for_all2, mem, memq and find.
The functions are implemented as their pendants in the List module.
2015-12-04 10:10:36 +01:00
Benoit Vaugon 5e3964da86 Fix "weak hash of serialised closures" from mantis #0005942. 2015-12-04 00:51:44 +01:00
Bernhard Schommer 35c25fb353 Added tests for Array.exists and Array.for_all
For each function there are two sets of tests, one on an empty and one on
an full set of elements. They use some simple predicates to test whether
for_all and exists work as expected.
2015-12-04 00:41:29 +01:00
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
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