New upstream version 5.1.1 (RHBZ#2239227)
This commit is contained in:
		
							parent
							
								
									48b6d0088d
								
							
						
					
					
						commit
						b40114b0c9
					
				| @ -1,17 +1,17 @@ | ||||
| From 56fafd588484ceb9b8e998b5e569d7df27deae3b Mon Sep 17 00:00:00 2001 | ||||
| From 799bf9088c131fc71626a48e9987e4d44a2f0194 Mon Sep 17 00:00:00 2001 | ||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | ||||
| Date: Tue, 24 Jun 2014 10:00:15 +0100 | ||||
| Subject: [PATCH 2/5] Don't add rpaths to libraries. | ||||
| Subject: [PATCH 1/3] Don't add rpaths to libraries. | ||||
| 
 | ||||
| ---
 | ||||
|  configure.ac | 2 -- | ||||
|  1 file changed, 2 deletions(-) | ||||
| 
 | ||||
| diff --git a/configure.ac b/configure.ac
 | ||||
| index aba3569f7c..6c50ba6c71 100644
 | ||||
| index b81da53c42..892a2a894f 100644
 | ||||
| --- a/configure.ac
 | ||||
| +++ b/configure.ac
 | ||||
| @@ -1106,8 +1106,6 @@ AS_IF([test x"$enable_shared" != "xno"],
 | ||||
| @@ -1107,8 +1107,6 @@ AS_IF([test x"$enable_shared" != "xno"],
 | ||||
|             [[*-*-openbsd7.[3-9]|*-*-openbsd[89].*]], | ||||
|             [mkdll_flags="${mkdll_flags} -Wl,--no-execute-only"]) | ||||
|        oc_ldflags="$oc_ldflags -Wl,-E" | ||||
| @ -21,5 +21,5 @@ index aba3569f7c..6c50ba6c71 100644 | ||||
|        supports_shared_libraries=true], | ||||
|        [mkdll='shared-libs-not-available']) | ||||
| -- 
 | ||||
| 2.41.0 | ||||
| 2.43.0 | ||||
| 
 | ||||
