From owner-freebsd-bugs@FreeBSD.ORG Fri Apr 4 01:20:01 2014 Return-Path: Delivered-To: freebsd-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1FF7B80F for ; Fri, 4 Apr 2014 01:20:01 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (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 F02B568F for ; Fri, 4 Apr 2014 01:20:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s341K0O1056503 for ; Fri, 4 Apr 2014 01:20:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.8/8.14.8/Submit) id s341K07k056494; Fri, 4 Apr 2014 01:20:00 GMT (envelope-from gnats) Resent-Date: Fri, 4 Apr 2014 01:20:00 GMT Resent-Message-Id: <201404040120.s341K07k056494@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Yasuhiro KIMURA Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9ECF780A for ; Fri, 4 Apr 2014 01:18:44 +0000 (UTC) Received: from gate.utahime.jp (ipq210.utahime.jp [183.180.29.210]) by mx1.freebsd.org (Postfix) with ESMTP id 6D96068A for ; Fri, 4 Apr 2014 01:18:43 +0000 (UTC) Received: from eastasia.home.utahime.org (eastasia.home.utahime.org [192.168.174.1]) by gate.utahime.jp (Postfix) with ESMTP id 06AF34E629; Fri, 4 Apr 2014 10:18:42 +0900 (JST) Received: from eastasia.home.utahime.org (localhost [127.0.0.1]) by localhost-backdoor.home.utahime.org (Postfix) with ESMTP id C1D0F75928; Fri, 4 Apr 2014 10:18:41 +0900 (JST) Received: by eastasia.home.utahime.org (Postfix, from userid 1000) id 71EEB7591D; Fri, 4 Apr 2014 10:18:41 +0900 (JST) Message-Id: <20140404011841.71EEB7591D@eastasia.home.utahime.org> Date: Fri, 4 Apr 2014 10:18:41 +0900 (JST) From: Yasuhiro KIMURA To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.114 Subject: kern/188247: [PATCH] include/rpcsvc/yp_prot.h: remove typedef of bool. X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Apr 2014 01:20:01 -0000 >Number: 188247 >Category: kern >Synopsis: [PATCH] include/rpcsvc/yp_prot.h: remove typedef of bool. >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Apr 04 01:20:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Yasuhiro KIMURA >Release: FreeBSD 10.0-RELEASE amd64 >Organization: >Environment: System: FreeBSD eastasia.home.utahime.org 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260673: Thu Jan 23 22:36:39 JST 2014 root@eastasia.home.utahime.org:/usr0/freebsd/src/obj/usr0/freebsd/src/releng_10_0/src/sys/EASTASIA amd64 >Description: There have been typedef of bool in rpcsvc/yp_prot.h since it is added to source tree in August 1994. But there is also definition of bool in stdbool.h, and they conflict when both headers are used. An acutual example of conflict is building Zsh on NIS client of 10.x or later. It is already repoted as following PR. ports/183253: [PATCH] shells/zsh: fail to build on 10.0-BETA1 http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/183253 While stdbool.h and bool definition in it are requirement of C99 standard, it seems bool typedef in ryp_prot.h is not necessarily required. So removing the latter is a solution. There are some reasons that removing bool typedef from yp_prot.h doesn't seems to cause problem. * Building and installing FreeBSD seems to work fine without it. I applied attached patch to 8.4-RELEASE, 9.2-RELEASE and 10.0-RELEASE source tree and tried regular rebuilding steps described in /usr/src/Makefile. All rebuild succeeded without error, and all of reinstalled systems seems to work fine. * NetBSD have already removed it in October 2007, and since then they have been done well. >How-To-Repeat: >Fix: --- patch-src_include_rpcsvc_yp_prot.h begins here --- Index: include/rpcsvc/yp_prot.h =================================================================== --- include/rpcsvc/yp_prot.h (revision 260673) +++ include/rpcsvc/yp_prot.h (working copy) @@ -67,11 +67,6 @@ * YPPROC_MAPLIST takes (char *), returns (struct ypmaplist *). */ -#ifndef BOOL_DEFINED -typedef u_int bool; -#define BOOL_DEFINED -#endif - /* Program and version symbols, magic numbers */ #define YPPROG ((u_long)100004) --- patch-src_include_rpcsvc_yp_prot.h ends here --- >Release-Note: >Audit-Trail: >Unformatted: