From owner-freebsd-perl@freebsd.org Wed Jul 6 11:46:23 2016 Return-Path: Delivered-To: freebsd-perl@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B8B5B74870 for ; Wed, 6 Jul 2016 11:46:23 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 0465416FA for ; Wed, 6 Jul 2016 11:46:23 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 0046EB7486F; Wed, 6 Jul 2016 11:46:23 +0000 (UTC) Delivered-To: perl@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F4151B7486E for ; Wed, 6 Jul 2016 11:46:22 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CAB1516F8 for ; Wed, 6 Jul 2016 11:46:22 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id u66BkMcq014520 for ; Wed, 6 Jul 2016 11:46:22 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: perl@FreeBSD.org Subject: [Bug 210837] lang/perl5.22 (and related?): ext/re/re_exec.c has long long format matched up with long argument Date: Wed, 06 Jul 2016 11:46:23 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: markmi@dsl-only.net X-Bugzilla-Status: Closed X-Bugzilla-Resolution: Works As Intended X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: perl@FreeBSD.org X-Bugzilla-Flags: maintainer-feedback? X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-perl@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: maintainer of a number of perl-related ports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jul 2016 11:46:23 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D210837 --- Comment #9 from Mark Millard --- (In reply to Mathieu Arnold from comment #7) I quoted the code in question and then I said of it: "the IVdf vs. (long)(rx_origin - strbeg) do not match types" That is a (too short?) description of a way of being broken: it indicates t= hat the compiler's report was not a false positive. In 32-bit long / 64-bit long long contexts the IVdf format uses more bytes = (for long long) then are put out on the stack for the value (long), picking out = some other bytes from memory as well. The details of the bad bytes use depends on big-endian vs. little-endian (or other memory layouts for such values). For little-endian if the extra bytes are zero bytes then the values would look okay. Otherwise not. The operational difficulty for live testing comes in knowing how to reach t= he problem code in order to see the bad result. I'm not so sure that I'm likel= y to hit the broken code in the implicit use of perl5 in my context. (perl5 was built because of dependencies, not because I directly built it f= or my own use.) amd64 and powerpc64 would not be observably broken (long is also 64 bits). powerpc would be broken (long is 32-bits and poewrpc is big-endian). armv6 would depends on if the extra bytes at the time happened to be zeros (long = is 32 bits little-endian). --=20 You are receiving this mail because: You are the assignee for the bug.=