From owner-svn-src-all@freebsd.org Wed Sep 21 13:03:56 2016 Return-Path: Delivered-To: svn-src-all@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 A888ABE1BCB; Wed, 21 Sep 2016 13:03:56 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (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 7927ECA1; Wed, 21 Sep 2016 13:03:56 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u8LD3tLB058277; Wed, 21 Sep 2016 13:03:55 GMT (envelope-from ed@FreeBSD.org) Received: (from ed@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u8LD3tQV058276; Wed, 21 Sep 2016 13:03:55 GMT (envelope-from ed@FreeBSD.org) Message-Id: <201609211303.u8LD3tQV058276@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ed set sender to ed@FreeBSD.org using -f From: Ed Schouten Date: Wed, 21 Sep 2016 13:03:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r306100 - head/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Sep 2016 13:03:56 -0000 Author: ed Date: Wed Sep 21 13:03:55 2016 New Revision: 306100 URL: https://svnweb.freebsd.org/changeset/base/306100 Log: Refine the dirname(3) compatibility workaround a bit more. Right now our workaround is so good that it doesn't throw any warnings on misuse. This means that people will keep on using the old version of dirname(3) silently without fixing their code. Go ahead and change the prototype of __old_dirname() to also use a plain char *, so that we still get a compiler warning. This won't have any negative effect on building older versions of FreeBSD on HEAD, as those are built with -Werror disabled. Differential Revision: https://reviews.freebsd.org/D7844 Modified: head/include/libgen.h Modified: head/include/libgen.h ============================================================================== --- head/include/libgen.h Wed Sep 21 13:02:43 2016 (r306099) +++ head/include/libgen.h Wed Sep 21 13:03:55 2016 (r306100) @@ -48,11 +48,11 @@ __END_DECLS * * Apply a workaround where we explicitly link against dirname@FBSD_1.0 * in case this function is called on constant strings, instead of - * making the build fail. + * making the program crash at runtime. */ #if defined(__generic) && !defined(__cplusplus) __BEGIN_DECLS -char *__old_dirname(const char *); +char *__old_dirname(char *); __END_DECLS __sym_compat(dirname, __old_dirname, FBSD_1.0); #define dirname(x) __generic(x, const char *, __old_dirname, dirname)(x)