<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e3b98f1eadf598515cc86648645256a03282705f">https://github.com/macports/macports-ports/commit/e3b98f1eadf598515cc86648645256a03282705f</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new e3b98f1  gcc5: Update to 5.5.0 and fix gcj
</span>e3b98f1 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit e3b98f1eadf598515cc86648645256a03282705f
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Thu Oct 12 07:57:11 2017 -0500

<span style='display:block; white-space:pre;color:#404040;'>    gcc5: Update to 5.5.0 and fix gcj
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/55068
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/49227
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/22066
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Also use a common dist_subdir.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/50904
</span>---
 lang/gcc5/Portfile                           |  61 ++--
 lang/gcc5/files/boehm-gc-darwin15-hack.patch |  28 ++
 lang/gcc5/files/gcj-libiconv-linkage.patch   |  22 ++
 lang/gcc5/files/macosx-version-min.patch     | 419 ---------------------------
 lang/gcc5/files/patch-gcc-system-h-map.diff  |  10 -
 5 files changed, 90 insertions(+), 450 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc5/Portfile b/lang/gcc5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 9ec9e9c..889035f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,8 +7,7 @@ PortGroup compiler_blacklist_versions 1.0
</span> name                gcc5
 
 epoch               2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             5.4.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             5.5.0
</span> platforms           darwin
 categories          lang
 maintainers         nomaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,17 +18,34 @@ long_description    The GNU compiler collection, including front ends for \
</span>                     C, C++, Objective-C, Objective-C++, Fortran and Java.
 
 homepage            http://gcc.gnu.org/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites        ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    gnu:gcc/gcc-${version}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/:gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/:gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/:gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/:gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    gnu:gcc/gcc-${version}:gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://sourceware.org/pub/java/:ecj \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    http://mirrors.kernel.org/sources.redhat.com/java/:ecj \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    http://www.mirrorservice.org/sites/sources.redhat.com/pub/java/:ecj \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    http://ftp-stud.fht-esslingen.de/pub/Mirrors/sourceware.org/java/:ecj
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dist_subdir         gcc
</span> distname            gcc-${version}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_bzip2           yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_xz              yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set ecj             ecj-4.9.jar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distfiles           ${distname}${extract.suffix}:gcc ${ecj}:ecj
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  7ae3413ca7e90bb21e65e637c02ddf2b675b45f4 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  608df76dec2d34de6558249d8af4cbee21eceddbcb580d666f7a5a583ca3303a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.only        ${distname}${extract.suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           ${distname}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  63fdc006c2289f81df664d1fd9b4124f71732e7b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  530cea139d82fe542b358961130c69cfde8b3d14556370b65823d2f91f0ced87 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    71096120 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${ecj} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  eb1b19d9ac0e9e265bf993f38b9576e3c710e91e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  9506e75b862f782213df61af67338eb7a23c35ff425d328affc65585477d34cd \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1619429
</span> 
 depends_lib         port:cctools \
                     port:gmp \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -45,24 +61,26 @@ depends_run         port:gcc_select \
</span> depends_skip_archcheck-append gcc_select ld64 cctools
 license_noconflict  gmp mpfr ppl libmpc
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Handle OS X deployment targets correctly (GCC PR target/63810
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63810>).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append   macosx-version-min.patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # Work around parallel building issue on APFS
 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
 patchfiles-append   notparallel-install-headers.patch
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# fix build of gcc 5.4.0 with xcode 9+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/54949
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# can be removed when gcc5 is updated to 5.5.x
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[vercmp $xcodeversion 9] >= 0} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    patchfiles-append   patch-gcc-system-h-map.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Provide linkage for MacPorts libiconv in gcj
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   gcj-libiconv-linkage.patch
</span> 
 set major           [lindex [split ${version} .-] 0]
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    copy ${distpath}/${ecj} ${worksrcpath}/ecj.jar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> platform darwin {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {${os.major} > 14} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Hack around boehm-gc and associated gcj failures from recompilation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # of libunwind.dylib with Apple Clang in macOS >= 10.11 by reducing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # alignment to 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        patchfiles-append   boehm-gc-darwin15-hack.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span>     configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
 }
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,6 +92,7 @@ configure.args      --enable-languages=c,c++,objc,obj-c++,lto,fortran,java \
</span>                     --infodir=${prefix}/share/info \
                     --mandir=${prefix}/share/man \
                     --datarootdir=${prefix}/share/gcc-${major} \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --with-libiconv-prefix=${prefix} \