| @ -1,176 +0,0 @@ | ||||
| From 4c03e721b4c53240a9091790acb401b27e72dce0 Mon Sep 17 00:00:00 2001 | ||||
| From: Florian Angeletti <florian.angeletti@inria.fr> | ||||
| Date: Wed, 4 Oct 2023 10:05:44 +0200 | ||||
| Subject: [PATCH 1/5] Fix variance composition (#12623) | ||||
| 
 | ||||
| Possible positive occurrence under possible negative occurrence were | ||||
| forgotten, making the typechecker accepts the absurd statement | ||||
| 
 | ||||
|     type -'a n | ||||
|     type +'a p | ||||
|     type +'a ko = 'a p n | ||||
| 
 | ||||
| (cherry picked from commit 1a9c45317b2c6c9ca9b4cb95fe4891f9f1a2820e) | ||||
| ---
 | ||||
|  Changes                                 |   8 +++ | ||||
|  boot/ocamlc                             | Bin 3051798 -> 3051796 bytes | ||||
|  boot/ocamllex                           | Bin 391863 -> 391861 bytes | ||||
|  testsuite/tests/typing-misc/variance.ml |  87 ++++++++++++++++++++++++ | ||||
|  typing/types.ml                         |   2 +- | ||||
|  5 files changed, 96 insertions(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/Changes b/Changes
 | ||||
| index 20b7b8ee22..dccdc9baba 100644
 | ||||
| --- a/Changes
 | ||||
| +++ b/Changes
 | ||||
| @@ -1,3 +1,11 @@
 | ||||
| +OCaml 5.1.1
 | ||||
| +-----------
 | ||||
| +
 | ||||
| +### Bug fixes:
 | ||||
| +
 | ||||
| +- #12623, fix the computation of variance composition
 | ||||
| +  (Florian Angeletti, report by Vesa Karvonen, review by Gabriel Scherer)
 | ||||
| +
 | ||||
|  OCaml 5.1.0 (14 September 2023) | ||||
|  ------------------------------- | ||||
|   | ||||
| diff --git a/boot/ocamlc b/boot/ocamlc
 | ||||
| index f3b2cba8df84a5f1326c7fe7bdf12b85159f65b3..4db4d848dbc3c2411a9e6160e9d932dd7ba35a34 100755
 | ||||
| GIT binary patch | ||||
| delta 244 | ||||
| zcmZ9=y)pw)7zW@yD_A75h=~7x4sq6QNTHKLLz5Y;l1i^m@y)Byq%e*dP4>M3jS*A| | ||||
| zH=r=XOm0DACarO5#nU`Dd{Ng<LzMW^BN^$HKIxZ024ql%Br7=?mi$BbncCYl%-WMQ | ||||
| z3~cMYn6aH>71+*IApk>g1RMp&zydf97QqRy1Wtle;50Y`&VqB`Jh%WZf=l2sxB{+% | ||||
| zYvB4LHS4)A&pSWz{Q8@xo}b$HKl;!&)oPSPN%{2bA~uz{vSZ>slkC18)N0Mv{`SAV | ||||
| Z)LrdtIGaw{*=p;q`M6Wx_O}_8{s6iiTe|=N | ||||
| 
 | ||||
| delta 266 | ||||
| zcmbQTXcyx&AZ}=3Y+-6)ZeeL*ZDDI+Z{cX+Y~gC*ZsBR+ZQ*O--y(2h;q(<<0zA`W | ||||
| z77B1oUvN>3W%_}I0zB=17775dAP@@yu`m#e0I?_#ivh7X5K92DBoIphu{03N0I@6( | ||||
| z%K@=G5Gw$&A`mM9u`&>=0I@0%s{yh4_CE_XmId(MW?;znW?%|9%D}jD=l1oVG`yJf | ||||
| z%}n(S^$fIAQp*fYb&U*+jCBnxbq!1pxH>vaSm0oQF5a&8RRf4MfmjQOwSib?yV_UX | ||||
| OtFsy3PyaJPPXYiZJ96a! | ||||
| 
 | ||||
| diff --git a/boot/ocamllex b/boot/ocamllex
 | ||||
| index cfdfbe8b4541516ef49c895ea691ea534706de67..b2b5404e69f35a1eb7d0a74fe687a4f4508a7149 100755
 | ||||
| GIT binary patch | ||||
| delta 98 | ||||
| zcmdn~RebAL@rD-07N!>F7M3lnT~@qO3=Hgl7#JKo7#Or4Zl7+&>cymMYN}_bXQ-W$ | ||||
| qT4tbYWME{hYhbBsXmY^S(Q(282Yoc*?E<!}eR~=8rqBPyDggk+ryT$Q | ||||
| 
 | ||||
| delta 100 | ||||
| zcmdn`Rebwb@rD-07N!>F7M3lnT~@p@3=Hgl7#JKo85p!5ZJ%z%>cymQW~yhXXP}*u | ||||
| rT4rdfYh++#tZQJYYhZf7)zM+X0tW+h@$G!JtbKbK4W`fi#VP>+{6`&d | ||||
| 
 | ||||
| diff --git a/testsuite/tests/typing-misc/variance.ml b/testsuite/tests/typing-misc/variance.ml
 | ||||
| index d0f754f716..419e348f48 100644
 | ||||
| --- a/testsuite/tests/typing-misc/variance.ml
 | ||||
| +++ b/testsuite/tests/typing-misc/variance.ml
 | ||||
| @@ -36,3 +36,90 @@ type !'a t = (module s with type t = 'a);;
 | ||||
|  module type s = sig type t end | ||||
|  type 'a t = (module s with type t = 'a) | ||||
|  |}] | ||||
| +
 | ||||
| +(* Composition *)
 | ||||
| +type -'a n
 | ||||
| +type +'a p
 | ||||
| +type !'a i
 | ||||
| +
 | ||||
| +type +'a error_np = 'a n p;;
 | ||||
