gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
--- gcc/testsuite/gcc.dg/format/ext-1.c.orig
|
|
|
|
+++ gcc/testsuite/gcc.dg/format/ext-1.c
|
|
|
|
@@ -8,7 +8,7 @@
|
|
|
|
#include "format.h"
|
|
|
|
|
|
|
|
void
|
|
|
|
-foo (quad_t q, u_quad_t uq, quad_t *qn, size_t z, size_t *zn, long long int ll,
|
|
|
|
+foo (quad2_t q, u_quad2_t uq, quad2_t *qn, size_t z, size_t *zn, long long int ll,
|
|
|
|
unsigned long long int ull, int i, unsigned int u, double d,
|
|
|
|
char *s, void *p, wchar_t *ls, wint_t lc, int *n, long int l)
|
|
|
|
{
|
|
|
|
--- gcc/testsuite/gcc.dg/format/ext-2.c.orig
|
|
|
|
+++ gcc/testsuite/gcc.dg/format/ext-2.c
|
|
|
|
@@ -8,7 +8,7 @@
|
|
|
|
#include "format.h"
|
|
|
|
|
|
|
|
void
|
|
|
|
-foo (quad_t *qp, u_quad_t *uqp, quad_t *qn, long long int *llp,
|
|
|
|
+foo (quad2_t *qp, u_quad2_t *uqp, quad2_t *qn, long long int *llp,
|
|
|
|
unsigned long long int *ullp, float *fp, char *s, void **pp, wchar_t *ls,
|
|
|
|
int *ip, unsigned int *up)
|
|
|
|
{
|
|
|
|
--- gcc/testsuite/gcc.dg/format/format.h.orig
|
|
|
|
+++ gcc/testsuite/gcc.dg/format/format.h
|
|
|
|
@@ -71,8 +71,8 @@
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* %q formats want a "quad"; GCC considers this to be a long long. */
|
|
|
|
-typedef llong quad_t;
|
|
|
|
-typedef ullong u_quad_t;
|
|
|
|
+typedef llong quad2_t;
|
|
|
|
+typedef ullong u_quad2_t;
|
|
|
|
|
|
|
|
__extension__ typedef __INTMAX_TYPE__ intmax_t;
|
|
|
|
__extension__ typedef __UINTMAX_TYPE__ uintmax_t;
|
lang/gcc-aux: Upgrade from gcc-4.7.3 to gcc49-20140302 snapshot
GCC4.9 hasn't been released yet, but the Ada portion of it is pretty
stable and perfectly passes ACATS and gnat.dg testsuites. The only
trick was to change the unwind mechanism on i386 away from KERN_PS_STRINGS
because it will not work with 32-bit compatability mode on AMD64. This
is because on AMD64, the signal trampoline is located on a random area
on a shared page rather than a fixed location before KERN_PS_STRINGS. To
support both true i386 and AMD64-32 compatibility mode, unwind now looks
for frame pattern in all cases. Apparently stack checking has been broken
on AMD64-32 until now.
It is important to get the Ada Framework in ports to be based on gcc49
because this compiler supports the full Ada-2012 standard implementation,
and in fact some new programs require this already.
This port will stay on snapshots until 4.9.0 is released, then it will
return to be based on releases.
The Ada and C++ options have been removed. These are now always built.
In fact, GCC now requires C++ to build, so new bootstraps had to be
created. FreeBSD8 has its own bootstrap, and FreeBSD 9+ uses a pure
static bootstrap (including GNAT tools) which should last a long time.
Additionally a "Bootstrap" option was added, but this overrides all
other options to create new bootstraps. It is not intended for general
use.
Most of the Ada Framework in ports has been pretested and adjusted to
work with gcc49 out of the box, but some ports will need to be updated
immediately, which will happen right after this one. The update to
lang/gnat_util had to be synchronized with lang/gcc-aux because they
share version information and the PORTREVISION needed to be reset.
2014-03-14 08:36:05 +00:00
|
|
|
--- gcc/testsuite/gcc.dg/pch/pch.exp.orig
|
|
|
|
+++ gcc/testsuite/gcc.dg/pch/pch.exp
|
|
|
|
@@ -44,6 +44,8 @@
|
|
|
|
set test "largefile.c"
|
|
|
|
set testh "largefile.hs"
|
|
|
|
set f [open $test w]
|
|
|
|
+puts $f "/* { dg-do run { target *-*-solaris* } } */"
|
|
|
|
+puts $f "/* { dg-error \"dummy\" \"fool dejagnu\" { target { ! *-*-solaris* } 20 } } */"
|
|
|
|
puts $f "/* { dg-timeout-factor 4.0 } */"
|
|
|
|
set v 0
|
|
|
|
for { set v 0 } { $v < 10000 } { incr v } {
|