</span>                     --with-local-prefix=${prefix} \
                     --with-system-zlib \
                     --disable-nls \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc5/files/boehm-gc-darwin15-hack.patch b/lang/gcc5/files/boehm-gc-darwin15-hack.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..078e55a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc5/files/boehm-gc-darwin15-hack.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- boehm-gc/include/private/gcconfig.h.orig       2015-10-11 17:19:25.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ boehm-gc/include/private/gcconfig.h    2015-10-11 15:41:26.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1041,10 +1041,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   define MACH_TYPE "I386"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   if defined(__LP64__) || defined(_WIN64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #     define CPP_WORDSZ 64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#     define ALIGNMENT 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     define ALIGNMENT 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #     define CPP_WORDSZ 32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#     define ALIGNMENT 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     define ALIGNMENT 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   /* Appears to hold for all "32 bit" compilers */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   /* except Borland.  The -a4 option fixes        */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   /* Borland.                                     */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2005,10 +2005,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # ifdef X86_64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   define MACH_TYPE "X86_64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   ifdef __ILP32__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#     define ALIGNMENT 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     define ALIGNMENT 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #     define CPP_WORDSZ 32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#     define ALIGNMENT 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#     define ALIGNMENT 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #     define CPP_WORDSZ 64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   ifndef HBLKSIZE
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc5/files/gcj-libiconv-linkage.patch b/lang/gcc5/files/gcj-libiconv-linkage.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..b977759
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc5/files/gcj-libiconv-linkage.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- libjava/Makefile.am.orig       2015-10-12 10:28:24.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ libjava/Makefile.am    2015-10-12 10:29:10.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -494,7 +494,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(extra_ldflags) $(THREADLIBS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIBLTDL) $(SYS_ZLIBS) $(LIBJAVA_LDFLAGS_NOUNDEF) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBGCJ_LD_EXPORT_ALL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBGCJ_LD_EXPORT_ALL) $(LDLIBICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcj_la_LIBADD = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   classpath/native/fdlibm/libfdlibm.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   java/lang/Object.lo \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- libjava/Makefile.in.orig       2015-10-12 10:29:29.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ libjava/Makefile.in    2015-10-12 10:30:42.000000000 -0400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1080,7 +1080,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) $(THREADLDFLAGS) $(extra_ldflags) $(THREADLIBS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIBLTDL) $(SYS_ZLIBS) $(LIBJAVA_LDFLAGS_NOUNDEF) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBGCJ_LD_EXPORT_ALL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBGCJ_LD_EXPORT_ALL) $(LDLIBICONV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcj_la_LIBADD = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   classpath/native/fdlibm/libfdlibm.la \
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc5/files/macosx-version-min.patch b/lang/gcc5/files/macosx-version-min.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index dd60822..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc5/files/macosx-version-min.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,419 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/config/darwin-c.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gcc/config/darwin-c.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/config/darwin-c.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -570,42 +570,180 @@ find_subframework_header (cpp_reader *pf
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* Return the value of darwin_macosx_version_min suitable for the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--   __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro, so '10.4.2'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--   becomes 1040 and '10.10.0' becomes 101000.  The lowest digit is
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--   always zero, as is the second lowest for '10.10.x' and above.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--   Print a warning if the version number can't be understood.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/*  Given a version string, return the version as a statically-allocated
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    array of three non-negative integers.  If the version string is
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    invalid, return null.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    Version strings must consist of one, two, or three tokens, each
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    separated by a single period.  Each token must contain only the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    characters '0' through '9' and is converted to an equivalent
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    integer.  Omitted tokens are treated as zeros.  For example:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "10"              becomes   {10,0,0}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "10.10"           becomes   {10,10,0}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "10.10.1"         becomes   {10,10,1}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "10.000010.1"     becomes   {10,10,1}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "10.010.001"      becomes   {10,10,1}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        "000010.10.00001" becomes   {10,10,1}  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+enum version_components { MAJOR, MINOR, TINY };
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+static const unsigned long *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+parse_version (const char *version_str)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  size_t version_len;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  char *end;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  static unsigned long version_array[3];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! version_str)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_len = strlen (version_str);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (version_len < 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* Version string must consist of digits and periods only.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (strspn (version_str, "0123456789.") != version_len)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! ISDIGIT (version_str[0]) || ! ISDIGIT (version_str[version_len - 1]))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_array[MAJOR] = strtoul (version_str, &end, 10);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_str = end + ((*end == '.') ? 1 : 0);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* Version string must not contain adjacent periods.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (*version_str == '.')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_array[MINOR] = strtoul (version_str, &end, 10);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_str = end + ((*end == '.') ? 1 : 0);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_array[TINY] = strtoul (version_str, &end, 10);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* Version string must contain no more than three tokens.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (*end != '\0')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return version_array;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/*  Given a three-component version represented as an array of
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    non-negative integers, return a statically-allocated string suitable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    for the legacy __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    If the version is invalid and cannot be coerced into a valid form,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return null.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    The legacy format is a four-character string -- two chars for the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    major number and one each for the minor and tiny numbers.  Major
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    numbers are zero-padded if necessary.  Minor and tiny numbers from
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    10 through 99 are permitted but are clamped to 9 (for example,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    {10,9,10} produces "1099").  Versions containing numbers greater
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    than 99 are rejected.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static const char *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--version_as_macro (void)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+version_as_legacy_macro (const unsigned long *version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  static char result[7] = "1000";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  int minorDigitIdx;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  unsigned long major, minor, tiny;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  static char result[sizeof "9999"];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  major = version[MAJOR];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  minor = version[MINOR];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  tiny = version[TINY];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (major > 99 || minor > 99 || tiny > 99)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  minor = ((minor > 9) ? 9 : minor);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  tiny = ((tiny > 9) ? 9 : tiny);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* NOTE: Cast result of sizeof so that result of sprintf is not
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     converted to an unsigned type.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (sprintf (result, "%02lu%lu%lu", major, minor, tiny)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      != (int) sizeof "9999" - 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (strncmp (darwin_macosx_version_min, "10.", 3) != 0)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return result;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/*  Given a three-component version represented as an array of
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    non-negative integers, return a statically-allocated string suitable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    for the modern __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    or the __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ macro.  If the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    version is invalid, return null.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    The modern format is a five- or six-character string -- one or two
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    chars for the major number and two each for the minor and tiny
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    numbers, which are zero-padded if necessary (for example, {8,1,0}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    produces "80100", and {10,10,1} produces "101001").  Versions
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    containing numbers greater than 99 are rejected.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+static const char *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+version_as_modern_macro (const unsigned long *version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  unsigned long major, minor, tiny;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  static char result[sizeof "999999"];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  major = version[MAJOR];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  minor = version[MINOR];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  tiny = version[TINY];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (major > 99 || minor > 99 || tiny > 99)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* NOTE: 'sizeof ((x > y) ? "foo" : "bar")' returns size of char
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     pointer instead of char array, so use
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     '(x > y) ? sizeof "foo" : sizeof "bar"' instead.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* NOTE: Cast result of sizeof so that result of sprintf is not
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+     converted to an unsigned type.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (sprintf (result, "%lu%02lu%02lu", major, minor, tiny)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      != (int) ((major > 9) ? sizeof "999999" : sizeof "99999") - 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    return NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return result;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/*  Return the value of darwin_macosx_version_min, suitably formatted
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    for the __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ macro.  Values
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    representing OS X 10.9 and earlier are encoded using the legacy
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    four-character format, while 10.10 and later use a modern
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    six-character format.  (For example, "10.9" produces "1090", and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    "10.10.1" produces "101001".)  If the value is invalid and cannot be
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    coerced into a valid form, print a warning and return "1000".  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+static const char *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+macosx_version_as_macro (void)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  const unsigned long *version_array;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  const char *version_macro;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  version_array = parse_version (darwin_macosx_version_min);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! version_array)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (! ISDIGIT (darwin_macosx_version_min[3]))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  /* Do not assume that the major number will always be exactly 10.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (version_array[MAJOR] < 10 || version_array[MAJOR] > 10)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  minorDigitIdx = 3;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  result[2] = darwin_macosx_version_min[minorDigitIdx++];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (ISDIGIT (darwin_macosx_version_min[minorDigitIdx]))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    /* Starting with OS X 10.10, the macro ends '00' rather than '0',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--       i.e. 10.10.x becomes 101000 rather than 10100.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    result[3] = darwin_macosx_version_min[minorDigitIdx++];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    result[4] = '0';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    result[5] = '0';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    result[6] = '\0';
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (darwin_macosx_version_min[minorDigitIdx] != '\0'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      && darwin_macosx_version_min[minorDigitIdx] != '.')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (version_array[MAJOR] == 10 && version_array[MINOR] < 10)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    version_macro = version_as_legacy_macro (version_array);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    version_macro = version_as_modern_macro (version_array);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (! version_macro)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     goto fail;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return result;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return version_macro;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-  fail:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   error ("unknown value %qs of -mmacosx-version-min",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--   darwin_macosx_version_min);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+         darwin_macosx_version_min);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return "1000";
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -627,7 +765,7 @@ darwin_cpp_builtins (cpp_reader *pfile)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     builtin_define ("__CONSTANT_CFSTRINGS__");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   builtin_define_with_value ("__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                       version_as_macro(), false);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                       macosx_version_as_macro(), false);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   /* Since we do not (at 4.6) support ObjC gc for the NeXT runtime, the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-      following will cause a syntax error if one tries to compile gc attributed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-10.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-10.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with a zero-padded minor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   number < 10 and a zero-padded tiny number < 10 produces the correct
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   four-character macro.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.07.02" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1072
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-11.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-11.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with outrageous zero-padding and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   a minor number > 9 still produces a six-character macro.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=00010.010.0000098" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101098
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-12.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-12.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with outrageous zero-padding and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   a minor number < 10 still produces a four-character macro.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=010.008.000031" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1089
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-3.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gcc/testsuite/gcc.dg/darwin-minversion-3.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-3.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,11 +1,11 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* Test that most-minor versions greater than 9 work.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* { dg-options "-mmacosx-version-min=10.4.10" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Test that most minor versions < 10 work.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.4.1" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1040
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1041
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-4.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gcc/testsuite/gcc.dg/darwin-minversion-4.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-4.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,11 +1,11 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* Test that major versions greater than 9 work and have the additional 0.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* { dg-options "-mmacosx-version-min=10.10.0" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Test that minor versions > 9 produce a six-character macro.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.10.1" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-5.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-5.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,16 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with minor number < 10 and tiny
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   number > 9 produces a four-character macro with the tiny number
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   clamped to 9.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.9.10" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1099
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-6.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-6.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that tiny numbers are preserved in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   six-character macros.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.10.11" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101011
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-7.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-7.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that tiny numbers < 10 are preserved in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   four-character macros.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.9.1" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1091
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-8.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-8.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with minor number > 9 and no
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   tiny number produces a six-character macro ending in "00".  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.11" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 101100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Index: gcc/testsuite/gcc.dg/darwin-minversion-9.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-===================================================================
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- /dev/null
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/testsuite/gcc.dg/darwin-minversion-9.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* PR target/63810: Test that a version with a zero-padded minor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+   number < 10 produces a four-character macro.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* Added by Lawrence Velázquez <larryv@macports.org>.  */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-options "-mmacosx-version-min=10.08.4" } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+/* { dg-do compile { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+main ()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+{
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ != 1084
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  fail me;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc5/files/patch-gcc-system-h-map.diff b/lang/gcc5/files/patch-gcc-system-h-map.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 91d871e..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc5/files/patch-gcc-system-h-map.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,10 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gcc/system.h.old       2017-10-07 09:14:05.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gcc/system.h   2017-10-07 09:15:13.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -216,6 +216,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # include <algorithm>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+# include <map>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # include <cstring>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # include <utility>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span></pre><pre style='margin:0'>

</pre>