From owner-freebsd-ports-bugs@freebsd.org Sat May 7 22:34:56 2016 Return-Path: Delivered-To: freebsd-ports-bugs@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 B23B3B31847 for ; Sat, 7 May 2016 22:34:56 +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 887D41B81 for ; Sat, 7 May 2016 22:34:56 +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 u47MYuD9055605 for ; Sat, 7 May 2016 22:34:56 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-ports-bugs@FreeBSD.org Subject: [Bug 209369] chinese/sunpinyin: Fix build with libc++ 3.8.0 Date: Sat, 07 May 2016 22:34:56 +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 Some People X-Bugzilla-Who: dim@FreeBSD.org X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-ports-bugs@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-ports-bugs@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 May 2016 22:34:56 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D209369 --- Comment #5 from Dimitry Andric --- FWIW, this worked too: --- src/slm/thread/slmthread.cpp.orig 2014-11-14 14:17:48 UTC +++ src/slm/thread/slmthread.cpp @@ -226,6 +226,30 @@ FILE* fp =3D NULL; CThreadSlm::TNode* levels[16]; CThreadSlm::TLeaf* lastLevel; +static inline float +effectivePr(bool usingLogPr, float a) +{ + return usingLogPr ? a / log(2.0f) : -log2(a); +} + +static inline float +originalPr(bool usingLogPr, float b) +{ + return usingLogPr ? b * log(2.0f) : exp2(-b); +} + +static inline float +effectiveBow(bool usingLogPr, float a) +{ + return usingLogPr ? exp(-a) : a; +} + +static inline float +originalBow(bool usingLogPr, float b) +{ + return usingLogPr ? -log(b) : b; +} + int main(int argc, char* argv[]) { @@ -250,10 +274,10 @@ main(int argc, char* argv[]) bool usingLogPr =3D slm.isUseLogPr(); - #define EffectivePr(a) (float((usingLogPr) ? ((a) / log(2.0)) : (-log2((a))))) - #define OriginalPr(b) (float((usingLogPr) ? ((b) * log(2.0)) : (exp2(-(b))))) - #define EffectiveBow(a) (float((usingLogPr) ? (exp(-(a))) : ((a)))) - #define OriginalBow(b) (float((usingLogPr) ? (-log((b))) : ((b)))) + #define EffectivePr(a) effectivePr(usingLogPr, (a)) + #define OriginalPr(b) originalPr(usingLogPr, (b)) + #define EffectiveBow(a) effectiveBow(usingLogPr, (a)) + #define OriginalBow(b) originalBow(usingLogPr, (b)) printf("\nfirst pass..."); fflush(stdout); for (int lvl =3D 0; lvl <=3D slm.getN(); ++lvl) { --=20 You are receiving this mail because: You are the assignee for the bug.=