Author: pluto Date: Wed Jan 18 21:04:51 2012 GMT Module: packages Tag: HEAD ---- Log message: - rebase against 4.6.2.
---- Files affected: packages/crossmingw64-gcc: gcc-branch.diff (1.2 -> 1.3) ---- Diffs: ================================================================ Index: packages/crossmingw64-gcc/gcc-branch.diff diff -u packages/crossmingw64-gcc/gcc-branch.diff:1.2 packages/crossmingw64-gcc/gcc-branch.diff:1.3 --- packages/crossmingw64-gcc/gcc-branch.diff:1.2 Sun Apr 10 11:07:50 2011 +++ packages/crossmingw64-gcc/gcc-branch.diff Wed Jan 18 21:52:54 2012 @@ -1,697842 +1,14081 @@ -Index: libgomp/configure +Index: configure =================================================================== ---- libgomp/configure (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libgomp/configure (.../branches/gcc-4_6-branch) (revision 172238) -@@ -15780,20 +15780,24 @@ - # If we never went through the LIBGOMP_CHECK_LINKER_FEATURES macro, then we - # don't know enough about $LD to do tricks... - --# FIXME The following test is too strict, in theory. --if test $enable_shared = no || test "x$LD" = x; then -- enable_symvers=no --else -- if test $with_gnu_ld = yes ; then -- enable_symvers=gnu +--- configure (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ configure (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -5117,7 +5117,7 @@ + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $acx_cv_cc_gcc_supports_ada" >&5 + $as_echo "$acx_cv_cc_gcc_supports_ada" >&6; } + +-if test x$GNATBIND != xno && test x$GNATMAKE != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then ++if test "x$GNATBIND" != xno && test "x$GNATMAKE" != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then + have_gnat=yes + else + have_gnat=no +@@ -6944,10 +6944,6 @@ + extra_arflags_for_target=" -X32_64" + extra_nmflags_for_target=" -B -X32_64" + ;; +- *-*-darwin[3-9]*) +- # ranlib before Darwin10 requires the -c flag to look at common symbols. +- extra_ranlibflags_for_target=" -c" +- ;; + mips*-*-pe | sh*-*-pe | *arm-wince-pe) + target_makefile_frag="config/mt-wince" + ;; +Index: Makefile.in +=================================================================== +--- Makefile.in (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ Makefile.in (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -60017,6 +60017,7 @@ + install-gcc: maybe-install-fixincludes + install-gcc: maybe-install-lto-plugin + install-strip-gcc: maybe-install-strip-fixincludes ++install-strip-gcc: maybe-install-strip-lto-plugin + configure-libcpp: configure-libiberty + + configure-stage1-libcpp: configure-stage1-libiberty +Index: libgcc/config.host +=================================================================== +--- libgcc/config.host (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libgcc/config.host (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -145,15 +145,6 @@ + asm_hidden_op=.private_extern + tmake_file="t-darwin ${cpu_type}/t-darwin t-slibgcc-darwin" + ;; +-*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*) +- # This is the place-holder for the generic a.out configuration +- # of FreeBSD. No actual configuration resides here since +- # there was only ever a bare-bones ix86 configuration for +- # a.out and it exists solely in the machine-specific section. +- # This place-holder must exist to avoid dropping into +- # the generic ELF configuration of FreeBSD (i.e. it must be +- # ordered before that section). +- ;; + *-*-freebsd*) + # This is the generic ELF configuration of FreeBSD. Later + # machine-specific sections may refine and add to this +Index: libgcc/generic-morestack.c +=================================================================== +--- libgcc/generic-morestack.c (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libgcc/generic-morestack.c (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -459,8 +459,8 @@ + sigemptyset (&__morestack_initial_sp.mask); + + sigfillset (&__morestack_fullmask); +-#ifdef __linux__ +- /* On Linux, the first two real time signals are used by the NPTL ++#ifdef __GLIBC__ ++ /* In glibc, the first two real time signals are used by the NPTL + threading library. By taking them out of the set of signals, we + avoiding copying the signal mask in pthread_sigmask. More + importantly, pthread_sigmask uses less stack space on x86_64. */ +Index: libgcc/ChangeLog +=================================================================== +--- libgcc/ChangeLog (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libgcc/ChangeLog (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -1,3 +1,16 @@ ++2011-12-15 H.J. Lu <hongjiu...@intel.com> + -+# Turn a 'yes' into a suitable default. -+if test x$enable_symvers = xyes ; then -+ # FIXME The following test is too strict, in theory. -+ if test $enable_shared = no || test "x$LD" = x; then -+ enable_symvers=no - else -- case ${target_os} in -- # Sun symbol versioning exists since Solaris 2.5. -- solaris2.[5-9]* | solaris2.1[0-9]*) -- enable_symvers=sun ;; -- *) -- enable_symvers=no ;; -- esac -+ if test $with_gnu_ld = yes ; then -+ enable_symvers=gnu -+ else -+ case ${target_os} in -+ # Sun symbol versioning exists since Solaris 2.5. -+ solaris2.[5-9]* | solaris2.1[0-9]*) -+ enable_symvers=sun ;; -+ *) -+ enable_symvers=no ;; -+ esac -+ fi - fi - fi - -Index: libgomp/ChangeLog -=================================================================== ---- libgomp/ChangeLog (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libgomp/ChangeLog (.../branches/gcc-4_6-branch) (revision 172238) -@@ -1,3 +1,12 @@ -+2011-03-28 Rainer Orth <r...@cebitec.uni-bielefeld.de> ++ Backport from mainline ++ 2011-12-14 H.J. Lu <hongjiu...@intel.com> + -+ Backport from mainline: -+ 2011-03-21 Rainer Orth <r...@cebitec.uni-bielefeld.de> ++ * generic-morestack.c (__generic_morestack_set_initial_sp): Check ++ __GLIBC__ instead of __linux__ when using __SIGRTMIN. + -+ PR bootstrap/48135 -+ * acinclude.m4 (enable_symvers): Handle --disable-symvers. -+ * configure: Regenerate. ++2011-11-23 Gerald Pfeifer <ger...@pfeifer.com> ++ ++ * config.host (*-*-freebsd[12], *-*-freebsd[12].*, ++ *-*-freebsd*aout*): Remove. + - 2011-03-25 Release Manager + 2011-10-26 Release Manager - * GCC 4.6.0 released. -Index: libgomp/acinclude.m4 + * GCC 4.6.2 released. +Index: libtool.m4 =================================================================== ---- libgomp/acinclude.m4 (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libgomp/acinclude.m4 (.../branches/gcc-4_6-branch) (revision 172238) -@@ -228,20 +228,24 @@ - # If we never went through the LIBGOMP_CHECK_LINKER_FEATURES macro, then we - # don't know enough about $LD to do tricks... - AC_REQUIRE([LIBGOMP_CHECK_LINKER_FEATURES]) --# FIXME The following test is too strict, in theory. --if test $enable_shared = no || test "x$LD" = x; then -- enable_symvers=no --else -- if test $with_gnu_ld = yes ; then -- enable_symvers=gnu -+ -+# Turn a 'yes' into a suitable default. -+if test x$enable_symvers = xyes ; then -+ # FIXME The following test is too strict, in theory. -+ if test $enable_shared = no || test "x$LD" = x; then -+ enable_symvers=no +--- libtool.m4 (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libtool.m4 (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -2273,7 +2273,7 @@ + objformat=`/usr/bin/objformat` else -- case ${target_os} in -- # Sun symbol versioning exists since Solaris 2.5. -- solaris2.[[5-9]]* | solaris2.1[[0-9]]*) -- enable_symvers=sun ;; -- *) -- enable_symvers=no ;; -- esac -+ if test $with_gnu_ld = yes ; then -+ enable_symvers=gnu -+ else -+ case ${target_os} in -+ # Sun symbol versioning exists since Solaris 2.5. -+ solaris2.[[5-9]]* | solaris2.1[[0-9]]*) -+ enable_symvers=sun ;; -+ *) -+ enable_symvers=no ;; -+ esac -+ fi + case $host_os in +- freebsd[[123]]*) objformat=aout ;; ++ freebsd[[23]].*) objformat=aout ;; + *) objformat=elf ;; + esac fi - fi - -Index: libquadmath/configure +@@ -2291,7 +2291,7 @@ + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in +- freebsd2*) ++ freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[[01]]* | freebsdelf3.[[01]]*) +@@ -4804,7 +4804,7 @@ + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. +- freebsd2*) ++ freebsd2.*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes +@@ -5751,7 +5751,7 @@ + esac + ;; + +- freebsd[[12]]*) ++ freebsd2.*) + # C++ shared libraries reported to be fairly broken before + # switch to ELF + _LT_TAGVAR(ld_shlibs, $1)=no +Index: libgomp/configure =================================================================== ---- libquadmath/configure (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libquadmath/configure (.../branches/gcc-4_6-branch) (revision 172238) -@@ -747,6 +747,7 @@ - enable_libtool_lock - enable_maintainer_mode - enable_multilib -+enable_symvers - enable_generated_files_in_srcdir - ' - ac_precious_vars='build_alias -@@ -1391,6 +1392,7 @@ - --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --enable-multilib build many library versions (default) -+ --disable-symvers disable symbol versioning for libquadmath - --enable-generated-files-in-srcdir - put copies of generated files in source dir intended - for creating source tarballs for users without -@@ -10511,7 +10513,7 @@ - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 10514 "configure" -+#line 10516 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -10617,7 +10619,7 @@ - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 10620 "configure" -+#line 10622 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -12339,19 +12341,27 @@ - # Check for symbol versioning (copied from libssp). - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether symbol versioning is supported" >&5 - $as_echo_n "checking whether symbol versioning is supported... " >&6; } --if test x$gcc_no_link = xyes; then -- # If we cannot link, we cannot build shared libraries, so do not use -- # symbol versioning. -- quadmath_use_symver=no -+# Check whether --enable-symvers was given. -+if test "${enable_symvers+set}" = set; then : -+ enableval=$enable_symvers; quadmath_use_symver=$enableval - else -- save_LDFLAGS="$LDFLAGS" -- LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -- cat > conftest.map <<EOF -+ quadmath_use_symver=yes -+fi -+ -+if test "x$quadmath_use_symver" = xyes; then -+ if test x$gcc_no_link = xyes; then -+ # If we cannot link, we cannot build shared libraries, so do not use -+ # symbol versioning. -+ quadmath_use_symver=no -+ else -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -+ cat > conftest.map <<EOF - FOO_1.0 { - global: *foo*; bar; local: *; - }; - EOF -- if test x$gcc_no_link = xyes; then -+ if test x$gcc_no_link = xyes; then - as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5 - fi - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -12372,18 +12382,18 @@ - fi - rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -- if test x$quadmath_use_symver = xno; then -- case "$target_os" in -- solaris2*) -- LDFLAGS="$save_LDFLAGS" -- LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" -- # Sun ld cannot handle wildcards and treats all entries as undefined. -- cat > conftest.map <<EOF -+ if test x$quadmath_use_symver = xno; then -+ case "$target_os" in -+ solaris2*) -+ LDFLAGS="$save_LDFLAGS" -+ LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" -+ # Sun ld cannot handle wildcards and treats all entries as undefined. -+ cat > conftest.map <<EOF - FOO_1.0 { - global: foo; local: *; - }; - EOF -- if test x$gcc_no_link = xyes; then -+ if test x$gcc_no_link = xyes; then - as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5 - fi - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -12404,10 +12414,11 @@ - fi - rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -- ;; -- esac -+ ;; -+ esac -+ fi -+ LDFLAGS="$save_LDFLAGS" +--- libgomp/configure (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libgomp/configure (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -9317,7 +9317,7 @@ + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. +- freebsd2*) ++ freebsd2.*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes +@@ -10230,7 +10230,7 @@ + objformat=`/usr/bin/objformat` + else + case $host_os in +- freebsd[123]*) objformat=aout ;; ++ freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac fi -- LDFLAGS="$save_LDFLAGS" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $quadmath_use_symver" >&5 - $as_echo "$quadmath_use_symver" >&6; } -Index: libquadmath/ChangeLog +@@ -10248,7 +10248,7 @@ + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in +- freebsd2*) ++ freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) +@@ -13164,7 +13164,7 @@ + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. +- freebsd2*) ++ freebsd2.*) + archive_cmds_FC='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct_FC=yes + hardcode_minus_L_FC=yes +@@ -13869,7 +13869,7 @@ + objformat=`/usr/bin/objformat` + else + case $host_os in +- freebsd[123]*) objformat=aout ;; ++ freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac + fi +@@ -13887,7 +13887,7 @@ + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in +- freebsd2*) ++ freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) +Index: libgomp/ChangeLog =================================================================== ---- libquadmath/ChangeLog (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libquadmath/ChangeLog (.../branches/gcc-4_6-branch) (revision 172238) -@@ -1,3 +1,20 @@ -+2011-03-28 Rainer Orth <r...@cebitec.uni-bielefeld.de> -+ -+ Backport from mainline: -+ 2011-03-21 Rainer Orth <r...@cebitec.uni-bielefeld.de> +--- libgomp/ChangeLog (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libgomp/ChangeLog (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -1,3 +1,7 @@ ++2011-11-20 Andreas Tobler <andre...@fgznet.ch> + -+ PR bootstrap/48135 -+ * configure.ac (quadmath_use_symver): Handle --disable-symvers. + * configure: Regenerate. + -+2011-03-26 Jakub Jelinek <ja...@redhat.com> -+ -+ Backport from mainline -+ 2011-03-25 Jakub Jelinek <ja...@redhat.com> -+ -+ * printf/printf_fp.c (__quadmath_printf_fp): Use memcpy instead of -+ mempcpy. -+ - 2011-03-25 Release Manager + 2011-10-26 Release Manager - * GCC 4.6.0 released. -Index: libquadmath/printf/printf_fp.c -=================================================================== ---- libquadmath/printf/printf_fp.c (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libquadmath/printf/printf_fp.c (.../branches/gcc-4_6-branch) (revision 172238) -@@ -1197,7 +1197,7 @@ - if (*copywc == decimalwc) - memcpy (cp, decimal, decimal_len), cp += decimal_len; - else if (*copywc == thousands_sepwc) -- mempcpy (cp, thousands_sep, thousands_sep_len), cp += thousands_sep_len; -+ memcpy (cp, thousands_sep, thousands_sep_len), cp += thousands_sep_len; - else - *cp++ = (char) *copywc; - } -Index: libquadmath/configure.ac + * GCC 4.6.2 released. +Index: libquadmath/configure =================================================================== ---- libquadmath/configure.ac (.../tags/gcc_4_6_0_release) (revision 172238) -+++ libquadmath/configure.ac (.../branches/gcc-4_6-branch) (revision 172238) -@@ -164,35 +164,42 @@ - - # Check for symbol versioning (copied from libssp). - AC_MSG_CHECKING([whether symbol versioning is supported]) --if test x$gcc_no_link = xyes; then -- # If we cannot link, we cannot build shared libraries, so do not use -- # symbol versioning. -- quadmath_use_symver=no --else -- save_LDFLAGS="$LDFLAGS" -- LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -- cat > conftest.map <<EOF -+AC_ARG_ENABLE(symvers, -+AS_HELP_STRING([--disable-symvers], -+ [disable symbol versioning for libquadmath]), -+quadmath_use_symver=$enableval, -+quadmath_use_symver=yes) -+if test "x$quadmath_use_symver" = xyes; then -+ if test x$gcc_no_link = xyes; then -+ # If we cannot link, we cannot build shared libraries, so do not use -+ # symbol versioning. -+ quadmath_use_symver=no -+ else -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -fPIC -shared -Wl,--version-script,./conftest.map" -+ cat > conftest.map <<EOF - FOO_1.0 { - global: *foo*; bar; local: *; - }; - EOF -- AC_TRY_LINK([int foo;],[],[quadmath_use_symver=gnu],[quadmath_use_symver=no]) -- if test x$quadmath_use_symver = xno; then -- case "$target_os" in -- solaris2*) -- LDFLAGS="$save_LDFLAGS" -- LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" -- # Sun ld cannot handle wildcards and treats all entries as undefined. -- cat > conftest.map <<EOF -+ AC_TRY_LINK([int foo;],[],[quadmath_use_symver=gnu],[quadmath_use_symver=no]) -+ if test x$quadmath_use_symver = xno; then -+ case "$target_os" in -+ solaris2*) -+ LDFLAGS="$save_LDFLAGS" -+ LDFLAGS="$LDFLAGS -fPIC -shared -Wl,-M,./conftest.map" -+ # Sun ld cannot handle wildcards and treats all entries as undefined. -+ cat > conftest.map <<EOF - FOO_1.0 { - global: foo; local: *; - }; - EOF -- AC_TRY_LINK([int foo;],[],[quadmath_use_symver=sun],[quadmath_use_symver=no]) -- ;; -- esac -+ AC_TRY_LINK([int foo;],[],[quadmath_use_symver=sun],[quadmath_use_symver=no]) -+ ;; -+ esac -+ fi -+ LDFLAGS="$save_LDFLAGS" +--- libquadmath/configure (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libquadmath/configure (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -8727,7 +8727,7 @@ + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. +- freebsd2*) ++ freebsd2.*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes +@@ -9643,7 +9643,7 @@ + objformat=`/usr/bin/objformat` + else + case $host_os in +- freebsd[123]*) objformat=aout ;; ++ freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac fi -- LDFLAGS="$save_LDFLAGS" - fi - AC_MSG_RESULT($quadmath_use_symver) - AM_CONDITIONAL(LIBQUAD_USE_SYMVER, [test "x$quadmath_use_symver" != xno]) -Index: gcc/tree-vrp.c +@@ -9661,7 +9661,7 @@ + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in +- freebsd2*) ++ freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) +Index: libquadmath/ChangeLog =================================================================== ---- gcc/tree-vrp.c (.../tags/gcc_4_6_0_release) (revision 172238) -+++ gcc/tree-vrp.c (.../branches/gcc-4_6-branch) (revision 172238) -@@ -6619,6 +6619,7 @@ - edge; this helps us avoid an overflow infinity for conditionals - which are not in a loop. */ - if (edges > 0 -+ && gimple_phi_num_args (phi) > 1 - && edges == old_edges) - { - int cmp_min = compare_values (lhs_vr->min, vr_result.min); -Index: gcc/doc/extend.texi +--- libquadmath/ChangeLog (.../tags/gcc_4_6_2_release) (wersja 183284) ++++ libquadmath/ChangeLog (.../branches/gcc-4_6-branch) (wersja 183284) +@@ -1,3 +1,7 @@ ++2011-11-20 Andreas Tobler <andre...@fgznet.ch> ++ ++ * configure: Regenerate. ++ + 2011-10-26 Release Manager + + * GCC 4.6.2 released. +Index: gcc/doc/invoke.texi =================================================================== ---- gcc/doc/extend.texi (.../tags/gcc_4_6_0_release) (revision 172238) -+++ gcc/doc/extend.texi (.../branches/gcc-4_6-branch) (revision 172238) -@@ -4180,42 +4180,6 @@ - You can use the sequence @samp{\e} in a string or character constant to - stand for the ASCII character @key{ESC}. - --@node Alignment --@section Inquiring on Alignment of Types or Variables --@cindex alignment --@cindex type alignment --@cindex variable alignment -- --The keyword @code{__alignof__} allows you to inquire about how an object --is aligned, or the minimum alignment usually required by a type. Its --syntax is just like @code{sizeof}. -- --For example, if the target machine requires a @code{double} value to be --aligned on an 8-byte boundary, then @code{__alignof__ (double)} is 8. --This is true on many RISC machines. On more traditional machine --designs, @code{__alignof__ (double)} is 4 or even 2. -- --Some machines never actually require alignment; they allow reference to any --data type even at an odd address. For these machines, @code{__alignof__} --reports the smallest alignment that GCC will give the data type, usually as --mandated by the target ABI. -- --If the operand of @code{__alignof__} is an lvalue rather than a type, --its value is the required alignment for its type, taking into account <<Diff was trimmed, longer than 597 lines>> ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/crossmingw64-gcc/gcc-branch.diff?r1=1.2&r2=1.3&f=u _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit