From c4f999bb72132c61e3ba776ec7b2035dd1c71966 Mon Sep 17 00:00:00 2001 From: Stephane Glondu Date: Tue, 21 Dec 2021 13:50:00 +0100 Subject: [PATCH] New upstream version 4.13.1 --- Changes | 9 ++++++ VERSION | 2 +- boot/ocamlc | Bin 2893319 -> 2893315 bytes boot/ocamllex | Bin 351449 -> 351449 bytes configure | 28 +++++++++--------- ocaml-variants.opam | 6 ++-- .../tests/typing-modules-bugs/pr10661_ok.ml | 10 +++++++ typing/btype.ml | 4 ++- 8 files changed, 40 insertions(+), 19 deletions(-) create mode 100644 testsuite/tests/typing-modules-bugs/pr10661_ok.ml diff --git a/Changes b/Changes index cf020c89..deb5c534 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,12 @@ +OCaml 4.13.1 (01 October 2021) +-------------------------------- + +### Bug fixes + +- #10661, #10662: fix a bug with classes named "row" + (Gabriel Scherer, report by Nicolás Ojeda Bär) + + OCaml 4.13.0 (24 September 2021) -------------------------------- diff --git a/VERSION b/VERSION index 3cc34799..1854a0b2 100644 --- a/VERSION +++ b/VERSION @@ -1,4 +1,4 @@ -4.13.0 +4.13.1 # The version string is the first line of this file. # It must be in the format described in stdlib/sys.mli diff --git a/boot/ocamlc b/boot/ocamlc index 7874a890bba732acaf555ec91132fa681bd79b0e..8a6cfd73ecb0fdc406daa6fb06a23841afaa97ac 100755 GIT binary patch delta 1319 zcmZXTZAep57{_gO zdIB+#K2~cNqJ0plFX2lCeo_cR`j8MLYEIpoyFItAad*4$2o3Q|bVAE? ztq6h&)|S;Qxe0?|TA`mn$Au9D5ueX68K$Mg4Bx`kM4S-CAo2oi8)&lRN-;aPbXcKX3Y`sn zl(J>d6=|Xysb{#48V2T=f+sPmgU9nFI=u=l`RBIJG!V<3jNmTB(q@*F%ygog!Y5@Wlf+H2IgP?VsH@V+ZY1BFSN$@Kg&+b-Ey+j)H5DJpiMUZEX+Z;~Q9M2{E{ z7TJXuk$l926d-0~H)25wks_oRu_7gi4cUW~B4r_O(!TPFctU4hmY=FLdED*YzB+eb z?^XAej<(*Os+wxgzG{y@uuzUvgaQkD@2r+PPX;w=LXNctHEDz_of~clY8XNysM85q g$038Lze3ZrqmY>WzG(;I4Ed%jTfAf#rtGeU->~zIHUIzs delta 1420 zcmZXSTSyd97{~YQMOR%tJC5UcS#{0pwqAD02TLuDLM*g;kTS6_3(C^cd@YrR?DCQr zd=y>Spcl#71!K{NAcERJs5glsSf~gJ)bg_Hs?&FJCuXMuKhFHW?|;5?&Ufa@jF*fc zLlTknl0h;`CMiyem&{Uvlqe-h7AaXunWSqzV)w86=))><6+Hbmam>|W^iO`HlgXx2 zbF!?1;FL8Dh8JlGH;uYXr_&LHjTx9)qy?sod9;nWLp*W768eO348&tz@iPB&a4*p} zLgAV$C!%yBEc`tp%T{PuvGQPFre<;zxB-!e+GT3V46wQ???v<`p-yFcaoj>|wiP@c z!Vh{e%!;$&zy%37D|&r(vw*VsG-`GJu0}U&^iGY=Ky8iIXP5aAmbsXMpTe>{W^vdW z9^i+1r^_0BTBEBq`ZM@m3p|;CJ1aC>Xbr_y+lx98a(sqeV1H~VgQ1h@Mwn?gSYS_x z+QZt2L@UWN;KGzQwfvIh zE*O4q5}`g!&4Z)pW^bmnydO1dgz{_Pr)~h(uvzi6L_JKiQK!*PjZQ$#_E2iFr+Bnk zGwWZ`&{FKRZa^?ho%y{OR{xLkV(fXpLis8c%U@tP1gF z?&sDhC0wWG2v5PiPUpy3$lsu1{vph=)vPw_ORYwijYt$36yWMLv5c1{Vt$MG~M94DgI6@Y1iYNMy&>V2s Yh&a+6a3EX#-2vy34ssh_6_wTh0s3U1O#lD@ diff --git a/boot/ocamllex b/boot/ocamllex index 5a3705cb74040cda739d7ad031ca19cf5a419615..18a39850b35cf2b3c78fca359993edeea70f48ce 100755 GIT binary patch delta 25 hcmcb)Q}pIe(S{br7N!>FEi5TB84b6m&SWV$3;>KY3OE1& delta 25 hcmcb)Q}pIe(S{br7N!>FEi5TB84b3l&SWV$3;>KR3O4`% diff --git a/configure b/configure index 961232fc..bf3052be 100755 --- a/configure +++ b/configure @@ -56,7 +56,7 @@ if test -e '.git' ; then : fi fi # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for OCaml 4.13.0. +# Generated by GNU Autoconf 2.69 for OCaml 4.13.1. # # Report bugs to . # @@ -646,8 +646,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='OCaml' PACKAGE_TARNAME='ocaml' -PACKAGE_VERSION='4.13.0' -PACKAGE_STRING='OCaml 4.13.0' +PACKAGE_VERSION='4.13.1' +PACKAGE_STRING='OCaml 4.13.1' PACKAGE_BUGREPORT='caml-list@inria.fr' PACKAGE_URL='http://www.ocaml.org' @@ -1479,7 +1479,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OCaml 4.13.0 to adapt to many kinds of systems. +\`configure' configures OCaml 4.13.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1545,7 +1545,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OCaml 4.13.0:";; + short | recursive ) echo "Configuration of OCaml 4.13.1:";; esac cat <<\_ACEOF @@ -1709,7 +1709,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -OCaml configure 4.13.0 +OCaml configure 4.13.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2418,7 +2418,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OCaml $as_me 4.13.0, which was +It was created by OCaml $as_me 4.13.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2767,8 +2767,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: Configuring OCaml version 4.13.0" >&5 -$as_echo "$as_me: Configuring OCaml version 4.13.0" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: Configuring OCaml version 4.13.1" >&5 +$as_echo "$as_me: Configuring OCaml version 4.13.1" >&6;} # Configuration variables @@ -2851,7 +2851,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. -VERSION=4.13.0 +VERSION=4.13.1 # Note: This is present for the flexdll bootstrap where it exposed as the old @@ -12727,7 +12727,7 @@ case $ocaml_cv_cc_vendor in #( cc_warnings='-Wall -Wdeclaration-after-statement' ;; esac -case $enable_warn_error,4.13.0 in #( +case $enable_warn_error,4.13.1 in #( yes,*|,*+dev*) : cc_warnings="$cc_warnings $warn_error_flag" ;; #( *) : @@ -17602,7 +17602,7 @@ fi -case $enable_ocamltest,4.13.0 in #( +case $enable_ocamltest,4.13.1 in #( yes,*|,*+dev*) : ocamltest='ocamltest' ;; #( *) : @@ -18320,7 +18320,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by OCaml $as_me 4.13.0, which was +This file was extended by OCaml $as_me 4.13.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -18387,7 +18387,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -OCaml config.status 4.13.0 +OCaml config.status 4.13.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/ocaml-variants.opam b/ocaml-variants.opam index 4c3d58c8..938807ea 100644 --- a/ocaml-variants.opam +++ b/ocaml-variants.opam @@ -1,8 +1,8 @@ opam-version: "2.0" -version: "4.13.0" -synopsis: "OCaml 4.13.0" +version: "4.13.1" +synopsis: "OCaml 4.13.1" depends: [ - "ocaml" {= "4.13.0" & post} + "ocaml" {= "4.13.1" & post} "base-unix" {post} "base-bigarray" {post} "base-threads" {post} diff --git a/testsuite/tests/typing-modules-bugs/pr10661_ok.ml b/testsuite/tests/typing-modules-bugs/pr10661_ok.ml new file mode 100644 index 00000000..1dfa42f4 --- /dev/null +++ b/testsuite/tests/typing-modules-bugs/pr10661_ok.ml @@ -0,0 +1,10 @@ +(* TEST +* setup-ocamlc.byte-build-env +** ocamlc.byte +*** check-ocamlc.byte-output +*) + +module M = struct + class row = object + end +end diff --git a/typing/btype.ml b/typing/btype.ml index e414f7a9..a18f53dd 100644 --- a/typing/btype.ml +++ b/typing/btype.ml @@ -245,7 +245,9 @@ let has_constr_row t = let is_row_name s = let l = String.length s in - if l < 4 then false else String.sub s (l-4) 4 = "#row" + (* PR#10661: when l=4 and s is "#row", this is not a row name + but the valid #-type name of a class named "row". *) + l > 4 && String.sub s (l-4) 4 = "#row" let is_constr_row ~allow_ident t = match t.desc with -- 2.30.2