Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Dec 2016 09:38:45 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r310808 - stable/11/usr.bin/dtc
Message-ID:  <201612300938.uBU9cjJL007196@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Fri Dec 30 09:38:45 2016
New Revision: 310808
URL: https://svnweb.freebsd.org/changeset/base/310808

Log:
  MFC r309191 (by rakuco):
  
  fdt: Expect strchr() to return a const char*
  
  In C, strchr(3) returns a char*, whereas C++ defines two overloads:
  * const char *strchr(const char*, int)
  * char *strchr(char*, int)
  
  Building fdt.cc (with the WITHOUT_GPL_DTC knob set) with libc++ 3.9.0 (imported
  in r309124) was failing because libc++ r260377 added the first overload to
  string.h, leading to failures such as:
  
      fdt.cc:1638:8: error: cannot initialize a variable of type 'char *' with an
      rvalue of type 'const char *'
  
  Just define val as a const char* to fix it.
  
  Upstreamed in https://github.com/davidchisnall/dtc/pull/14

Modified:
  stable/11/usr.bin/dtc/fdt.cc
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.bin/dtc/fdt.cc
==============================================================================
--- stable/11/usr.bin/dtc/fdt.cc	Fri Dec 30 08:59:49 2016	(r310807)
+++ stable/11/usr.bin/dtc/fdt.cc	Fri Dec 30 09:38:45 2016	(r310808)
@@ -1590,7 +1590,7 @@ device_tree::parse_dts(const char *fn, F
 
 bool device_tree::parse_define(const char *def)
 {
-	char *val = strchr(def, '=');
+	const char *val = strchr(def, '=');
 	if (!val)
 	{
 		if (strlen(def) != 0)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201612300938.uBU9cjJL007196>