Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Sep 2015 22:07:43 +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-10@freebsd.org
Subject:   svn commit: r288133 - in stable: 10/contrib/gcclibs/libcpp 9/contrib/gcclibs/libcpp
Message-ID:  <201509222207.t8MM7hsF066260@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Tue Sep 22 22:07:42 2015
New Revision: 288133
URL: https://svnweb.freebsd.org/changeset/base/288133

Log:
  MFC r286699:
  
  In gcc's libcpp, stop using the INTTYPE_MAXIMUM() macro, which relies on
  undefined behavior.  The code used this macro to avoid problems on some
  broken systems which define SSIZE_MAX incorrectly, but this is not
  needed on FreeBSD, obviously.

Modified:
  stable/10/contrib/gcclibs/libcpp/files.c
Directory Properties:
  stable/10/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/9/contrib/gcclibs/libcpp/files.c
Directory Properties:
  stable/9/   (props changed)
  stable/9/contrib/   (props changed)
  stable/9/contrib/gcclibs/   (props changed)

Modified: stable/10/contrib/gcclibs/libcpp/files.c
==============================================================================
--- stable/10/contrib/gcclibs/libcpp/files.c	Tue Sep 22 21:43:08 2015	(r288132)
+++ stable/10/contrib/gcclibs/libcpp/files.c	Tue Sep 22 22:07:42 2015	(r288133)
@@ -567,7 +567,7 @@ read_file_guts (cpp_reader *pfile, _cpp_
 	 SSIZE_MAX to be much smaller than the actual range of the
 	 type.  Use INTTYPE_MAXIMUM unconditionally to ensure this
 	 does not bite us.  */
-      if (file->st.st_size > INTTYPE_MAXIMUM (ssize_t))
+      if (file->st.st_size > SSIZE_MAX)
 	{
 	  cpp_error (pfile, CPP_DL_ERROR, "%s is too large", file->path);
 	  return false;
@@ -581,7 +581,7 @@ read_file_guts (cpp_reader *pfile, _cpp_
 	    file->path);
 	  return false;
 	}
-      else if (offset > INTTYPE_MAXIMUM (ssize_t) || (ssize_t)offset > size)
+      else if (offset > SSIZE_MAX || (ssize_t)offset > size)
 	{
 	  cpp_error (pfile, CPP_DL_ERROR, "current position of %s is too large",
 	    file->path);



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