pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/lang/erlang lang/erlang: Fix incorrect internal consis...
details: https://anonhg.NetBSD.org/pkgsrc/rev/742b665c6c51
branches: trunk
changeset: 370476:742b665c6c51
user: fhajny <fhajny%pkgsrc.org@localhost>
date: Tue Oct 17 14:47:36 2017 +0000
description:
lang/erlang: Fix incorrect internal consistency failure
for binary matching code. Bump PKGREVISION.
diffstat:
lang/erlang/Makefile | 4 +-
lang/erlang/distinfo | 3 +-
lang/erlang/patches/patch-lib_compiler_src_beam__validator.erl | 24 ++++++++++
3 files changed, 28 insertions(+), 3 deletions(-)
diffs (58 lines):
diff -r 6afee69a1f43 -r 742b665c6c51 lang/erlang/Makefile
--- a/lang/erlang/Makefile Tue Oct 17 14:11:20 2017 +0000
+++ b/lang/erlang/Makefile Tue Oct 17 14:47:36 2017 +0000
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.81 2017/10/04 16:20:51 jperkin Exp $
+# $NetBSD: Makefile,v 1.82 2017/10/17 14:47:36 fhajny Exp $
DISTNAME= otp_src_${DIST_VERSION_MAJOR}.${DIST_VERSION_MINOR}
PKGNAME= ${DISTNAME:S/otp_src_/erlang-/}
-PKGREVISION= 1
+PKGREVISION= 2
CATEGORIES= lang
MASTER_SITES= http://www.erlang.org/download/
diff -r 6afee69a1f43 -r 742b665c6c51 lang/erlang/distinfo
--- a/lang/erlang/distinfo Tue Oct 17 14:11:20 2017 +0000
+++ b/lang/erlang/distinfo Tue Oct 17 14:47:36 2017 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.53 2017/10/04 16:20:51 jperkin Exp $
+$NetBSD: distinfo,v 1.54 2017/10/17 14:47:36 fhajny Exp $
SHA1 (erlang/otp_src_20.1.tar.gz) = 8facdb71696118b5c58238e57106ca23d14166d0
RMD160 (erlang/otp_src_20.1.tar.gz) = 65ed1ad934dea860f277648663db714881b9cb97
@@ -9,5 +9,6 @@
SHA1 (patch-erts_configure) = dba8d72974e8c493cf2bb90e6b149a84dd9073da
SHA1 (patch-erts_emulator_drivers_common_inet__drv.c) = b7784e5e8e025ca75d5279a63e0cb3f74c54bd6a
SHA1 (patch-erts_emulator_sys_common_erl__poll.c) = b2068ed4f1994407cb2ec3cd10220bebae85b01d
+SHA1 (patch-lib_compiler_src_beam__validator.erl) = 57cf4823f57bed333f7c2901509143bbba61cfbd
SHA1 (patch-lib_crypto_c__src_Makefile.in) = 0ab1db36c03999524e933d60f913ff5608b0622e
SHA1 (patch-make_output.mk.in) = d7b3da58bfb471d52c41242e2a03d1598ce24e62
diff -r 6afee69a1f43 -r 742b665c6c51 lang/erlang/patches/patch-lib_compiler_src_beam__validator.erl
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/erlang/patches/patch-lib_compiler_src_beam__validator.erl Tue Oct 17 14:47:36 2017 +0000
@@ -0,0 +1,24 @@
+$NetBSD: patch-lib_compiler_src_beam__validator.erl,v 1.1 2017/10/17 14:47:36 fhajny Exp $
+
+Fix incorrect internal consistency failure for binary matching code.
+Backport from trunk as per https://bugs.erlang.org/browse/ERL-490.
+
+--- lib/compiler/src/beam_validator.erl.orig 2017-09-25 19:10:38.000000000 +0000
++++ lib/compiler/src/beam_validator.erl
+@@ -1430,13 +1430,13 @@ merge_types(bool, {atom,A}) ->
+ merge_bool(A);
+ merge_types({atom,A}, bool) ->
+ merge_bool(A);
+-merge_types(#ms{id=Id1,valid=B0,slots=Slots},
+- #ms{id=Id2,valid=B1,slots=Slots}) ->
++merge_types(#ms{id=Id1,valid=B1,slots=Slots1},
++ #ms{id=Id2,valid=B2,slots=Slots2}) ->
+ Id = if
+ Id1 =:= Id2 -> Id1;
+ true -> make_ref()
+ end,
+- #ms{id=Id,valid=B0 band B1,slots=Slots};
++ #ms{id=Id,valid=B1 band B2,slots=min(Slots1, Slots2)};
+ merge_types(T1, T2) when T1 =/= T2 ->
+ %% Too different. All we know is that the type is a 'term'.
+ term.
Home |
Main Index |
Thread Index |
Old Index