| +[%%expect{|
 | ||||
| +type -'a n
 | ||||
| +type +'a p
 | ||||
| +type !'a i
 | ||||
| +Line 5, characters 0-26:
 | ||||
| +5 | type +'a error_np = 'a n p;;
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be covariant,
 | ||||
| +       but it is contravariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +
 | ||||
| +type +'a error_pn = 'a p n;;
 | ||||
| +[%%expect{|
 | ||||
| +Line 1, characters 0-26:
 | ||||
| +1 | type +'a error_pn = 'a p n;;
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be covariant,
 | ||||
| +       but it is contravariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +type -'a error_pp = 'a p p;;
 | ||||
| +[%%expect{|
 | ||||
| +Line 1, characters 0-26:
 | ||||
| +1 | type -'a error_pp = 'a p p;;
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be contravariant,
 | ||||
| +       but it is covariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +type -'a error_nn = 'a n n;;
 | ||||
| +[%%expect{|
 | ||||
| +Line 1, characters 0-26:
 | ||||
| +1 | type -'a error_nn = 'a n n;;
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be contravariant,
 | ||||
| +       but it is covariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +type !'a inj_in = 'a i n
 | ||||
| +[%%expect{|
 | ||||
| +Line 1, characters 0-24:
 | ||||
| +1 | type !'a inj_in = 'a i n
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be injective invariant,
 | ||||
| +       but it is invariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +type !'a inj_in = 'a n i
 | ||||
| +[%%expect{|
 | ||||
| +Line 1, characters 0-24:
 | ||||
| +1 | type !'a inj_in = 'a n i
 | ||||
| +    ^^^^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be injective invariant,
 | ||||
| +       but it is invariant.
 | ||||
| +|}]
 | ||||
| +
 | ||||
| +module Make_covariant(M: sig type 'a t end): sig
 | ||||
| +  type 'a i = 'a
 | ||||
| +  type +'a t = 'a i M.t
 | ||||
| +end = struct
 | ||||
| +  type 'a i = 'a
 | ||||
| +  type +'a t = 'a i M.t
 | ||||
| +end
 | ||||
| +
 | ||||
| +module Positive_ref = Make_covariant(struct type 'a t = 'a ref end)
 | ||||
| +[%%expect {|
 | ||||
| +Line 6, characters 2-23:
 | ||||
| +6 |   type +'a t = 'a i M.t
 | ||||
| +      ^^^^^^^^^^^^^^^^^^^^^
 | ||||
| +Error: In this definition, expected parameter variances are not satisfied.
 | ||||
| +       The 1st type parameter was expected to be covariant,
 | ||||
| +       but it is invariant.
 | ||||
| +|}]
 | ||||
| diff --git a/typing/types.ml b/typing/types.ml
 | ||||
| index 45a4f896d6..c1dbdb6895 100644
 | ||||
| --- a/typing/types.ml
 | ||||
| +++ b/typing/types.ml
 | ||||
| @@ -186,7 +186,7 @@ module Variance = struct
 | ||||
|      let mp = | ||||
|        mem May_pos v1 && mem May_pos v2 || mem May_neg v1 && mem May_neg v2 | ||||
|      and mn = | ||||
| -      mem May_pos v1 && mem May_neg v2 || mem May_pos v1 && mem May_neg v2
 | ||||
| +      mem May_pos v1 && mem May_neg v2 || mem May_neg v1 && mem May_pos v2
 | ||||
|      and mw = mem May_weak v1 && v2 <> null || v1 <> null && mem May_weak v2 | ||||
|      and inj = mem Inj v1 && mem Inj v2 | ||||
|      and pos = mem Pos v1 && mem Pos v2 || mem Neg v1 && mem Neg v2 | ||||
| -- 
 | ||||
| 2.41.0 | ||||
| 
 | ||||
| @ -1,17 +1,17 @@ | ||||
| From e8170e71efb93f10c27935acc95093eb3f53ab6c Mon Sep 17 00:00:00 2001 | ||||
| From f2b875e8201efed22267136096b1e5df97f99f84 Mon Sep 17 00:00:00 2001 | ||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | ||||
| Date: Tue, 29 May 2012 20:44:18 +0100 | ||||
| Subject: [PATCH 3/5] configure: Allow user defined C compiler flags. | ||||
| Subject: [PATCH 2/3] configure: Allow user defined C compiler flags. | ||||
| 
 | ||||
| ---
 | ||||
|  configure.ac | 8 ++++++-- | ||||
|  1 file changed, 6 insertions(+), 2 deletions(-) | ||||
| 
 | ||||
| diff --git a/configure.ac b/configure.ac
 | ||||
| index 6c50ba6c71..db6ea8a8d1 100644
 | ||||
| index 892a2a894f..e8f6cbc863 100644
 | ||||
| --- a/configure.ac
 | ||||
| +++ b/configure.ac
 | ||||
| @@ -759,6 +759,10 @@ AS_CASE([$host],
 | ||||
| @@ -760,6 +760,10 @@ AS_CASE([$host],
 | ||||
|        internal_cflags="$cc_warnings"], | ||||
|      [common_cflags="-O"])]) | ||||
|   | ||||
| @ -22,7 +22,7 @@ index 6c50ba6c71..db6ea8a8d1 100644 | ||||
|  # Enable SSE2 on x86 mingw to avoid using 80-bit registers. | ||||
|  AS_CASE([$host], | ||||
|    [i686-*-mingw32*], | ||||
| @@ -2325,7 +2329,7 @@ AC_CONFIG_COMMANDS_PRE([
 | ||||
| @@ -2327,7 +2331,7 @@ AC_CONFIG_COMMANDS_PRE([
 | ||||
|        [mkexedebugflag="${mkexe_ldflags_prefix}${mkexedebugflag}"]) | ||||
|      mkdll_ldflags="" | ||||
|      AS_IF([test -n "${LDFLAGS}"], | ||||
| @ -31,7 +31,7 @@ index 6c50ba6c71..db6ea8a8d1 100644 | ||||
|          mkdll_ldflags="${mkdll_ldflags} ${mkexe_ldflags_prefix}${flag}" | ||||
|        done | ||||
|        mkdll_ldflags_exp="$mkdll_ldflags"]) | ||||
| @@ -2351,7 +2355,7 @@ ${mkdll_ldflags}"
 | ||||
| @@ -2353,7 +2357,7 @@ ${mkdll_ldflags}"
 | ||||
|    ],[ | ||||
|      mkdll_ldflags='$(OC_DLL_LDFLAGS) $(LDFLAGS)' | ||||
|      mkdll_ldflags_exp="${oc_dll_ldflags}" | ||||
| @ -41,5 +41,5 @@ index 6c50ba6c71..db6ea8a8d1 100644 | ||||
|      mkexe_ldflags="\$(OC_LDFLAGS) \$(LDFLAGS)" | ||||
|      mkexe_ldflags_exp="${oc_ldflags} ${LDFLAGS}" | ||||
| -- 
 | ||||
| 2.41.0 | ||||
| 2.43.0 | ||||
| 
 | ||||
| @ -1,7 +1,7 @@ | ||||
| From e1ee698f482664237bfb693966987cd167c22b68 Mon Sep 17 00:00:00 2001 | ||||
| From ba44a9c29771aacf44222a2ff63e7bd6034dd92c Mon Sep 17 00:00:00 2001 | ||||
| From: Fabrice Buoro <fabrice@tarides.com> | ||||
| Date: Fri, 10 Mar 2023 09:36:22 -0700 | ||||
| Subject: [PATCH 5/5] Update framepointers tests to avoid false positive with | ||||
| Subject: [PATCH 3/3] Update framepointers tests to avoid false positive with | ||||
|  inlined C functions | ||||
| 
 | ||||
| ---
 | ||||
| @ -692,5 +692,5 @@ index e96b5ea13a..0000000000 | ||||
| -${program} 2>&1 \
 | ||||
| -  | ${test_source_directory}/filter-locations.sh ${program} >${output}
 | ||||
| -- 
 | ||||
| 2.41.0 | ||||
| 2.43.0 | ||||
| 
 | ||||
| @ -1,34 +0,0 @@ | ||||
| From 8d0e4af8141f6ba925c1de426a9600a96816c86b Mon Sep 17 00:00:00 2001 | ||||
| From: Miod Vallat <miod@tarides.com> | ||||
| Date: Mon, 4 Sep 2023 13:50:30 -0600 | ||||
| Subject: [PATCH 4/5] Fix x86_64 delivery of effect-related exceptions | ||||
| 
 | ||||
| ---
 | ||||
|  runtime/amd64.S | 4 +++- | ||||
|  1 file changed, 3 insertions(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/runtime/amd64.S b/runtime/amd64.S
 | ||||
| index 8dc9f81ec6..72d96f502d 100644
 | ||||
| --- a/runtime/amd64.S
 | ||||
| +++ b/runtime/amd64.S
 | ||||
| @@ -902,6 +902,7 @@ LBL(112):
 | ||||
|          movq    Caml_state(current_stack), %rsi | ||||
|          SWITCH_OCAML_STACKS | ||||
|      /* No parent stack. Raise Effect.Unhandled. */ | ||||
| +        ENTER_FUNCTION
 | ||||
|          movq    %rax, C_ARG_1 | ||||
|          LEA_VAR(caml_raise_unhandled_effect, %rax) | ||||
|          jmp     LBL(caml_c_call) | ||||
| @@ -946,7 +947,8 @@ CFI_STARTPROC
 | ||||
|          UPDATE_BASE_POINTER(%rcx) | ||||
|          SWITCH_OCAML_STACKS | ||||
|          jmp     *(%rbx) | ||||
| -2:      LEA_VAR(caml_raise_continuation_already_resumed, %rax)
 | ||||
| +2:      ENTER_FUNCTION
 | ||||
| +        LEA_VAR(caml_raise_continuation_already_resumed, %rax)
 | ||||
|          jmp LBL(caml_c_call) | ||||
|  CFI_ENDPROC | ||||
|  ENDFUNCTION(G(caml_resume)) | ||||
| -- 
 | ||||
| 2.41.0 | ||||
| 
 | ||||
							
								
								
									
										21
									
								
								ocaml.spec
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								ocaml.spec
									
									
									
									
									
								
							| @ -42,8 +42,8 @@ ExcludeArch: %{ix86} | ||||
| %global rcver %{nil} | ||||
| 
 | ||||
| Name:           ocaml | ||||
| Version:        5.1.0 | ||||
| Release:        5%{?dist} | ||||
| Version:        5.1.1 | ||||
| Release:        1%{?dist} | ||||
| 
 | ||||
| Summary:        OCaml compiler and programming environment | ||||
| 
 | ||||
| @ -64,22 +64,18 @@ Source2:        ocaml_files.py | ||||
| # | ||||
| # https://pagure.io/fedora-ocaml | ||||
| # | ||||
| # Current branch: fedora-40-5.1.0 | ||||
| # Current branch: fedora-40-5.1.1 | ||||
| # | ||||
| # ALTERNATIVELY add a patch to the end of the list (leaving the | ||||
| # existing patches unchanged) adding a comment to note that it should | ||||
| # be incorporated into the git repo at a later time. | ||||
| 
 | ||||
| # Patches added after 5.1.0 was released. | ||||
| Patch:          0001-Fix-variance-composition-12623.patch | ||||
| 
 | ||||
| # Fedora-specific patches | ||||
| Patch:          0002-Don-t-add-rpaths-to-libraries.patch | ||||
| Patch:          0003-configure-Allow-user-defined-C-compiler-flags.patch | ||||
| # https://github.com/ocaml/ocaml/pull/12530 | ||||
| Patch:          0004-Fix-x86_64-delivery-of-effect-related-exceptions.patch | ||||
| Patch:          0001-Don-t-add-rpaths-to-libraries.patch | ||||
| Patch:          0002-configure-Allow-user-defined-C-compiler-flags.patch | ||||
| 
 | ||||
| # https://github.com/ocaml/ocaml/pull/11594 | ||||
| Patch:          0005-Update-framepointers-tests-to-avoid-false-positive-w.patch | ||||
| Patch:          0003-Update-framepointers-tests-to-avoid-false-positive-w.patch | ||||
| 
 | ||||
| BuildRequires:  make | ||||
| BuildRequires:  git | ||||
| @ -470,6 +466,9 @@ hardlink -t $RPM_BUILD_ROOT%{_libdir}/ocaml/stublibs | ||||
| 
 | ||||
| 
 | ||||
| %changelog | ||||
| * Mon Dec 11 2023 Richard W.M. Jones <rjones@redhat.com> - 5.1.1-1 | ||||
| - New upstream version 5.1.1 (RHBZ#2239227) | ||||
| 
 | ||||
| * Tue Nov 14 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 5.1.0-5 | ||||
| - Drop unused BR parallel | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								sources
									
									
									
									
									
								
							| @ -1 +1 @@ | ||||
| SHA512 (ocaml-5.1.0.tar.gz) = 814ea71de656eadc59a658ad3b6c4d786815c348ab883b1cdb22d5d0f99d11768f5646f03725f6b44c3b8f4ffeb71e89dadaea157711a7afbe86f23846fc5b52 | ||||
| SHA512 (ocaml-5.1.1.tar.gz) = e4aa78afc9a59f604881f14093f4298ebcb005daeb8132a076fe6d24fdf8b59132cbfa2cfe677f1db1891351d3d637c621f24077e531cac6753c264fc7f5fbea | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user