Index: libgomp/ChangeLog =================================================================== --- libgomp/ChangeLog (.../tags/gcc_8_2_0_release) +++ libgomp/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,19 @@ +2018-07-26 Jakub Jelinek + + Backported from mainline + 2018-07-17 Jakub Jelinek + + PR middle-end/86542 + * testsuite/libgomp.c++/pr86542.C: New test. + + PR middle-end/86539 + * testsuite/libgomp.c++/pr86539.C: New test. + +2018-07-26 Jakub Jelinek + + PR middle-end/86660 + * testsuite/libgomp.c/pr86660.c: New test. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: libgomp/testsuite/libgomp.c++/pr86542.C =================================================================== --- libgomp/testsuite/libgomp.c++/pr86542.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libgomp/testsuite/libgomp.c++/pr86542.C (.../branches/gcc-8-branch) @@ -0,0 +1,37 @@ +// PR middle-end/86542 + +struct S { int s; S (); ~S (); S (const S &); }; +S s; + +S::S () +{ +} + +S::~S () +{ +} + +S::S (const S &x) +{ + s = x.s; +} + +__attribute__((noipa)) void +foo (int i, int j, int k, S s) +{ + if (i != 0 || j != 0 || k != 0 || s.s != 12) + __builtin_abort (); +} + +int +main () +{ + volatile int inc = 16, jnc = 16, knc = 16; + s.s = 12; + #pragma omp taskloop collapse (3) firstprivate (s) + for (int i = 0; i < 16; i += inc) + for (int j = 0; j < 16; j += jnc) + for (int k = 0; k < 16; k += knc) + foo (i, j, k, s); + return 0; +} Index: libgomp/testsuite/libgomp.c++/pr86539.C =================================================================== --- libgomp/testsuite/libgomp.c++/pr86539.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libgomp/testsuite/libgomp.c++/pr86539.C (.../branches/gcc-8-branch) @@ -0,0 +1,28 @@ +// PR middle-end/86539 + +int a[384]; + +__attribute__((noipa)) void +foo (int &b, int &c) +{ + #pragma omp taskloop shared (a) collapse(3) + for (int i = 0; i < 1; i++) + for (int *p = &b; p < &c; p++) + for (int j = 0; j < 1; j++) + if (p < &a[128] || p >= &a[256]) + __builtin_abort (); + else + p[0]++; +} + +int +main () +{ + #pragma omp parallel + #pragma omp single + foo (a[128], a[256]); + for (int i = 0; i < 384; i++) + if (a[i] != (i >= 128 && i < 256)) + __builtin_abort (); + return 0; +} Index: libgomp/testsuite/libgomp.c/pr86660.c =================================================================== --- libgomp/testsuite/libgomp.c/pr86660.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libgomp/testsuite/libgomp.c/pr86660.c (.../branches/gcc-8-branch) @@ -0,0 +1,28 @@ +/* PR middle-end/86660 */ + +#pragma omp declare target +int v[20]; + +void +foo (void) +{ + if (v[7] != 2) + __builtin_abort (); + v[7] = 1; +} +#pragma omp end declare target + +int +main () +{ + v[5] = 8; + v[7] = 2; + #pragma omp target map (always, tofrom: v) + { + foo (); + v[5] = 3; + } + if (v[7] != 1 || v[5] != 3) + __builtin_abort (); + return 0; +} Index: libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc =================================================================== --- libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc (.../tags/gcc_8_2_0_release) +++ libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc (.../branches/gcc-8-branch) @@ -235,7 +235,7 @@ val = FIRST_32_SECOND_64(1168, 1776); else if (minor == 11 || (minor == 12 && patch == 1)) val = FIRST_32_SECOND_64(1168, 2288); - else if (minor <= 13) + else if (minor <= 14) val = FIRST_32_SECOND_64(1168, 2304); else val = FIRST_32_SECOND_64(1216, 2304); Index: libsanitizer/ChangeLog =================================================================== --- libsanitizer/ChangeLog (.../tags/gcc_8_2_0_release) +++ libsanitizer/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,19 @@ +2018-08-16 Martin Liska + + Backport from mainline + 2018-08-02 Martin Liska + + PR sanitizer/86022 + * sanitizer_common/sanitizer_linux_libcdep.cc (ThreadDescriptorSize): + Cherry-pick compiler-rt revision 338606. + +2018-08-01 Marek Polacek + + PR sanitizer/86759 + * tsan/tsan_platform.h: Cherry-pick compiler-rt revision 318044. + * tsan/tsan_platform_linux.cc: Cherry-pick compiler-rt revision + 319180. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: libsanitizer/tsan/tsan_platform_linux.cc =================================================================== --- libsanitizer/tsan/tsan_platform_linux.cc (.../tags/gcc_8_2_0_release) +++ libsanitizer/tsan/tsan_platform_linux.cc (.../branches/gcc-8-branch) @@ -214,9 +214,9 @@ Die(); } #elif defined(__powerpc64__) - if (vmaSize != 44 && vmaSize != 46) { + if (vmaSize != 44 && vmaSize != 46 && vmaSize != 47) { Printf("FATAL: ThreadSanitizer: unsupported VMA range\n"); - Printf("FATAL: Found %d - Supported 44 and 46\n", vmaSize); + Printf("FATAL: Found %d - Supported 44, 46, and 47\n", vmaSize); Die(); } #endif Index: libsanitizer/tsan/tsan_platform.h =================================================================== --- libsanitizer/tsan/tsan_platform.h (.../tags/gcc_8_2_0_release) +++ libsanitizer/tsan/tsan_platform.h (.../branches/gcc-8-branch) @@ -301,6 +301,38 @@ static const uptr kVdsoBeg = 0x7800000000000000ull; }; +/* +C/C++ on linux/powerpc64 (47-bit VMA) +0000 0000 1000 - 0100 0000 0000: main binary +0100 0000 0000 - 0200 0000 0000: - +0100 0000 0000 - 1000 0000 0000: shadow +1000 0000 0000 - 1000 0000 0000: - +1000 0000 0000 - 2000 0000 0000: metainfo (memory blocks and sync objects) +2000 0000 0000 - 2000 0000 0000: - +2000 0000 0000 - 2200 0000 0000: traces +2200 0000 0000 - 7d00 0000 0000: - +7d00 0000 0000 - 7e00 0000 0000: heap +7e00 0000 0000 - 7e80 0000 0000: - +7e80 0000 0000 - 8000 0000 0000: modules and main thread stack +*/ +struct Mapping47 { + static const uptr kMetaShadowBeg = 0x100000000000ull; + static const uptr kMetaShadowEnd = 0x200000000000ull; + static const uptr kTraceMemBeg = 0x200000000000ull; + static const uptr kTraceMemEnd = 0x220000000000ull; + static const uptr kShadowBeg = 0x010000000000ull; + static const uptr kShadowEnd = 0x100000000000ull; + static const uptr kHeapMemBeg = 0x7d0000000000ull; + static const uptr kHeapMemEnd = 0x7e0000000000ull; + static const uptr kLoAppMemBeg = 0x000000001000ull; + static const uptr kLoAppMemEnd = 0x010000000000ull; + static const uptr kHiAppMemBeg = 0x7e8000000000ull; + static const uptr kHiAppMemEnd = 0x800000000000ull; // 47 bits + static const uptr kAppMemMsk = 0x7c0000000000ull; + static const uptr kAppMemXor = 0x020000000000ull; + static const uptr kVdsoBeg = 0x7800000000000000ull; +}; + // Indicates the runtime will define the memory regions at runtime. #define TSAN_RUNTIME_VMA 1 #endif @@ -427,11 +459,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return MappingImpl(); - else - return MappingImpl(); + switch (vmaSize) { + case 44: return MappingImpl(); + case 46: return MappingImpl(); + case 47: return MappingImpl(); + } DCHECK(0); + return 0; #else return MappingImpl(); #endif @@ -580,11 +614,13 @@ DCHECK(0); return false; #elif defined(__powerpc64__) - if (vmaSize == 44) - return IsAppMemImpl(mem); - else - return IsAppMemImpl(mem); + switch (vmaSize) { + case 44: return IsAppMemImpl(mem); + case 46: return IsAppMemImpl(mem); + case 47: return IsAppMemImpl(mem); + } DCHECK(0); + return false; #else return IsAppMemImpl(mem); #endif @@ -607,11 +643,13 @@ DCHECK(0); return false; #elif defined(__powerpc64__) - if (vmaSize == 44) - return IsShadowMemImpl(mem); - else - return IsShadowMemImpl(mem); + switch (vmaSize) { + case 44: return IsShadowMemImpl(mem); + case 46: return IsShadowMemImpl(mem); + case 47: return IsShadowMemImpl(mem); + } DCHECK(0); + return false; #else return IsShadowMemImpl(mem); #endif @@ -634,11 +672,13 @@ DCHECK(0); return false; #elif defined(__powerpc64__) - if (vmaSize == 44) - return IsMetaMemImpl(mem); - else - return IsMetaMemImpl(mem); + switch (vmaSize) { + case 44: return IsMetaMemImpl(mem); + case 46: return IsMetaMemImpl(mem); + case 47: return IsMetaMemImpl(mem); + } DCHECK(0); + return false; #else return IsMetaMemImpl(mem); #endif @@ -671,11 +711,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return MemToShadowImpl(x); - else - return MemToShadowImpl(x); + switch (vmaSize) { + case 44: return MemToShadowImpl(x); + case 46: return MemToShadowImpl(x); + case 47: return MemToShadowImpl(x); + } DCHECK(0); + return 0; #else return MemToShadowImpl(x); #endif @@ -710,11 +752,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return MemToMetaImpl(x); - else - return MemToMetaImpl(x); + switch (vmaSize) { + case 44: return MemToMetaImpl(x); + case 46: return MemToMetaImpl(x); + case 47: return MemToMetaImpl(x); + } DCHECK(0); + return 0; #else return MemToMetaImpl(x); #endif @@ -762,11 +806,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return ShadowToMemImpl(s); - else - return ShadowToMemImpl(s); + switch (vmaSize) { + case 44: return ShadowToMemImpl(s); + case 46: return ShadowToMemImpl(s); + case 47: return ShadowToMemImpl(s); + } DCHECK(0); + return 0; #else return ShadowToMemImpl(s); #endif @@ -797,11 +843,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return GetThreadTraceImpl(tid); - else - return GetThreadTraceImpl(tid); + switch (vmaSize) { + case 44: return GetThreadTraceImpl(tid); + case 46: return GetThreadTraceImpl(tid); + case 47: return GetThreadTraceImpl(tid); + } DCHECK(0); + return 0; #else return GetThreadTraceImpl(tid); #endif @@ -827,11 +875,13 @@ DCHECK(0); return 0; #elif defined(__powerpc64__) - if (vmaSize == 44) - return GetThreadTraceHeaderImpl(tid); - else - return GetThreadTraceHeaderImpl(tid); + switch (vmaSize) { + case 44: return GetThreadTraceHeaderImpl(tid); + case 46: return GetThreadTraceHeaderImpl(tid); + case 47: return GetThreadTraceHeaderImpl(tid); + } DCHECK(0); + return 0; #else return GetThreadTraceHeaderImpl(tid); #endif Index: libstdc++-v3/configure =================================================================== --- libstdc++-v3/configure (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/configure (.../branches/gcc-8-branch) @@ -729,6 +729,8 @@ CSTDIO_H SECTION_FLAGS WERROR +ENABLE_FLOAT128_FALSE +ENABLE_FLOAT128_TRUE thread_header glibcxx_PCHFLAGS GLIBCXX_BUILD_PCH_FALSE @@ -11606,7 +11608,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11609 "configure" +#line 11611 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11712,7 +11714,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11715 "configure" +#line 11717 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -15398,7 +15400,7 @@ # Fake what AC_TRY_COMPILE does. cat > conftest.$ac_ext << EOF -#line 15401 "configure" +#line 15403 "configure" int main() { typedef bool atomic_type; @@ -15433,7 +15435,7 @@ rm -f conftest* cat > conftest.$ac_ext << EOF -#line 15436 "configure" +#line 15438 "configure" int main() { typedef short atomic_type; @@ -15468,7 +15470,7 @@ rm -f conftest* cat > conftest.$ac_ext << EOF -#line 15471 "configure" +#line 15473 "configure" int main() { // NB: _Atomic_word not necessarily int. @@ -15504,7 +15506,7 @@ rm -f conftest* cat > conftest.$ac_ext << EOF -#line 15507 "configure" +#line 15509 "configure" int main() { typedef long long atomic_type; @@ -15585,7 +15587,7 @@ # unnecessary for this test. cat > conftest.$ac_ext << EOF -#line 15588 "configure" +#line 15590 "configure" int main() { _Decimal32 d1; @@ -15627,7 +15629,7 @@ # unnecessary for this test. cat > conftest.$ac_ext << EOF -#line 15630 "configure" +#line 15632 "configure" template struct same { typedef T2 type; }; @@ -15661,7 +15663,7 @@ rm -f conftest* cat > conftest.$ac_ext << EOF -#line 15664 "configure" +#line 15666 "configure" template struct same { typedef T2 type; }; @@ -15683,9 +15685,6 @@ ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - -$as_echo "#define _GLIBCXX_USE_FLOAT128 1" >>confdefs.h - enable_float128=yes else enable_float128=no @@ -15692,6 +15691,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_float128" >&5 $as_echo "$enable_float128" >&6; } + rm -f conftest* ac_ext=c @@ -81261,6 +81261,15 @@ fi + if test $enable_float128 = yes; then + ENABLE_FLOAT128_TRUE= + ENABLE_FLOAT128_FALSE='#' +else + ENABLE_FLOAT128_TRUE='#' + ENABLE_FLOAT128_FALSE= +fi + + if test $enable_libstdcxx_allocator_flag = new; then ENABLE_ALLOCATOR_NEW_TRUE= ENABLE_ALLOCATOR_NEW_FALSE='#' @@ -81804,6 +81813,10 @@ as_fn_error "conditional \"GLIBCXX_BUILD_PCH\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_FLOAT128_TRUE}" && test -z "${ENABLE_FLOAT128_FALSE}"; then + as_fn_error "conditional \"ENABLE_FLOAT128\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_ALLOCATOR_NEW_TRUE}" && test -z "${ENABLE_ALLOCATOR_NEW_FALSE}"; then as_fn_error "conditional \"ENABLE_ALLOCATOR_NEW\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 Index: libstdc++-v3/src/filesystem/std-path.cc =================================================================== --- libstdc++-v3/src/filesystem/std-path.cc (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/src/filesystem/std-path.cc (.../branches/gcc-8-branch) @@ -378,7 +378,7 @@ { #ifdef _GLIBCXX_FILESYSTEM_IS_WINDOWS // Replace each slash character in the root-name - if (p.is_root_name()) + if (p._M_type == _Type::_Root_name || p._M_type == _Type::_Root_dir) { string_type s = p.native(); std::replace(s.begin(), s.end(), L'/', L'\\'); @@ -398,7 +398,8 @@ } else if (!ret.has_relative_path()) { - if (!ret.is_absolute()) + // remove a dot-dot filename immediately after root-directory + if (!ret.has_root_directory()) ret /= p; } else @@ -411,8 +412,18 @@ { // Remove the filename before the trailing slash // (equiv. to ret = ret.parent_path().remove_filename()) - ret._M_pathname.erase(elem._M_cur->_M_pos); - ret._M_cmpts.erase(elem._M_cur, ret._M_cmpts.end()); + + if (elem == ret.begin()) + ret.clear(); + else + { + ret._M_pathname.erase(elem._M_cur->_M_pos); + // Do we still have a trailing slash? + if (std::prev(elem)->_M_type == _Type::_Filename) + ret._M_cmpts.erase(elem._M_cur); + else + ret._M_cmpts.erase(elem._M_cur, ret._M_cmpts.end()); + } } else // ??? ret /= p; Index: libstdc++-v3/src/c++11/system_error.cc =================================================================== --- libstdc++-v3/src/c++11/system_error.cc (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/src/c++11/system_error.cc (.../branches/gcc-8-branch) @@ -29,6 +29,7 @@ #include #include #include +#include #undef __sso_string namespace @@ -65,6 +66,261 @@ // _GLIBCXX_HAVE_STRERROR_L, strerror_l(i, cloc) return string(strerror(i)); } + + virtual std::error_condition + default_error_condition(int ev) const noexcept + { + switch (ev) + { + // List of errno macros from [cerrno.syn]. + // C11 only defines EDOM, EILSEQ and ERANGE, the rest are from POSIX. + // They expand to integer constant expressions with type int, + // and distinct positive values, suitable for use in #if directives. + // POSIX adds more macros (but they're not defined on all targets, + // see config/os/*/error_constants.h), and POSIX allows + // EAGAIN == EWOULDBLOCK and ENOTSUP == EOPNOTSUPP. + +#ifdef E2BIG + case E2BIG: +#endif +#ifdef EACCES + case EACCES: +#endif +#ifdef EADDRINUSE + case EADDRINUSE: +#endif +#ifdef EADDRNOTAVAIL + case EADDRNOTAVAIL: +#endif +#ifdef EAFNOSUPPORT + case EAFNOSUPPORT: +#endif +#ifdef EAGAIN + case EAGAIN: +#endif +#ifdef EALREADY + case EALREADY: +#endif +#ifdef EBADF + case EBADF: +#endif +#ifdef EBADMSG + case EBADMSG: +#endif +#ifdef EBUSY + case EBUSY: +#endif +#ifdef ECANCELED + case ECANCELED: +#endif +#ifdef ECHILD + case ECHILD: +#endif +#ifdef ECONNABORTED + case ECONNABORTED: +#endif +#ifdef ECONNREFUSED + case ECONNREFUSED: +#endif +#ifdef ECONNRESET + case ECONNRESET: +#endif +#ifdef EDEADLK + case EDEADLK: +#endif +#ifdef EDESTADDRREQ + case EDESTADDRREQ: +#endif + case EDOM: +#ifdef EEXIST + case EEXIST: +#endif +#ifdef EFAULT + case EFAULT: +#endif +#ifdef EFBIG + case EFBIG: +#endif +#ifdef EHOSTUNREACH + case EHOSTUNREACH: +#endif +#ifdef EIDRM + case EIDRM: +#endif + case EILSEQ: +#ifdef EINPROGRESS + case EINPROGRESS: +#endif +#ifdef EINTR + case EINTR: +#endif +#ifdef EINVAL + case EINVAL: +#endif +#ifdef EIO + case EIO: +#endif +#ifdef EISCONN + case EISCONN: +#endif +#ifdef EISDIR + case EISDIR: +#endif +#ifdef ELOOP + case ELOOP: +#endif +#ifdef EMFILE + case EMFILE: +#endif +#ifdef EMLINK + case EMLINK: +#endif +#ifdef EMSGSIZE + case EMSGSIZE: +#endif +#ifdef ENAMETOOLONG + case ENAMETOOLONG: +#endif +#ifdef ENETDOWN + case ENETDOWN: +#endif +#ifdef ENETRESET + case ENETRESET: +#endif +#ifdef ENETUNREACH + case ENETUNREACH: +#endif +#ifdef ENFILE + case ENFILE: +#endif +#ifdef ENOBUFS + case ENOBUFS: +#endif +#ifdef ENODATA + case ENODATA: +#endif +#ifdef ENODEV + case ENODEV: +#endif +#ifdef ENOENT + case ENOENT: +#endif +#ifdef ENOEXEC + case ENOEXEC: +#endif +#ifdef ENOLCK + case ENOLCK: +#endif +#ifdef ENOLINK + case ENOLINK: +#endif +#ifdef ENOMEM + case ENOMEM: +#endif +#ifdef ENOMSG + case ENOMSG: +#endif +#ifdef ENOPROTOOPT + case ENOPROTOOPT: +#endif +#ifdef ENOSPC + case ENOSPC: +#endif +#ifdef ENOSR + case ENOSR: +#endif +#ifdef ENOSTR + case ENOSTR: +#endif +#ifdef ENOSYS + case ENOSYS: +#endif +#ifdef ENOTCONN + case ENOTCONN: +#endif +#ifdef ENOTDIR + case ENOTDIR: +#endif +#if defined ENOTEMPTY && (!defined EEXIST || ENOTEMPTY != EEXIST) + // AIX sometimes uses the same value for EEXIST and ENOTEMPTY + case ENOTEMPTY: +#endif +#ifdef ENOTRECOVERABLE + case ENOTRECOVERABLE: +#endif +#ifdef ENOTSOCK + case ENOTSOCK: +#endif +#ifdef ENOTSUP + case ENOTSUP: +#endif +#ifdef ENOTTY + case ENOTTY: +#endif +#ifdef ENXIO + case ENXIO: +#endif +#if defined EOPNOTSUPP && (!defined ENOTSUP || EOPNOTSUPP != ENOTSUP) + case EOPNOTSUPP: +#endif +#ifdef EOVERFLOW + case EOVERFLOW: +#endif +#ifdef EOWNERDEAD + case EOWNERDEAD: +#endif +#ifdef EPERM + case EPERM: +#endif +#ifdef EPIPE + case EPIPE: +#endif +#ifdef EPROTO + case EPROTO: +#endif +#ifdef EPROTONOSUPPORT + case EPROTONOSUPPORT: +#endif +#ifdef EPROTOTYPE + case EPROTOTYPE: +#endif + case ERANGE: +#ifdef EROFS + case EROFS: +#endif +#ifdef ESPIPE + case ESPIPE: +#endif +#ifdef ESRCH + case ESRCH: +#endif +#ifdef ETIME + case ETIME: +#endif +#ifdef ETIMEDOUT + case ETIMEDOUT: +#endif +#ifdef ETXTBSY + case ETXTBSY: +#endif +#if defined EWOULDBLOCK && (!defined EAGAIN || EWOULDBLOCK != EAGAIN) + case EWOULDBLOCK: +#endif +#ifdef EXDEV + case EXDEV: +#endif + return std::error_condition(ev, std::generic_category()); + + /* Additional system-dependent mappings from non-standard error codes + * to one of the POSIX values above would go here, e.g. + case EBLAH: + return std::error_condition(EINVAL, std::generic_category()); + */ + + default: + return std::error_condition(ev, std::system_category()); + } + } }; const generic_error_category generic_category_instance{}; Index: libstdc++-v3/doc/xml/manual/using.xml =================================================================== --- libstdc++-v3/doc/xml/manual/using.xml (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/doc/xml/manual/using.xml (.../branches/gcc-8-branch) @@ -128,7 +128,7 @@ must be available to all hosted implementations. Actually, the word "files" is a misnomer, since the contents of the headers don't necessarily have to be in any kind of external - file. The only rule is that when one #include's a + file. The only rule is that when one #includes a header, the contents of that header become available, no matter how. @@ -140,16 +140,24 @@ There are two main types of include files: header files related to a specific version of the ISO C++ standard (called Standard - Headers), and all others (TR1, C++ ABI, and Extensions). + Headers), and all others (TS, TR1, C++ ABI, and Extensions). - Two dialects of standard headers are supported, corresponding to - the 1998 standard as updated for 2003, and the current 2011 standard. + Multiple dialects of standard headers are supported, corresponding to + the 1998 standard as updated for 2003, the 2011 standard, the 2014 + standard, and so on. - C++98/03 include files. These are available in the default compilation mode, i.e. -std=c++98 or -std=gnu++98. + and + and + + show the C++98/03 include files. + These are available in the C++98 compilation mode, + i.e. -std=c++98 or -std=gnu++98. + Unless specified otherwise below, they are also available in later modes + (C++11, C++14 etc). @@ -207,6 +215,7 @@ valarray vector + @@ -248,6 +257,7 @@ ctimecwcharcwctype + @@ -254,8 +264,31 @@
-C++11 include files. These are only available in C++11 compilation + The following header is deprecated + and might be removed from a future C++ standard. + + + +C++ 1998 Deprecated Library Header + + + + + +strstream + + + +
+ + + and + show the C++11 include files. +These are available in C++11 compilation mode, i.e. -std=c++11 or -std=gnu++11. +Including these headers in C++98/03 mode may result in compilation errors. +Unless specified otherwise below, they are also available in later modes +(C++14 etc). @@ -271,73 +304,33 @@ -algorithm array -bitset +atomic chrono -complex +codecvt +condition_variable -condition_variable -deque -exception forward_list -fstream - - -functional future initalizer_list -iomanip -ios - - -iosfwd -iostream -istream -iterator -limits - - -list -locale -map -memory mutex - - -new -numeric -ostream -queue random ratio regex -set -sstream -stack - - -stdexcept -streambuf -string +scoped_allocator system_error thread tuple +typeindex type_traits -typeinfo unordered_map unordered_set - -utility -valarray -vector - @@ -356,39 +349,77 @@ -cassert ccomplex -cctype -cerrno cfenv +cinttypes +cstdalign +cstdbool -cfloat -cinttypes -ciso646 -climits -clocale +cstdint +ctgmath +cuchar + + + + + + + shows the C++14 include file. +This is available in C++14 compilation +mode, i.e. -std=c++14 or -std=gnu++14. +Including this header in C++98/03 mode or C++11 will not result in +compilation errors, but will not define anything. +Unless specified otherwise below, it is also available in later modes +(C++17 etc). + + + + +C++ 2014 Library Header + + + + -cmath -csetjmp -csignal -cstdarg -cstdbool +shared_mutex + + +
+ + + shows the C++17 include files. +These are available in C++17 compilation +mode, i.e. -std=c++17 or -std=gnu++17. +Including these headers in earlier modes will not result in +compilation errors, but will not define anything. +Unless specified otherwise below, they are also available in later modes +(C++20 etc). + + + + +C++ 2017 Library Headers + + + + + + + + -cstddef -cstdint -cstdlib -cstdio -cstring +any +charconv +filesystem +optional +string_view -ctgmath -ctime -cuchar -cwchar -cwctype +variant + @@ -396,6 +427,97 @@ +, +shows the additional include file define by the +File System Technical Specification, ISO/IEC TS 18822. +This is available in C++11 and later compilation modes. +Including this header in earlier modes will not result in +compilation errors, but will not define anything. + + + +
+File System TS Header + + + + + +experimental/filesystem + + + +
+ + + +, +shows the additional include files define by the C++ Extensions for +Library Fundamentals Technical Specification, ISO/IEC TS 19568. +These are available in C++14 and later compilation modes. +Including these headers in earlier modes will not result in +compilation errors, but will not define anything. + + + + +Library Fundamentals TS Headers + + + + + + + + + +experimental/algorithm +experimental/any +experimental/array +experimental/chrono +experimental/deque + + +experimental/forward_list +experimental/functional +experimental/iterator +experimental/list +experimental/map + + +experimental/memory +experimental/memory_resource +experimental/numeric +experimental/optional +experimental/propagate_const + + +experimental/random +experimental/ratio +experimental/regex +experimental/set +experimental/source_location + + +experimental/string +experimental/string_view +experimental/system_error +experimental/tuple +experimental/type_traits + + +experimental/unordered_map +experimental/unordered_set +experimental/utility +experimental/vector + + + + +
+ + + In addition, TR1 includes as: @@ -426,6 +548,7 @@ tr1/utility + @@ -566,6 +689,7 @@ ext/vstring.h + @@ -586,18 +710,22 @@ +debug/array debug/bitset debug/deque +debug/forward_list debug/list + + debug/map debug/set - - - debug/string debug/unordered_map debug/unordered_set + + debug/vector + Index: libstdc++-v3/doc/xml/manual/test.xml =================================================================== --- libstdc++-v3/doc/xml/manual/test.xml (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/doc/xml/manual/test.xml (.../branches/gcc-8-branch) @@ -763,12 +763,15 @@ Similarly, tests which depend on a newer standard than the default - should use dg-options instead of an effective target, - so that they are not skipped by default. + must use dg-options instead of (or in addition to) + an effective target, so that they are not skipped by default. For example, tests for C++17 features should use // { dg-options "-std=gnu++17" } - and not - // { dg-do run "c++1z" } + before any dg-do such as: + // { dg-do run "c++17" } + The dg-options directive must come first, so that + the -std flag has already been added to the options + before checking the c++17 target.
Examples of Test Directives Index: libstdc++-v3/doc/html/manual/bugs.html =================================================================== --- libstdc++-v3/doc/html/manual/bugs.html (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/doc/html/manual/bugs.html (.../branches/gcc-8-branch) @@ -526,4 +526,8 @@ weak_ptr::owner_before

Add noexcept. +

3076: + basic_string CTAD ambiguity + +

Change constructors to constrained templates.

\ No newline at end of file Index: libstdc++-v3/doc/html/manual/test.html =================================================================== --- libstdc++-v3/doc/html/manual/test.html (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/doc/html/manual/test.html (.../branches/gcc-8-branch) @@ -464,12 +464,15 @@ possible variations.

Similarly, tests which depend on a newer standard than the default - should use dg-options instead of an effective target, - so that they are not skipped by default. + must use dg-options instead of (or in addition to) + an effective target, so that they are not skipped by default. For example, tests for C++17 features should use

    // { dg-options "-std=gnu++17" }

- and not -

    // { dg-do run "c++1z" }

+ before any dg-do such as: +

    // { dg-do run "c++17" }

+ The dg-options directive must come first, so that + the -std flag has already been added to the options + before checking the c++17 target.

Examples of Test Directives

Example 1: Testing compilation only:

Index: libstdc++-v3/doc/html/manual/using_headers.html
===================================================================
--- libstdc++-v3/doc/html/manual/using_headers.html	(.../tags/gcc_8_2_0_release)
+++ libstdc++-v3/doc/html/manual/using_headers.html	(.../branches/gcc-8-branch)
@@ -4,7 +4,7 @@
      must be available to all hosted implementations.  Actually, the
      word "files" is a misnomer, since the contents of the
      headers don't necessarily have to be in any kind of external
-     file.  The only rule is that when one #include's a
+     file.  The only rule is that when one #includes a
      header, the contents of that header become available, no matter
      how.
    

@@ -12,25 +12,71 @@

There are two main types of include files: header files related to a specific version of the ISO C++ standard (called Standard - Headers), and all others (TR1, C++ ABI, and Extensions). + Headers), and all others (TS, TR1, C++ ABI, and Extensions).

- Two dialects of standard headers are supported, corresponding to - the 1998 standard as updated for 2003, and the current 2011 standard. + Multiple dialects of standard headers are supported, corresponding to + the 1998 standard as updated for 2003, the 2011 standard, the 2014 + standard, and so on.

- C++98/03 include files. These are available in the default compilation mode, i.e. -std=c++98 or -std=gnu++98. -

Table 3.2. C++ 1998 Library Headers

algorithmbitsetcomplexdequeexception
fstreamfunctionaliomanipiosiosfwd
iostreamistreamiteratorlimitslist
localemapmemorynewnumeric
ostreamqueuesetsstreamstack
stdexceptstreambufstringutilitytypeinfo
valarrayvector   

Table 3.3. C++ 1998 Library Headers for C Library Facilities

cassertcerrnocctypecfloatciso646
climitsclocalecmathcsetjmpcsignal
cstdargcstddefcstdiocstdlibcstring
ctimecwcharcwctype  

-C++11 include files. These are only available in C++11 compilation + Table 3.2, “C++ 1998 Library Headers” and + Table 3.3, “C++ 1998 Library Headers for C Library Facilities” and + Table 3.4, “C++ 1998 Deprecated Library Header” + show the C++98/03 include files. + These are available in the C++98 compilation mode, + i.e. -std=c++98 or -std=gnu++98. + Unless specified otherwise below, they are also available in later modes + (C++11, C++14 etc). +

Table 3.2. C++ 1998 Library Headers

algorithmbitsetcomplexdequeexception
fstreamfunctionaliomanipiosiosfwd
iostreamistreamiteratorlimitslist
localemapmemorynewnumeric
ostreamqueuesetsstreamstack
stdexceptstreambufstringutilitytypeinfo
valarrayvector 

Table 3.3. C++ 1998 Library Headers for C Library Facilities

cassertcerrnocctypecfloatciso646
climitsclocalecmathcsetjmpcsignal
cstdargcstddefcstdiocstdlibcstring
ctimecwcharcwctype 

+ The following header is deprecated + and might be removed from a future C++ standard. +

Table 3.4. C++ 1998 Deprecated Library Header

strstream

+Table 3.5, “C++ 2011 Library Headers” and +Table 3.6, “C++ 2011 Library Headers for C Library Facilities” show the C++11 include files. +These are available in C++11 compilation mode, i.e. -std=c++11 or -std=gnu++11. -

Table 3.4. C++ 2011 Library Headers

algorithmarraybitsetchronocomplex
condition_variabledequeexceptionforward_listfstream
functionalfutureinitalizer_listiomanipios
iosfwdiostreamistreamiteratorlimits
listlocalemapmemorymutex
newnumericostreamqueuerandom
ratioregexsetsstreamstack
stdexceptstreambufstringsystem_errorthread
tupletype_traitstypeinfounordered_mapunordered_set
utilityvalarrayvector  

Table 3.5. C++ 2011 Library Headers for C Library Facilities

cassertccomplexcctypecerrnocfenv
cfloatcinttypesciso646climitsclocale
cmathcsetjmpcsignalcstdargcstdbool
cstddefcstdintcstdlibcstdiocstring
ctgmathctimecucharcwcharcwctype

+Including these headers in C++98/03 mode may result in compilation errors. +Unless specified otherwise below, they are also available in later modes +(C++14 etc). +

Table 3.5. C++ 2011 Library Headers

arrayatomicchronocodecvtcondition_variable
forward_listfutureinitalizer_listmutexrandom
ratioregexscoped_allocatorsystem_errorthread
tupletypeindextype_traitsunordered_mapunordered_set

Table 3.6. C++ 2011 Library Headers for C Library Facilities

ccomplexcfenvcinttypescstdaligncstdbool
cstdintctgmathcuchar 

+Table 3.7, “C++ 2014 Library Header” shows the C++14 include file. +This is available in C++14 compilation +mode, i.e. -std=c++14 or -std=gnu++14. +Including this header in C++98/03 mode or C++11 will not result in +compilation errors, but will not define anything. +Unless specified otherwise below, it is also available in later modes +(C++17 etc). +

Table 3.7. C++ 2014 Library Header

shared_mutex

+Table 3.8, “C++ 2017 Library Headers” shows the C++17 include files. +These are available in C++17 compilation +mode, i.e. -std=c++17 or -std=gnu++17. +Including these headers in earlier modes will not result in +compilation errors, but will not define anything. +Unless specified otherwise below, they are also available in later modes +(C++20 etc). +

Table 3.8. C++ 2017 Library Headers

anycharconvfilesystemoptionalstring_view
variant 

+Table 3.9, “File System TS Header”, +shows the additional include file define by the +File System Technical Specification, ISO/IEC TS 18822. +This is available in C++11 and later compilation modes. +Including this header in earlier modes will not result in +compilation errors, but will not define anything. +

Table 3.9. File System TS Header

experimental/filesystem

+Table 3.10, “Library Fundamentals TS Headers”, +shows the additional include files define by the C++ Extensions for +Library Fundamentals Technical Specification, ISO/IEC TS 19568. +These are available in C++14 and later compilation modes. +Including these headers in earlier modes will not result in +compilation errors, but will not define anything. +

Table 3.10. Library Fundamentals TS Headers

experimental/algorithmexperimental/anyexperimental/arrayexperimental/chronoexperimental/deque
experimental/forward_listexperimental/functionalexperimental/iteratorexperimental/listexperimental/map
experimental/memoryexperimental/memory_resourceexperimental/numericexperimental/optionalexperimental/propagate_const
experimental/randomexperimental/ratioexperimental/regexexperimental/setexperimental/source_location
experimental/stringexperimental/string_viewexperimental/system_errorexperimental/tupleexperimental/type_traits
experimental/unordered_mapexperimental/unordered_setexperimental/utilityexperimental/vector 

In addition, TR1 includes as: -

Table 3.6. C++ TR 1 Library Headers

tr1/arraytr1/complextr1/memorytr1/functionaltr1/random
tr1/regextr1/tupletr1/type_traitstr1/unordered_maptr1/unordered_set
tr1/utility    

Table 3.7. C++ TR 1 Library Headers for C Library Facilities

tr1/ccomplextr1/cfenvtr1/cfloattr1/cmathtr1/cinttypes
tr1/climitstr1/cstdargtr1/cstdbooltr1/cstdinttr1/cstdio
tr1/cstdlibtr1/ctgmathtr1/ctimetr1/cwchartr1/cwctype

Decimal floating-point arithmetic is available if the C++ +

Table 3.11. C++ TR 1 Library Headers

tr1/arraytr1/complextr1/memorytr1/functionaltr1/random
tr1/regextr1/tupletr1/type_traitstr1/unordered_maptr1/unordered_set
tr1/utility 

Table 3.12. C++ TR 1 Library Headers for C Library Facilities

tr1/ccomplextr1/cfenvtr1/cfloattr1/cmathtr1/cinttypes
tr1/climitstr1/cstdargtr1/cstdbooltr1/cstdinttr1/cstdio
tr1/cstdlibtr1/ctgmathtr1/ctimetr1/cwchartr1/cwctype

Decimal floating-point arithmetic is available if the C++ compiler supports scalar decimal floating-point types defined via __attribute__((mode(SD|DD|LD))). -

Table 3.8. C++ TR 24733 Decimal Floating-Point Header

decimal/decimal

+

Table 3.13. C++ TR 24733 Decimal Floating-Point Header

decimal/decimal

Also included are files for the C++ ABI interface: -

Table 3.9. C++ ABI Headers

cxxabi.hcxxabi_forced.h

+

Table 3.14. C++ ABI Headers

cxxabi.hcxxabi_forced.h

And a large variety of extensions. -

Table 3.10. Extension Headers

ext/algorithmext/atomicity.hext/array_allocator.hext/bitmap_allocator.hext/cast.h
ext/codecvt_specializations.hext/concurrence.hext/debug_allocator.hext/enc_filebuf.hext/extptr_allocator.h
ext/functionalext/iteratorext/malloc_allocator.hext/memoryext/mt_allocator.h
ext/new_allocator.hext/numericext/numeric_traits.hext/pb_ds/assoc_container.hext/pb_ds/priority_queue.h
ext/pod_char_traits.hext/pool_allocator.hext/rb_treeext/ropeext/slist
ext/stdio_filebuf.hext/stdio_sync_filebuf.hext/throw_allocator.hext/typelist.hext/type_traits.h
ext/vstring.h    

Table 3.11. Extension Debug Headers

debug/bitsetdebug/dequedebug/listdebug/mapdebug/set
debug/stringdebug/unordered_mapdebug/unordered_setdebug/vector 

Table 3.12. Extension Profile Headers

profile/bitsetprofile/dequeprofile/listprofile/map
profile/setprofile/unordered_mapprofile/unordered_setprofile/vector

Table 3.13. Extension Parallel Headers

parallel/algorithmparallel/numeric

Mixing Headers

A few simple rules. +

Table 3.15. Extension Headers

ext/algorithmext/atomicity.hext/array_allocator.hext/bitmap_allocator.hext/cast.h
ext/codecvt_specializations.hext/concurrence.hext/debug_allocator.hext/enc_filebuf.hext/extptr_allocator.h
ext/functionalext/iteratorext/malloc_allocator.hext/memoryext/mt_allocator.h
ext/new_allocator.hext/numericext/numeric_traits.hext/pb_ds/assoc_container.hext/pb_ds/priority_queue.h
ext/pod_char_traits.hext/pool_allocator.hext/rb_treeext/ropeext/slist
ext/stdio_filebuf.hext/stdio_sync_filebuf.hext/throw_allocator.hext/typelist.hext/type_traits.h
ext/vstring.h 

Table 3.16. Extension Debug Headers

debug/arraydebug/bitsetdebug/dequedebug/forward_listdebug/list
debug/mapdebug/setdebug/stringdebug/unordered_mapdebug/unordered_set
debug/vector 

Table 3.17. Extension Profile Headers

profile/bitsetprofile/dequeprofile/listprofile/map
profile/setprofile/unordered_mapprofile/unordered_setprofile/vector

Table 3.18. Extension Parallel Headers

parallel/algorithmparallel/numeric

Mixing Headers

A few simple rules.

First, mixing different dialects of the standard headers is not possible. It's an all-or-nothing affair. Thus, code like

Index: libstdc++-v3/doc/html/manual/index.html
===================================================================
--- libstdc++-v3/doc/html/manual/index.html	(.../tags/gcc_8_2_0_release)
+++ libstdc++-v3/doc/html/manual/index.html	(.../branches/gcc-8-branch)
@@ -149,7 +149,7 @@
 	  
22.10. Non-unique Mapping Containers
22.11. Point Iterator Hierarchy
22.12. Invalidation Guarantee Tags Hierarchy
22.13. Container Tag Hierarchy
22.14. Hash functions, ranged-hash functions, and range-hashing functions
22.15. Insert hash sequence diagram
22.16. Insert hash sequence diagram with a null policy
22.17. Hash policy class diagram
22.18. Balls and bins
22.19. Insert resize sequence diagram
22.20. Standard resize policy trigger sequence diagram
22.21. Standard resize policy size sequence - diagram
22.22. Tree node invariants
22.23. Tree node invalidation
22.24. A tree and its update policy
22.25. Restoring node invariants
22.26. Insert update sequence
22.27. Useless update path
22.28. A PATRICIA trie
22.29. A trie and its update policy
22.30. A simple list
22.31. The counter algorithm
22.32. Underlying Priority-Queue Data-Structures.
22.33. Priority-Queue Data-Structure Tags.
B.1. Configure and Build File Dependencies

List of Equations

22.1. Ranged Hash Function
22.2. Range-Hashing, Division Method
22.3. Division via Prime Modulo
22.4. Division via Bit Mask
22.5. A Standard String Hash Function
22.6. Only k String DNA Hash Index: libstdc++-v3/include/Makefile.in =================================================================== --- libstdc++-v3/include/Makefile.in (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/Makefile.in (.../branches/gcc-8-branch) @@ -1662,6 +1662,11 @@ @ENABLE_ALLOCATOR_NEW_FALSE@stamp-allocator-new: @ENABLE_ALLOCATOR_NEW_FALSE@ echo 0 > stamp-allocator-new +@ENABLE_FLOAT128_TRUE@stamp-float128: +@ENABLE_FLOAT128_TRUE@ echo 'define _GLIBCXX_USE_FLOAT128 1' > stamp-float128 +@ENABLE_FLOAT128_FALSE@stamp-float128: +@ENABLE_FLOAT128_FALSE@ echo 'undef _GLIBCXX_USE_FLOAT128' > stamp-float128 + # NB: The non-empty default ldbl_compat works around an AIX sed # oddity, see libstdc++/31957 for details. ${host_builddir}/c++config.h: ${CONFIG_HEADER} \ @@ -1673,7 +1678,8 @@ stamp-extern-template \ stamp-dual-abi \ stamp-cxx11-abi \ - stamp-allocator-new + stamp-allocator-new \ + stamp-float128 @date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\ release=`sed 's/^\([0-9]*\).*$$/\1/' ${toplevel_srcdir}/gcc/BASE-VER` ;\ ns_version=`cat stamp-namespace-version` ;\ @@ -1682,6 +1688,7 @@ dualabi=`cat stamp-dual-abi` ;\ cxx11abi=`cat stamp-cxx11-abi` ;\ allocatornew=`cat stamp-allocator-new` ;\ + float128=`cat stamp-float128` ;\ ldbl_compat='s,g,g,' ;\ grep "^[ ]*#[ ]*define[ ][ ]*_GLIBCXX_LONG_DOUBLE_COMPAT[ ][ ]*1[ ]*$$" \ ${CONFIG_HEADER} > /dev/null 2>&1 \ @@ -1694,6 +1701,7 @@ -e "s,define _GLIBCXX_USE_DUAL_ABI, define _GLIBCXX_USE_DUAL_ABI $$dualabi," \ -e "s,define _GLIBCXX_USE_CXX11_ABI, define _GLIBCXX_USE_CXX11_ABI $$cxx11abi," \ -e "s,define _GLIBCXX_USE_ALLOCATOR_NEW, define _GLIBCXX_USE_ALLOCATOR_NEW $$allocatornew," \ + -e "s,define _GLIBCXX_USE_FLOAT128,$$float128," \ -e "$$ldbl_compat" \ < ${glibcxx_srcdir}/include/bits/c++config > $@ ;\ sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \ Index: libstdc++-v3/include/std/thread =================================================================== --- libstdc++-v3/include/std/thread (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/std/thread (.../branches/gcc-8-branch) @@ -102,21 +102,26 @@ private: id _M_id; - public: - thread() noexcept = default; // _GLIBCXX_RESOLVE_LIB_DEFECTS // 2097. packaged_task constructors should be constrained - thread(thread&) = delete; - thread(const thread&) = delete; - thread(const thread&&) = delete; + template + using __not_same = __not_::type>::type, + thread>>; - thread(thread&& __t) noexcept - { swap(__t); } + public: + thread() noexcept = default; - template + template>> explicit thread(_Callable&& __f, _Args&&... __args) { + static_assert( __is_invocable::type, + typename decay<_Args>::type...>::value, + "std::thread arguments must be invocable after conversion to rvalues" + ); + #ifdef GTHR_ACTIVE_PROXY // Create a reference to pthread_create, not just the gthr weak symbol. auto __depend = reinterpret_cast(&pthread_create); @@ -135,6 +140,11 @@ std::terminate(); } + thread(const thread&) = delete; + + thread(thread&& __t) noexcept + { swap(__t); } + thread& operator=(const thread&) = delete; thread& operator=(thread&& __t) noexcept Index: libstdc++-v3/include/std/functional =================================================================== --- libstdc++-v3/include/std/functional (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/std/functional (.../branches/gcc-8-branch) @@ -864,7 +864,8 @@ template \ decltype(_S_not<__inv_res_t<_Fn _QUALS, _Args...>>()) \ operator()(_Args&&... __args) _QUALS \ - noexcept(noexcept(_S_not<__inv_res_t<_Fn _QUALS, _Args...>>())) \ + noexcept(__is_nothrow_invocable<_Fn _QUALS, _Args...>::value \ + && noexcept(_S_not<__inv_res_t<_Fn _QUALS, _Args...>>())) \ { \ return !std::__invoke(std::forward< _Fn _QUALS >(_M_fn), \ std::forward<_Args>(__args)...); \ Index: libstdc++-v3/include/std/variant =================================================================== --- libstdc++-v3/include/std/variant (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/std/variant (.../branches/gcc-8-branch) @@ -506,6 +506,20 @@ } } + void _M_destructive_move(_Move_ctor_base&& __rhs) + { + this->~_Move_ctor_base(); + __try + { + ::new (this) _Move_ctor_base(std::move(__rhs)); + } + __catch (...) + { + this->_M_index = variant_npos; + __throw_exception_again; + } + } + _Move_ctor_base(const _Move_ctor_base&) = default; _Move_ctor_base& operator=(const _Move_ctor_base&) = default; _Move_ctor_base& operator=(_Move_ctor_base&&) = default; @@ -516,6 +530,12 @@ { using _Base = _Copy_ctor_alias<_Types...>; using _Base::_Base; + + void _M_destructive_move(_Move_ctor_base&& __rhs) + { + this->~_Move_ctor_base(); + ::new (this) _Move_ctor_base(std::move(__rhs)); + } }; template @@ -538,22 +558,14 @@ { static constexpr void (*_S_vtable[])(void*, void*) = { &__erased_assign<_Types&, const _Types&>... }; - _S_vtable[__rhs._M_index](this->_M_storage(), __rhs._M_storage()); + _S_vtable[__rhs._M_index](this->_M_storage(), + __rhs._M_storage()); } } else { _Copy_assign_base __tmp(__rhs); - this->~_Copy_assign_base(); - __try - { - ::new (this) _Copy_assign_base(std::move(__tmp)); - } - __catch (...) - { - this->_M_index = variant_npos; - __throw_exception_again; - } + this->_M_destructive_move(std::move(__tmp)); } __glibcxx_assert(this->_M_index == __rhs._M_index); return *this; @@ -582,20 +594,6 @@ using _Base = _Copy_assign_alias<_Types...>; using _Base::_Base; - void _M_destructive_move(_Move_assign_base&& __rhs) - { - this->~_Move_assign_base(); - __try - { - ::new (this) _Move_assign_base(std::move(__rhs)); - } - __catch (...) - { - this->_M_index = variant_npos; - __throw_exception_again; - } - } - _Move_assign_base& operator=(_Move_assign_base&& __rhs) noexcept(_Traits<_Types...>::_S_nothrow_move_assign) @@ -613,16 +611,7 @@ else { _Move_assign_base __tmp(std::move(__rhs)); - this->~_Move_assign_base(); - __try - { - ::new (this) _Move_assign_base(std::move(__tmp)); - } - __catch (...) - { - this->_M_index = variant_npos; - __throw_exception_again; - } + this->_M_destructive_move(std::move(__tmp)); } __glibcxx_assert(this->_M_index == __rhs._M_index); return *this; Index: libstdc++-v3/include/bits/shared_ptr.h =================================================================== --- libstdc++-v3/include/bits/shared_ptr.h (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/bits/shared_ptr.h (.../branches/gcc-8-branch) @@ -718,7 +718,7 @@ inline shared_ptr<_Tp> make_shared(_Args&&... __args) { - typedef typename std::remove_const<_Tp>::type _Tp_nc; + typedef typename std::remove_cv<_Tp>::type _Tp_nc; return std::allocate_shared<_Tp>(std::allocator<_Tp_nc>(), std::forward<_Args>(__args)...); } Index: libstdc++-v3/include/bits/fs_dir.h =================================================================== --- libstdc++-v3/include/bits/fs_dir.h (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/bits/fs_dir.h (.../branches/gcc-8-branch) @@ -313,7 +313,10 @@ _M_file_type(error_code& __ec) const noexcept { if (_M_type != file_type::none && _M_type != file_type::symlink) - return _M_type; + { + __ec.clear(); + return _M_type; + } return status(__ec).type(); } Index: libstdc++-v3/include/bits/c++config =================================================================== --- libstdc++-v3/include/bits/c++config (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/bits/c++config (.../branches/gcc-8-branch) @@ -609,4 +609,9 @@ # endif #endif +/* Define if __float128 is supported on this host. */ +#if defined(__FLOAT128__) || defined(__SIZEOF_FLOAT128__) +#define _GLIBCXX_USE_FLOAT128 +#endif + // End of prewritten config; the settings discovered at configure time follow. Index: libstdc++-v3/include/bits/stl_iterator.h =================================================================== --- libstdc++-v3/include/bits/stl_iterator.h (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/bits/stl_iterator.h (.../branches/gcc-8-branch) @@ -122,6 +122,7 @@ */ // _GLIBCXX_RESOLVE_LIB_DEFECTS // 235 No specification of default ctor for reverse_iterator + // 1012. reverse_iterator default ctor should value initialize _GLIBCXX17_CONSTEXPR reverse_iterator() : current() { } @@ -176,9 +177,11 @@ * * This requires that @c --current is dereferenceable. */ + // _GLIBCXX_RESOLVE_LIB_DEFECTS + // 2188. Reverse iterator does not fully support targets that overload & _GLIBCXX17_CONSTEXPR pointer operator->() const - { return &(operator*()); } + { return std::__addressof(operator*()); } /** * @return @c *this Index: libstdc++-v3/include/bits/shared_ptr_base.h =================================================================== --- libstdc++-v3/include/bits/shared_ptr_base.h (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/bits/shared_ptr_base.h (.../branches/gcc-8-branch) @@ -508,7 +508,7 @@ friend class _Sp_counted_ptr_inplace; static const type_info& - _S_ti() noexcept + _S_ti() noexcept _GLIBCXX_VISIBILITY(default) { alignas(type_info) static constexpr _Sp_make_shared_tag __tag; return reinterpret_cast(__tag); Index: libstdc++-v3/include/Makefile.am =================================================================== --- libstdc++-v3/include/Makefile.am (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/include/Makefile.am (.../branches/gcc-8-branch) @@ -1230,6 +1230,14 @@ echo 0 > stamp-allocator-new endif +if ENABLE_FLOAT128 +stamp-float128: + echo 'define _GLIBCXX_USE_FLOAT128 1' > stamp-float128 +else +stamp-float128: + echo 'undef _GLIBCXX_USE_FLOAT128' > stamp-float128 +endif + # NB: The non-empty default ldbl_compat works around an AIX sed # oddity, see libstdc++/31957 for details. ${host_builddir}/c++config.h: ${CONFIG_HEADER} \ @@ -1241,7 +1249,8 @@ stamp-extern-template \ stamp-dual-abi \ stamp-cxx11-abi \ - stamp-allocator-new + stamp-allocator-new \ + stamp-float128 @date=`cat ${toplevel_srcdir}/gcc/DATESTAMP` ;\ release=`sed 's/^\([0-9]*\).*$$/\1/' ${toplevel_srcdir}/gcc/BASE-VER` ;\ ns_version=`cat stamp-namespace-version` ;\ @@ -1250,6 +1259,7 @@ dualabi=`cat stamp-dual-abi` ;\ cxx11abi=`cat stamp-cxx11-abi` ;\ allocatornew=`cat stamp-allocator-new` ;\ + float128=`cat stamp-float128` ;\ ldbl_compat='s,g,g,' ;\ grep "^[ ]*#[ ]*define[ ][ ]*_GLIBCXX_LONG_DOUBLE_COMPAT[ ][ ]*1[ ]*$$" \ ${CONFIG_HEADER} > /dev/null 2>&1 \ @@ -1262,6 +1272,7 @@ -e "s,define _GLIBCXX_USE_DUAL_ABI, define _GLIBCXX_USE_DUAL_ABI $$dualabi," \ -e "s,define _GLIBCXX_USE_CXX11_ABI, define _GLIBCXX_USE_CXX11_ABI $$cxx11abi," \ -e "s,define _GLIBCXX_USE_ALLOCATOR_NEW, define _GLIBCXX_USE_ALLOCATOR_NEW $$allocatornew," \ + -e "s,define _GLIBCXX_USE_FLOAT128,$$float128," \ -e "$$ldbl_compat" \ < ${glibcxx_srcdir}/include/bits/c++config > $@ ;\ sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \ Index: libstdc++-v3/libsupc++/new_opa.cc =================================================================== --- libstdc++-v3/libsupc++/new_opa.cc (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/libsupc++/new_opa.cc (.../branches/gcc-8-branch) @@ -25,20 +25,36 @@ #include #include +#include #include #include "new" +#if !_GLIBCXX_HAVE_ALIGNED_ALLOC && !_GLIBCXX_HAVE__ALIGNED_MALLOC \ + && !_GLIBCXX_HAVE_POSIX_MEMALIGN && _GLIBCXX_HAVE_MEMALIGN +# if _GLIBCXX_HOSTED && __has_include() +// Some C libraries declare memalign in +# include +# else +extern "C" void *memalign(std::size_t boundary, std::size_t size); +# endif +#endif + using std::new_handler; using std::bad_alloc; -#if !_GLIBCXX_HAVE_ALIGNED_ALLOC -#if _GLIBCXX_HAVE__ALIGNED_MALLOC -#define aligned_alloc(al,sz) _aligned_malloc(sz,al) +namespace __gnu_cxx { +#if _GLIBCXX_HAVE_ALIGNED_ALLOC +using ::aligned_alloc; +#elif _GLIBCXX_HAVE__ALIGNED_MALLOC +static inline void* +aligned_alloc (std::size_t al, std::size_t sz) +{ return _aligned_malloc(sz, al); } #elif _GLIBCXX_HAVE_POSIX_MEMALIGN static inline void* aligned_alloc (std::size_t al, std::size_t sz) { void *ptr; + // posix_memalign has additional requirement, not present on aligned_alloc: // The value of alignment shall be a power of two multiple of sizeof(void *). if (al < sizeof(void*)) al = sizeof(void*); @@ -48,25 +64,23 @@ return nullptr; } #elif _GLIBCXX_HAVE_MEMALIGN -#if _GLIBCXX_HOSTED -#include -#else -extern "C" void *memalign(std::size_t boundary, std::size_t size); +static inline void* +aligned_alloc (std::size_t al, std::size_t sz) +{ +#ifdef __sun + // Solaris 10 memalign requires that alignment is greater than or equal to + // the size of a word. + if (al < sizeof(int)) + al = sizeof(int); #endif -#define aligned_alloc memalign -#else -#include + return memalign (al, sz); +} +#else // !HAVE__ALIGNED_MALLOC && !HAVE_POSIX_MEMALIGN && !HAVE_MEMALIGN // The C library doesn't provide any aligned allocation functions, define one. // This is a modified version of code from gcc/config/i386/gmm_malloc.h static inline void* aligned_alloc (std::size_t al, std::size_t sz) { - // Alignment must be a power of two. - if (al & (al - 1)) - return nullptr; - else if (!sz) - return nullptr; - // We need extra bytes to store the original value returned by malloc. if (al < sizeof(void*)) al = sizeof(void*); @@ -82,7 +96,7 @@ return aligned_ptr; } #endif -#endif +} // namespace __gnu_cxx _GLIBCXX_WEAK_DEFINITION void * operator new (std::size_t sz, std::align_val_t al) @@ -90,16 +104,28 @@ void *p; std::size_t align = (std::size_t)al; + /* Alignment must be a power of two. */ + /* XXX This should be checked by the compiler (PR 86878). */ + if (__builtin_expect (align & (align - 1), false)) + _GLIBCXX_THROW_OR_ABORT(bad_alloc()); + /* malloc (0) is unpredictable; avoid it. */ - if (sz == 0) + if (__builtin_expect (sz == 0, false)) sz = 1; #if _GLIBCXX_HAVE_ALIGNED_ALLOC +# ifdef _AIX + /* AIX 7.2.0.0 aligned_alloc incorrectly has posix_memalign's requirement + * that alignment is a multiple of sizeof(void*). */ + if (align < sizeof(void*)) + align = sizeof(void*); +# endif /* C11: the value of size shall be an integral multiple of alignment. */ if (std::size_t rem = sz & (align - 1)) sz += align - rem; #endif + using __gnu_cxx::aligned_alloc; while (__builtin_expect ((p = aligned_alloc (align, sz)) == 0, false)) { new_handler handler = std::get_new_handler (); Index: libstdc++-v3/ChangeLog =================================================================== --- libstdc++-v3/ChangeLog (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,198 @@ +2018-10-08 Joseph Myers + + Backport from mainline + 2018-10-02 Joseph Myers + + * testsuite/lib/libstdc++.exp (libstdc++_init): Use + -fno-show-column in default cxxflags. + +2018-10-08 Jonathan Wakely + + Backport from mainline + 2018-10-08 Jonathan Wakely + + PR libstdc++/87538 + * include/std/functional (_Not_fn::operator()): Check value of + __is_nothrow_invocable as well. + * testsuite/20_util/function_objects/not_fn/87538.cc: New test. + * testsuite/experimental/functional/87538.cc: New test. + +2018-09-11 Jonathan Wakely + + PR libstdc++/87278 + * include/bits/shared_ptr.h (make_shared): Use remove_cv instead of + remove_const. + * testsuite/20_util/shared_ptr/creation/87278.cc: New test. + +2018-08-28 Jonathan Wakely + + PR libstdc++/87116 + * src/filesystem/std-path.cc (path::lexically_normal): When handling + a dot-dot filename, preserve an empty final component in the iteration + sequence. + [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use preferred-separator for + root-directory. + * testsuite/27_io/filesystem/path/generation/normal.cc: Add new tests + for more than two adjacent dot-dot filenames. + [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Replace slashes with + preferred-separator in expected normalized strings. + +2018-08-13 Jonathan Wakely + + Revert + 2018-08-10 Sebastian Huber + + PR target/85904 + * configure.ac: Define HAVE_ALIGNED_ALLOC if building for + Newlib. + * configure: Regenerate. + +2018-08-10 Sebastian Huber + + Backport from mainline + 2018-08-10 Sebastian Huber + + PR target/85904 + * configure.ac: Define HAVE_ALIGNED_ALLOC if building for + Newlib. + * configure: Regenerate. + +2018-08-08 Jonathan Wakely + + * libsupc++/new_opa.cc (aligned_alloc): Declare inside namespace to + avoid clashing with an ::aligned_alloc function that was not detected + by configure. + + PR libstdc++/86597 + * include/bits/fs_dir.h (directory_entry::_M_file_type(error_code&)): + Clear error_code when cached type is used. + * testsuite/27_io/filesystem/directory_entry/86597.cc: New test. + + * doc/xml/manual/using.xml: Remove C++2a headers not on gcc-8-branch. + * doc/html/*: Regenerate. + + * doc/xml/manual/using.xml: Add missing header to table and fix typo. + Remove C++17 headers not present on gcc-8-branch. + * doc/html/*: Regenerate. + +2018-08-07 Jonathan Wakely + + Backport from mainline + 2018-07-31 Jonathan Wakely + + * doc/xml/manual/test.xml: Improve documentation on writing tests for + newer standards. + * doc/xml/manual/using.xml: Document all headers for C++11 and later. + * doc/html/*: Regenerate. + + Backport from mainline + 2018-05-03 Jonathan Wakely + + PR libstdc++/84535 + * include/std/thread (thread::__not_same): New SFINAE helper. + (thread::thread(_Callable&&, _Args&&...)): Add SFINAE constraint that + first argument is not a std::thread. Add static assertion to check + INVOKE expression is valid. + (thread::thread(thread&), thread::thread(const thread&&)): Remove. + * testsuite/30_threads/thread/cons/84535.cc: New. + + Backport from mainline + 2018-08-03 Jonathan Wakely + + * src/c++11/system_error.cc + (system_error_category::default_error_condition): Add workaround for + ENOTEMPTY and EEXIST having the same value on AIX. + * testsuite/19_diagnostics/error_category/system_category.cc: Add + extra testcases for EDOM, EILSEQ, ERANGE, EEXIST and ENOTEMPTY. + + Backport from mainline + 2018-08-01 Jonathan Wakely + + PR libstdc++/60555 + * src/c++11/system_error.cc + (system_error_category::default_error_condition): New override to + check for POSIX errno values. + * testsuite/19_diagnostics/error_category/generic_category.cc: New + * testsuite/19_diagnostics/error_category/system_category.cc: New + test. + + Backport from mainline + 2018-08-07 Jonathan Wakely + + PR libstdc++/86874 + * include/std/variant (_Copy_ctor_base::_M_destructive_move): Define + here instead of in _Move_assign_base. + (_Copy_ctor_base::_M_destructive_move): Define. + (_Copy_assign_base::operator=): Use _M_destructive_move when changing + the contained value to another alternative. + (_Move_assign_base::operator=): Likewise. + (_Move_assign_base::_M_destructive_move): Remove. + * testsuite/20_util/variant/86874.cc: New test. + + Backport from mainline + 2018-08-07 Jonathan Wakely + + PR libstdc++/86861 + * libsupc++/new_opa.cc [_GLIBCXX_HAVE_MEMALIGN] (aligned_alloc): + Replace macro with inline function. + [__sun]: Increase alignment to meet memalign precondition. + [!HAVE__ALIGNED_MALLOC && !HAVE_POSIX_MEMALIGN && !HAVE_MEMALIGN] + (aligned_alloc): Move check for valid alignment to operator new. + Remove redundant check for non-zero size, it's enforced by the caller. + (operator new): Move check for valid alignment here. Use + __builtin_expect on check for zero size. + +2018-07-31 Jonathan Wakely + + Backport from mainline + 2018-07-30 Jonathan Wakely + + * libsupc++/new_opa.cc (operator new(size_t, align_val_t)): Add + workaround for aligned_alloc bug on AIX. + * testsuite/18_support/new_aligned.cc: New test. + + Backport from mainline + 2018-07-20 Fangrui Song + + * include/bits/shared_ptr_base.h (_Sp_make_shared_tag::_S_ti): Use + _GLIBCXX_VISIBILITY(default). + + Backport from mainline + 2018-07-30 Jonathan Wakely + + PR libstdc++/86734 + * include/bits/stl_iterator.h (reverse_iterator::operator->): Use + addressof (LWG 2188). + * testsuite/24_iterators/reverse_iterator/dr2188.cc: New test. + + Backport from mainline + 2018-05-08 Jonathan Wakely + + PR libstdc++/85672 + * include/Makefile.am [!ENABLE_FLOAT128]: Change c++config.h entry + to #undef _GLIBCXX_USE_FLOAT128 instead of defining it to zero. + * include/Makefile.in: Regenerate. + * include/bits/c++config (_GLIBCXX_USE_FLOAT128): Move definition + within conditional block. + + Backport from mainline + 2018-05-01 Tulio Magno Quites Machado Filho + + PR libstdc++/84654 + * acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128. + * config.h.in: Remove references to _GLIBCXX_USE_FLOAT128. + * configure: Regenerate. + * include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128 + based on ENABLE_FLOAT128. + * include/Makefile.in: Regenerate. + * include/bits/c++config: Define _GLIBCXX_USE_FLOAT128. + [!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine + _GLIBCXX_USE_FLOAT128. + +2018-07-26 Marek Polacek + + * testsuite/30_threads/condition_variable_any/cond.cc: New. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: libstdc++-v3/testsuite/24_iterators/reverse_iterator/dr2188.cc =================================================================== --- libstdc++-v3/testsuite/24_iterators/reverse_iterator/dr2188.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/24_iterators/reverse_iterator/dr2188.cc (.../branches/gcc-8-branch) @@ -0,0 +1,47 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-do run { target c++11 } } + +// PR libstdc++/86734 + +#include +#include + +void +test01() +{ + // LWG DR 2188 + // Reverse iterator does not fully support targets that overload operator& + struct X { + int val; + int* operator&() { return &val; } + const int* operator&() const { return &val; } + }; + + X x[2] = { {1}, {2} }; + std::reverse_iterator rev(x+2); + VERIFY( rev->val == 2 ); + ++rev; + VERIFY( rev->val == 1 ); +} + +int +main() +{ + test01(); +} Index: libstdc++-v3/testsuite/18_support/new_aligned.cc =================================================================== --- libstdc++-v3/testsuite/18_support/new_aligned.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/18_support/new_aligned.cc (.../branches/gcc-8-branch) @@ -0,0 +1,119 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-options "-std=gnu++17" } +// { dg-do run { target c++17 } } + +#include +#include +#include + +struct Test +{ + Test(std::size_t size, std::size_t a) + : size(size), alignment(std::align_val_t{a}), + p(::operator new(size, alignment)) + { } + + ~Test() { ::operator delete(p, size, alignment); } + + std::size_t size; + std::align_val_t alignment; + void* p; + + bool valid() const { return p != nullptr; } + + bool aligned() const + { + auto ptr = p; + auto space = size; + return std::align((std::size_t)alignment, size, ptr, space) == p; + } +}; + +// operator new(size_t size, align_val_t alignment) has +// undefined behaviour if the alignment argument is not +// a valid alignment value (i.e. not a power of two). +// +// Unlike posix_memalign there is no requirement that +// alignment >= sizeof(void*). +// +// Unlike aligned_alloc there is no requirement that +// size is an integer multiple of alignment. + +void +test01() +{ + // Test small values that would not be valid for + // posix_memalign or aligned_alloc. + + Test t11{1, 1}; + VERIFY( t11.valid() ); + VERIFY( t11.aligned() ); + + Test t21{2, 1}; + VERIFY( t21.valid() ); + VERIFY( t21.aligned() ); + + Test t12{1, 2}; + VERIFY( t12.valid() ); + VERIFY( t12.aligned() ); + + Test t22{2, 2}; + VERIFY( t22.valid() ); + VERIFY( t22.aligned() ); + + Test t32{3, 2}; + VERIFY( t32.valid() ); + VERIFY( t32.aligned() ); + + Test t42{4, 2}; + VERIFY( t42.valid() ); + VERIFY( t42.aligned() ); + + Test t24{2, 4}; + VERIFY( t24.valid() ); + VERIFY( t24.aligned() ); + + Test t34{3, 4}; + VERIFY( t34.valid() ); + VERIFY( t34.aligned() ); + + Test t44{4, 4}; + VERIFY( t44.valid() ); + VERIFY( t44.aligned() ); + + // Test some larger values. + + Test t128_16{128, 16}; + VERIFY( t128_16.valid() ); + VERIFY( t128_16.aligned() ); + + Test t128_64{128, 64}; + VERIFY( t128_64.valid() ); + VERIFY( t128_64.aligned() ); + + Test t64_128{64, 128}; + VERIFY( t64_128.valid() ); + VERIFY( t64_128.aligned() ); +} + +int +main() +{ + test01(); +} Index: libstdc++-v3/testsuite/30_threads/condition_variable_any/cond.cc =================================================================== --- libstdc++-v3/testsuite/30_threads/condition_variable_any/cond.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/30_threads/condition_variable_any/cond.cc (.../branches/gcc-8-branch) @@ -0,0 +1,35 @@ +// { dg-do run } +// { dg-options "-pthread" } +// { dg-require-effective-target c++11 } +// { dg-require-effective-target pthread } +// { dg-require-gthreads "" } + +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +#include +#include + +int main() +{ + const size_t sz = sizeof(std::condition_variable_any); + char garbage[sz]; + memset(garbage, 0xff, sz); + auto cond = new ((void*)garbage) std::condition_variable_any(); + cond->notify_all(); + cond->~condition_variable_any(); +} Index: libstdc++-v3/testsuite/30_threads/thread/cons/84535.cc =================================================================== --- libstdc++-v3/testsuite/30_threads/thread/cons/84535.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/30_threads/thread/cons/84535.cc (.../branches/gcc-8-branch) @@ -0,0 +1,31 @@ +// { dg-do compile { target c++11 } } +// { dg-require-cstdint "" } +// { dg-require-gthreads "" } + +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +#include + +using std::is_constructible; +using std::thread; + +// PR libstdc++/84535 +static_assert(!is_constructible::value, ""); +static_assert(!is_constructible::value, ""); +static_assert(!is_constructible::value, ""); +static_assert(!is_constructible::value, ""); Index: libstdc++-v3/testsuite/lib/libstdc++.exp =================================================================== --- libstdc++-v3/testsuite/lib/libstdc++.exp (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/testsuite/lib/libstdc++.exp (.../branches/gcc-8-branch) @@ -239,7 +239,7 @@ # Default settings. set cxx [transform "g++"] - set cxxflags "-fmessage-length=0" + set cxxflags "-fmessage-length=0 -fno-show-column" set cxxpchflags "" set cxxvtvflags "" set cxxldflags "" Index: libstdc++-v3/testsuite/27_io/filesystem/directory_entry/86597.cc =================================================================== --- libstdc++-v3/testsuite/27_io/filesystem/directory_entry/86597.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/27_io/filesystem/directory_entry/86597.cc (.../branches/gcc-8-branch) @@ -0,0 +1,74 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-options "-std=gnu++17 -lstdc++fs" } +// { dg-do run { target c++17 } } +// { dg-require-filesystem-ts "" } + +#include +#include +#include +#include + +// PR libstdc++/86597 + +void +test01() +{ + const auto bad_ec = make_error_code(std::errc::address_in_use); + std::error_code ec; + std::filesystem::directory_entry ent("."); + + ec = bad_ec; + VERIFY( ent.exists(ec) ); + VERIFY( !ec ); + + ec = bad_ec; + VERIFY( ent.is_directory(ec) ); + VERIFY( !ec ); + + ec = bad_ec; + VERIFY( !ent.is_regular_file(ec) ); + VERIFY( !ec ); +} + +void +test02() +{ + const auto bad_ec = make_error_code(std::errc::address_in_use); + std::error_code ec; + std::filesystem::directory_entry ent(__gnu_test::nonexistent_path()); + + ec = bad_ec; + VERIFY( !ent.exists(ec) ); + VERIFY( !ec ); + + ec = bad_ec; + VERIFY( !ent.is_directory(ec) ); + VERIFY( !ec ); + + ec = bad_ec; + VERIFY( !ent.is_regular_file(ec) ); + VERIFY( !ec ); +} + +int +main() +{ + test01(); + test02(); +} Index: libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc =================================================================== --- libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/testsuite/27_io/filesystem/path/generation/normal.cc (.../branches/gcc-8-branch) @@ -24,9 +24,19 @@ #include using std::filesystem::path; -using __gnu_test::compare_paths; void +compare_paths(path p, std::string expected) +{ +#if defined(_WIN32) && !defined(__CYGWIN__) + for (auto& c : expected) + if (c == '/') + c = '\\'; +#endif + __gnu_test::compare_paths(p, expected); +} + +void test01() { // C++17 [fs.path.gen] p2 @@ -69,8 +79,11 @@ {"/foo" , "/foo" }, {"/foo/" , "/foo/" }, {"/foo/." , "/foo/" }, + {"/foo/.." , "/" }, + {"/foo/../.." , "/" }, {"/foo/bar/.." , "/foo/" }, - {"/foo/.." , "/" }, + {"/foo/bar/../.." , "/" }, + {"/foo/bar/baz/../../.." , "/" }, // PR libstdc++/87116 {"/." , "/" }, {"/./" , "/" }, @@ -88,10 +101,11 @@ {"foo/.." , "." }, {"foo/../" , "." }, {"foo/../.." , ".." }, + {"foo/../../..", "../.." }, // with root name (OS-dependent): #if defined(_WIN32) && !defined(__CYGWIN__) - {"C:bar/.." , "C:." }, + {"C:bar/.." , "C:" }, #else {"C:bar/.." , "." }, #endif @@ -119,6 +133,48 @@ compare_paths( path(test.input).lexically_normal(), test.normalized ); } +void +test04() +{ + // PR libstdc++/87116 + path p = "a/b/c"; + compare_paths( (p/"../..").lexically_normal(), "a/" ); + + p = "a/b/c/d/e"; + compare_paths( (p/"..").lexically_normal(), "a/b/c/d/" ); + compare_paths( (p/"../..").lexically_normal(), "a/b/c/" ); + compare_paths( (p/"../../..").lexically_normal(), "a/b/" ); + compare_paths( (p/"../../../..").lexically_normal(), "a/" ); + compare_paths( (p/"../../../../..").lexically_normal(), "." ); + compare_paths( (p/"../../../../../..").lexically_normal(), ".." ); + + p = "/a/b/c/d/e"; + compare_paths( (p/"..").lexically_normal(), "/a/b/c/d/" ); + compare_paths( (p/"../..").lexically_normal(), "/a/b/c/" ); + compare_paths( (p/"../../..").lexically_normal(), "/a/b/" ); + compare_paths( (p/"../../../..").lexically_normal(), "/a/" ); + compare_paths( (p/"../../../../..").lexically_normal(), "/" ); + compare_paths( (p/"../../../../../..").lexically_normal(), "/" ); + +#if defined(_WIN32) && !defined(__CYGWIN__) + p = "A:b/c/d/e"; + compare_paths( (p/"..").lexically_normal(), "A:b/c/d/" ); + compare_paths( (p/"../..").lexically_normal(), "A:b/c/" ); + compare_paths( (p/"../../..").lexically_normal(), "A:b/" ); + compare_paths( (p/"../../../..").lexically_normal(), "A:" ); + compare_paths( (p/"../../../../..").lexically_normal(), "A:.." ); + compare_paths( (p/"../../../../../..").lexically_normal(), "A:../.." ); + + p = "A:/b/c/d/e"; + compare_paths( (p/"..").lexically_normal(), "A:/b/c/d/" ); + compare_paths( (p/"../..").lexically_normal(), "A:/b/c/" ); + compare_paths( (p/"../../..").lexically_normal(), "A:/b/" ); + compare_paths( (p/"../../../..").lexically_normal(), "A:/" ); + compare_paths( (p/"../../../../..").lexically_normal(), "A:/" ); + compare_paths( (p/"../../../../../..").lexically_normal(), "A:/" ); +#endif +} + int main() { @@ -125,4 +181,5 @@ test01(); test02(); test03(); + test04(); } Index: libstdc++-v3/testsuite/19_diagnostics/error_category/system_category.cc =================================================================== --- libstdc++-v3/testsuite/19_diagnostics/error_category/system_category.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/19_diagnostics/error_category/system_category.cc (.../branches/gcc-8-branch) @@ -0,0 +1,114 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-do run { target c++11 } } + +#include +#include +#include + +void +test01() +{ + const char* name = std::system_category().name(); + VERIFY( name == std::string("system") ); +} + +void +test02() +{ + const std::error_category& cat = std::system_category(); + std::error_condition cond; + + // As of 2011, ISO C only defines EDOM, EILSEQ and ERANGE: + cond = cat.default_error_condition(EDOM); + VERIFY( cond.value() == EDOM ); + VERIFY( cond == std::errc::argument_out_of_domain ); + VERIFY( cond.category() == std::generic_category() ); + cond = cat.default_error_condition(EILSEQ); + VERIFY( cond.value() == EILSEQ ); + VERIFY( cond == std::errc::illegal_byte_sequence ); + VERIFY( cond.category() == std::generic_category() ); + cond = cat.default_error_condition(ERANGE); + VERIFY( cond.value() == ERANGE ); + VERIFY( cond == std::errc::result_out_of_range ); + VERIFY( cond.category() == std::generic_category() ); + + // EBADF and EACCES are defined on all targets, + // according to config/os/*/error_constants.h + cond = cat.default_error_condition(EBADF); + VERIFY( cond.value() == EBADF ); + VERIFY( cond == std::errc::bad_file_descriptor ); + VERIFY( cond.category() == std::generic_category() ); + cond = cat.default_error_condition(EACCES); + VERIFY( cond.value() == EACCES ); + VERIFY( cond == std::errc::permission_denied ); + VERIFY( cond.category() == std::generic_category() ); + + // All POSIX errno values are positive: + cond = cat.default_error_condition(-1); + VERIFY( cond.value() == -1 ); + VERIFY( cond.category() == cat ); + cond = cat.default_error_condition(-99); + VERIFY( cond.value() == -99 ); + VERIFY( cond.category() == cat ); + + // PR libstdc++/60555 + VERIFY( std::error_code(EDOM, cat) == std::errc::argument_out_of_domain ); + VERIFY( std::error_code(EILSEQ, cat) == std::errc::illegal_byte_sequence ); + VERIFY( std::error_code(ERANGE, cat) == std::errc::result_out_of_range ); + VERIFY( std::error_code(EBADF, cat) == std::errc::bad_file_descriptor ); + VERIFY( std::error_code(EACCES, cat) == std::errc::permission_denied ); + + // As shown at https://gcc.gnu.org/ml/libstdc++/2018-08/msg00018.html + // these two error codes might have the same value on AIX, but we still + // expect both to be matched by system_category and so use generic_category: +#ifdef EEXIST + cond = cat.default_error_condition(EEXIST); + VERIFY( cond.value() == EEXIST ); + VERIFY( cond == std::errc::file_exists ); + VERIFY( cond.category() == std::generic_category() ); + VERIFY( std::error_code(EEXIST, cat) == std::errc::file_exists ); +#endif +#ifdef ENOTEMPTY + cond = cat.default_error_condition(ENOTEMPTY); + VERIFY( cond.value() == ENOTEMPTY ); + VERIFY( cond == std::errc::directory_not_empty ); + VERIFY( cond.category() == std::generic_category() ); + VERIFY( std::error_code(ENOTEMPTY, cat) == std::errc::directory_not_empty ); +#endif +} + +void +test03() +{ + // set "C" locale to get expected message + auto loc = std::locale::global(std::locale::classic()); + + std::string msg = std::system_category().message(EBADF); + VERIFY( msg.find("file") != std::string::npos ); + + std::locale::global(loc); +} + +int +main() +{ + test01(); + test02(); + test03(); +} Index: libstdc++-v3/testsuite/19_diagnostics/error_category/generic_category.cc =================================================================== --- libstdc++-v3/testsuite/19_diagnostics/error_category/generic_category.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/19_diagnostics/error_category/generic_category.cc (.../branches/gcc-8-branch) @@ -0,0 +1,69 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-do run { target c++11 } } + +#include +#include +#include + +void +test01() +{ + const char* name = std::generic_category().name(); + VERIFY( name == std::string("generic") ); +} + +void +test02() +{ + const std::error_category& cat = std::generic_category(); + std::error_condition cond; + + cond = cat.default_error_condition(EBADF); + VERIFY( cond.value() == EBADF ); + VERIFY( cond == std::errc::bad_file_descriptor ); + VERIFY( cond.category() == std::generic_category() ); + cond = cat.default_error_condition(EACCES); + VERIFY( cond.value() == EACCES ); + VERIFY( cond == std::errc::permission_denied ); + VERIFY( cond.category() == std::generic_category() ); + + // PR libstdc++/60555 + VERIFY( std::error_code(EBADF, cat) == std::errc::bad_file_descriptor ); + VERIFY( std::error_code(EACCES, cat) == std::errc::permission_denied ); +} + +void +test03() +{ + // set "C" locale to get expected message + auto loc = std::locale::global(std::locale::classic()); + + std::string msg = std::generic_category().message(EBADF); + VERIFY( msg.find("file") != std::string::npos ); + + std::locale::global(loc); +} + +int +main() +{ + test01(); + test02(); + test03(); +} Index: libstdc++-v3/testsuite/experimental/functional/87538.cc =================================================================== --- libstdc++-v3/testsuite/experimental/functional/87538.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/experimental/functional/87538.cc (.../branches/gcc-8-branch) @@ -0,0 +1,48 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-do run { target c++14 } } + +#include +#include + +struct N { + int operator()(int i) { if (i == 0) throw -1; return i; } +}; + +void +test01() +{ + N n; + auto not_n = std::experimental::not_fn(n); + static_assert( !noexcept(not_n(1)), "can throw" ); + VERIFY(not_n(1) == 0); + int exception = 0; + try { + not_n(0); + } + catch (int e) { + exception = e; + } + VERIFY(exception == -1); +} + +int +main() +{ + test01(); +} Index: libstdc++-v3/testsuite/20_util/shared_ptr/creation/87278.cc =================================================================== --- libstdc++-v3/testsuite/20_util/shared_ptr/creation/87278.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/20_util/shared_ptr/creation/87278.cc (.../branches/gcc-8-branch) @@ -0,0 +1,26 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-do compile { target c++11 } } + +#include + +void +test01() +{ + std::make_shared(); +} Index: libstdc++-v3/testsuite/20_util/function_objects/not_fn/87538.cc =================================================================== --- libstdc++-v3/testsuite/20_util/function_objects/not_fn/87538.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/20_util/function_objects/not_fn/87538.cc (.../branches/gcc-8-branch) @@ -0,0 +1,49 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-options "-std=gnu++17" } +// { dg-do run { target c++17 } } + +#include +#include + +struct N { + int operator()(int i) { if (i == 0) throw -1; return i; } +}; + +void +test01() +{ + N n; + auto not_n = std::not_fn(n); + static_assert( !noexcept(not_n(1)) ); + VERIFY(not_n(1) == 0); + int exception = 0; + try { + not_n(0); + } + catch (int e) { + exception = e; + } + VERIFY(exception == -1); +} + +int +main() +{ + test01(); +} Index: libstdc++-v3/testsuite/20_util/variant/86874.cc =================================================================== --- libstdc++-v3/testsuite/20_util/variant/86874.cc (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ libstdc++-v3/testsuite/20_util/variant/86874.cc (.../branches/gcc-8-branch) @@ -0,0 +1,55 @@ +// Copyright (C) 2018 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License along +// with this library; see the file COPYING3. If not see +// . + +// { dg-options "-std=gnu++17" } +// { dg-do run { target c++17 } } + +#include +#include + +void +test01() +{ + std::variant v1, v2; + std::swap(v1, v2); +} + +void +test02() +{ + std::variant v1{1}, v2{2}; + std::swap(v1, v2); + VERIFY( std::get<0>(v1) == 2 ); + VERIFY( std::get<0>(v2) == 1 ); +} + +void +test03() +{ + std::variant v1{1}, v2{2.3}; + std::swap(v1, v2); + VERIFY( std::get(v1) == 2.3 ); + VERIFY( std::get(v2) == 1 ); +} + +int +main() +{ + test01(); + test02(); + test03(); +} Index: libstdc++-v3/config.h.in =================================================================== --- libstdc++-v3/config.h.in (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/config.h.in (.../branches/gcc-8-branch) @@ -918,9 +918,6 @@ /* Define if fchmodat is available in . */ #undef _GLIBCXX_USE_FCHMODAT -/* Define if __float128 is supported on this host. */ -#undef _GLIBCXX_USE_FLOAT128 - /* Defined if gettimeofday is available. */ #undef _GLIBCXX_USE_GETTIMEOFDAY Index: libstdc++-v3/acinclude.m4 =================================================================== --- libstdc++-v3/acinclude.m4 (.../tags/gcc_8_2_0_release) +++ libstdc++-v3/acinclude.m4 (.../branches/gcc-8-branch) @@ -3062,7 +3062,7 @@ dnl dnl Defines: dnl _GLIBCXX_USE_INT128 -dnl _GLIBCXX_USE_FLOAT128 +dnl ENABLE_FLOAT128 dnl AC_DEFUN([GLIBCXX_ENABLE_INT128_FLOAT128], [ @@ -3117,13 +3117,12 @@ AC_MSG_CHECKING([for __float128]) if AC_TRY_EVAL(ac_compile); then - AC_DEFINE(_GLIBCXX_USE_FLOAT128, 1, - [Define if __float128 is supported on this host.]) enable_float128=yes else enable_float128=no fi AC_MSG_RESULT($enable_float128) + GLIBCXX_CONDITIONAL(ENABLE_FLOAT128, test $enable_float128 = yes) rm -f conftest* AC_LANG_RESTORE Index: libgcc/ChangeLog =================================================================== --- libgcc/ChangeLog (.../tags/gcc_8_2_0_release) +++ libgcc/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,26 @@ +2018-10-03 H.J. Lu + + Backport from mainline + 2018-07-27 H.J. Lu + + PR libgcc/85334 + * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Increment): + +2018-08-17 John David Anglin + + Backport from mainline + 2018-08-11 John David Anglin + + * config/pa/linux-atomic.c: Update comment. + (FETCH_AND_OP_2, OP_AND_FETCH_2, FETCH_AND_OP_WORD, OP_AND_FETCH_WORD, + COMPARE_AND_SWAP_2, __sync_val_compare_and_swap_4, + SYNC_LOCK_TEST_AND_SET_2, __sync_lock_test_and_set_4): Use + __ATOMIC_RELAXED for atomic loads. + (SYNC_LOCK_RELEASE_1): New define. Use __sync_synchronize() and + unordered store to release lock. + (__sync_lock_release_8): Likewise. + (SYNC_LOCK_RELEASE_2): Remove define. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: libgcc/config/i386/shadow-stack-unwind.h =================================================================== --- libgcc/config/i386/shadow-stack-unwind.h (.../tags/gcc_8_2_0_release) +++ libgcc/config/i386/shadow-stack-unwind.h (.../branches/gcc-8-branch) @@ -49,8 +49,3 @@ } \ } \ while (0) - -/* Increment frame count. Skip signal frames. */ -#undef _Unwind_Frames_Increment -#define _Unwind_Frames_Increment(context, frames) \ - if (!_Unwind_IsSignalFrame (context)) frames++ Index: libgcc/config/pa/linux-atomic.c =================================================================== --- libgcc/config/pa/linux-atomic.c (.../tags/gcc_8_2_0_release) +++ libgcc/config/pa/linux-atomic.c (.../branches/gcc-8-branch) @@ -28,15 +28,10 @@ #define EBUSY 16 #define ENOSYS 251 -/* All PA-RISC implementations supported by linux have strongly - ordered loads and stores. Only cache flushes and purges can be - delayed. The data cache implementations are all globally - coherent. Thus, there is no need to synchonize memory accesses. +/* PA-RISC 2.0 supports out-of-order execution for loads and stores. + Thus, we need to synchonize memory accesses. For more info, see: + "Advanced Performance Features of the 64-bit PA-8000" by Doug Hunt. - GCC automatically issues a asm memory barrier when it encounters - a __sync_synchronize builtin. Thus, we do not need to define this - builtin. - We implement byte, short and int versions of each atomic operation using the kernel helper defined below. There is no support for 64-bit operations yet. */ @@ -119,7 +114,7 @@ long failure; \ \ do { \ - tmp = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + tmp = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ newval = PFX_OP (tmp INF_OP val); \ failure = __kernel_cmpxchg2 (ptr, &tmp, &newval, INDEX); \ } while (failure != 0); \ @@ -156,7 +151,7 @@ long failure; \ \ do { \ - tmp = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + tmp = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ newval = PFX_OP (tmp INF_OP val); \ failure = __kernel_cmpxchg2 (ptr, &tmp, &newval, INDEX); \ } while (failure != 0); \ @@ -193,7 +188,7 @@ long failure; \ \ do { \ - tmp = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + tmp = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ failure = __kernel_cmpxchg (ptr, tmp, PFX_OP (tmp INF_OP val)); \ } while (failure != 0); \ \ @@ -215,7 +210,7 @@ long failure; \ \ do { \ - tmp = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + tmp = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ failure = __kernel_cmpxchg (ptr, tmp, PFX_OP (tmp INF_OP val)); \ } while (failure != 0); \ \ @@ -241,7 +236,7 @@ \ while (1) \ { \ - actual_oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + actual_oldval = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ \ if (__builtin_expect (oldval != actual_oldval, 0)) \ return actual_oldval; \ @@ -273,7 +268,7 @@ while (1) { - actual_oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); + actual_oldval = __atomic_load_n (ptr, __ATOMIC_RELAXED); if (__builtin_expect (oldval != actual_oldval, 0)) return actual_oldval; @@ -300,7 +295,7 @@ long failure; \ \ do { \ - oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ + oldval = __atomic_load_n (ptr, __ATOMIC_RELAXED); \ failure = __kernel_cmpxchg2 (ptr, &oldval, &val, INDEX); \ } while (failure != 0); \ \ @@ -318,7 +313,7 @@ int oldval; do { - oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); + oldval = __atomic_load_n (ptr, __ATOMIC_RELAXED); failure = __kernel_cmpxchg (ptr, oldval, val); } while (failure != 0); @@ -325,31 +320,24 @@ return oldval; } -#define SYNC_LOCK_RELEASE_2(TYPE, WIDTH, INDEX) \ +void HIDDEN +__sync_lock_release_8 (long long *ptr) +{ + /* All accesses must be complete before we release the lock. */ + __sync_synchronize (); + *(double *)ptr = 0; +} + +#define SYNC_LOCK_RELEASE_1(TYPE, WIDTH) \ void HIDDEN \ __sync_lock_release_##WIDTH (TYPE *ptr) \ { \ - TYPE oldval, zero = 0; \ - long failure; \ - \ - do { \ - oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); \ - failure = __kernel_cmpxchg2 (ptr, &oldval, &zero, INDEX); \ - } while (failure != 0); \ + /* All accesses must be complete before we release \ + the lock. */ \ + __sync_synchronize (); \ + *ptr = 0; \ } -SYNC_LOCK_RELEASE_2 (long long, 8, 3) -SYNC_LOCK_RELEASE_2 (short, 2, 1) -SYNC_LOCK_RELEASE_2 (signed char, 1, 0) - -void HIDDEN -__sync_lock_release_4 (int *ptr) -{ - long failure; - int oldval; - - do { - oldval = __atomic_load_n (ptr, __ATOMIC_SEQ_CST); - failure = __kernel_cmpxchg (ptr, oldval, 0); - } while (failure != 0); -} +SYNC_LOCK_RELEASE_1 (int, 4) +SYNC_LOCK_RELEASE_1 (short, 2) +SYNC_LOCK_RELEASE_1 (signed char, 1) Index: gcc/doc/invoke.texi =================================================================== --- gcc/doc/invoke.texi (.../tags/gcc_8_2_0_release) +++ gcc/doc/invoke.texi (.../branches/gcc-8-branch) @@ -260,7 +260,7 @@ @xref{Warning Options,,Options to Request or Suppress Warnings}. @gccoptlist{-fsyntax-only -fmax-errors=@var{n} -Wpedantic @gol -pedantic-errors @gol --w -Wextra -Wall -Waddress -Waggregate-return @gol +-w -Wextra -Wall -Waddress -Waggregate-return -Waligned-new @gol -Walloc-zero -Walloc-size-larger-than=@var{n} -Walloca -Walloca-larger-than=@var{n} @gol -Wno-aggressive-loop-optimizations -Warray-bounds -Warray-bounds=@var{n} @gol @@ -12418,9 +12418,9 @@ across different shared libraries. In that case, each of the libraries as well as the application itself should use the shared @file{libgcc}. -Therefore, the G++ and driver automatically adds @option{-shared-libgcc} - whenever you build a shared library or a main executable, because C++ - programs typically use exceptions, so this is the right thing to do. +Therefore, the G++ driver automatically adds @option{-shared-libgcc} +whenever you build a shared library or a main executable, because C++ +programs typically use exceptions, so this is the right thing to do. If, instead, you use the GCC driver to create shared libraries, you may find that they are not always linked with the shared @file{libgcc}. @@ -12434,8 +12434,7 @@ costs at library load time. However, if a library or main executable is supposed to throw or catch -exceptions, you must link it using the G++ driver, as appropriate -for the languages used in the program, or using the option +exceptions, you must link it using the G++ driver, or using the option @option{-shared-libgcc}, such that it is linked with the shared @file{libgcc}. Index: gcc/tree-ssa-tail-merge.c =================================================================== --- gcc/tree-ssa-tail-merge.c (.../tags/gcc_8_2_0_release) +++ gcc/tree-ssa-tail-merge.c (.../branches/gcc-8-branch) @@ -286,6 +286,21 @@ #define BB_VOP_AT_EXIT(bb) (((struct aux_bb_info *)bb->aux)->vop_at_exit) #define BB_DEP_BB(bb) (((struct aux_bb_info *)bb->aux)->dep_bb) +/* Valueization helper querying the VN lattice. */ + +static tree +tail_merge_valueize (tree name) +{ + if (TREE_CODE (name) == SSA_NAME + && has_VN_INFO (name)) + { + tree tem = VN_INFO (name)->valnum; + if (tem != VN_TOP) + return tem; + } + return name; +} + /* Returns true if the only effect a statement STMT has, is to define locally used SSA_NAMEs. */ @@ -301,7 +316,15 @@ if (gimple_vdef (stmt) != NULL_TREE || gimple_has_side_effects (stmt) || gimple_could_trap_p_1 (stmt, false, false) - || gimple_vuse (stmt) != NULL_TREE) + || gimple_vuse (stmt) != NULL_TREE + /* Copied from tree-ssa-ifcombine.c:bb_no_side_effects_p(): + const calls don't match any of the above, yet they could + still have some side-effects - they could contain + gimple_could_trap_p statements, like floating point + exceptions or integer division by zero. See PR70586. + FIXME: perhaps gimple_has_side_effects or gimple_could_trap_p + should handle this. */ + || is_gimple_call (stmt)) return false; def_p = SINGLE_SSA_DEF_OPERAND (stmt, SSA_OP_DEF); @@ -363,7 +386,7 @@ if (val1 == val2) return true; - if (vn_valueize (val1) != vn_valueize (val2)) + if (tail_merge_valueize (val1) != tail_merge_valueize (val2)) return false; return ((TREE_CODE (val1) == SSA_NAME || CONSTANT_CLASS_P (val1)) @@ -473,7 +496,7 @@ for (i = 0; i < gimple_call_num_args (stmt); i++) { arg = gimple_call_arg (stmt, i); - arg = vn_valueize (arg); + arg = tail_merge_valueize (arg); inchash::add_expr (arg, hstate); } } @@ -1139,7 +1162,7 @@ if (lhs1 == NULL_TREE || lhs2 == NULL_TREE) return false; if (TREE_CODE (lhs1) == SSA_NAME && TREE_CODE (lhs2) == SSA_NAME) - return vn_valueize (lhs1) == vn_valueize (lhs2); + return tail_merge_valueize (lhs1) == tail_merge_valueize (lhs2); return operand_equal_p (lhs1, lhs2, 0); case GIMPLE_ASSIGN: Index: gcc/c-family/c.opt =================================================================== --- gcc/c-family/c.opt (.../tags/gcc_8_2_0_release) +++ gcc/c-family/c.opt (.../branches/gcc-8-branch) @@ -1339,8 +1339,8 @@ static-libmpxwrappers Driver -fcilkplus Undocumented -C ObjC C++ ObjC++ LTO Report Var(flag_cilkplus) Init(0) +fcilkplus +C ObjC C++ ObjC++ LTO Report Var(flag_cilkplus) Init(0) Undocumented Deprecated in GCC 8. This switch has no effect. fconcepts Index: gcc/c-family/ChangeLog =================================================================== --- gcc/c-family/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/c-family/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,8 @@ +2018-08-17 Martin Liska + + PR other/86992 + * c.opt: Fix declaration of cilkplus. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/c/ChangeLog =================================================================== --- gcc/c/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/c/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,10 @@ +2018-08-01 Jakub Jelinek + + PR c/85704 + * c-typeck.c (init_field_decl_cmp): New function. + (output_pending_init_elements): Use it for field comparisons + instead of pure bit_position comparisons. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/c/c-typeck.c =================================================================== --- gcc/c/c-typeck.c (.../tags/gcc_8_2_0_release) +++ gcc/c/c-typeck.c (.../branches/gcc-8-branch) @@ -9316,6 +9316,65 @@ output_pending_init_elements (0, braced_init_obstack); } +/* For two FIELD_DECLs in the same chain, return -1 if field1 + comes before field2, 1 if field1 comes after field2 and + 0 if field1 == field2. */ + +static int +init_field_decl_cmp (tree field1, tree field2) +{ + if (field1 == field2) + return 0; + + tree bitpos1 = bit_position (field1); + tree bitpos2 = bit_position (field2); + if (tree_int_cst_equal (bitpos1, bitpos2)) + { + /* If one of the fields has non-zero bitsize, then that + field must be the last one in a sequence of zero + sized fields, fields after it will have bigger + bit_position. */ + if (TREE_TYPE (field1) != error_mark_node + && COMPLETE_TYPE_P (TREE_TYPE (field1)) + && integer_nonzerop (TREE_TYPE (field1))) + return 1; + if (TREE_TYPE (field2) != error_mark_node + && COMPLETE_TYPE_P (TREE_TYPE (field2)) + && integer_nonzerop (TREE_TYPE (field2))) + return -1; + /* Otherwise, fallback to DECL_CHAIN walk to find out + which field comes earlier. Walk chains of both + fields, so that if field1 and field2 are close to each + other in either order, it is found soon even for large + sequences of zero sized fields. */ + tree f1 = field1, f2 = field2; + while (1) + { + f1 = DECL_CHAIN (f1); + f2 = DECL_CHAIN (f2); + if (f1 == NULL_TREE) + { + gcc_assert (f2); + return 1; + } + if (f2 == NULL_TREE) + return -1; + if (f1 == field2) + return -1; + if (f2 == field1) + return 1; + if (!tree_int_cst_equal (bit_position (f1), bitpos1)) + return 1; + if (!tree_int_cst_equal (bit_position (f2), bitpos1)) + return -1; + } + } + else if (tree_int_cst_lt (bitpos1, bitpos2)) + return -1; + else + return 1; +} + /* Output any pending elements which have become next. As we output elements, constructor_unfilled_{fields,index} advances, which may cause other elements to become next; @@ -9387,26 +9446,19 @@ } else if (RECORD_OR_UNION_TYPE_P (constructor_type)) { - tree ctor_unfilled_bitpos, elt_bitpos; - /* If the current record is complete we are done. */ if (constructor_unfilled_fields == NULL_TREE) break; - ctor_unfilled_bitpos = bit_position (constructor_unfilled_fields); - elt_bitpos = bit_position (elt->purpose); - /* We can't compare fields here because there might be empty - fields in between. */ - if (tree_int_cst_equal (elt_bitpos, ctor_unfilled_bitpos)) + int cmp = init_field_decl_cmp (constructor_unfilled_fields, + elt->purpose); + if (cmp == 0) + output_init_element (input_location, elt->value, elt->origtype, + true, TREE_TYPE (elt->purpose), + elt->purpose, false, false, + braced_init_obstack); + else if (cmp < 0) { - constructor_unfilled_fields = elt->purpose; - output_init_element (input_location, elt->value, elt->origtype, - true, TREE_TYPE (elt->purpose), - elt->purpose, false, false, - braced_init_obstack); - } - else if (tree_int_cst_lt (ctor_unfilled_bitpos, elt_bitpos)) - { /* Advance to the next smaller node. */ if (elt->left) elt = elt->left; @@ -9431,8 +9483,8 @@ elt = elt->parent; elt = elt->parent; if (elt - && (tree_int_cst_lt (ctor_unfilled_bitpos, - bit_position (elt->purpose)))) + && init_field_decl_cmp (constructor_unfilled_fields, + elt->purpose) < 0) { next = elt->purpose; break; Index: gcc/DATESTAMP =================================================================== --- gcc/DATESTAMP (.../tags/gcc_8_2_0_release) +++ gcc/DATESTAMP (.../branches/gcc-8-branch) @@ -1 +1 @@ -20180726 +20181009 Index: gcc/defaults.h =================================================================== --- gcc/defaults.h (.../tags/gcc_8_2_0_release) +++ gcc/defaults.h (.../branches/gcc-8-branch) @@ -1282,6 +1282,10 @@ #define TARGET_PECOFF 0 #endif +#ifndef TARGET_COFF +#define TARGET_COFF 0 +#endif + #ifndef EH_RETURN_HANDLER_RTX #define EH_RETURN_HANDLER_RTX NULL #endif Index: gcc/tree-ssa-strlen.c =================================================================== --- gcc/tree-ssa-strlen.c (.../tags/gcc_8_2_0_release) +++ gcc/tree-ssa-strlen.c (.../branches/gcc-8-branch) @@ -1182,6 +1182,7 @@ suggests if it's treated as a poor-man's flexible array member. */ src = TREE_OPERAND (src, 0); if (TREE_CODE (TREE_TYPE (src)) != ARRAY_TYPE + || TREE_CODE (src) == MEM_REF || array_at_struct_end_p (src)) return; Index: gcc/tree.c =================================================================== --- gcc/tree.c (.../tags/gcc_8_2_0_release) +++ gcc/tree.c (.../branches/gcc-8-branch) @@ -9784,8 +9784,7 @@ TYPE_SIZE (int_n_trees[i].signed_type) = bitsize_int (int_n_data[i].bitsize); TYPE_SIZE (int_n_trees[i].unsigned_type) = bitsize_int (int_n_data[i].bitsize); - if (int_n_data[i].bitsize > LONG_LONG_TYPE_SIZE - && int_n_enabled_p[i]) + if (int_n_enabled_p[i]) { integer_types[itk_intN_0 + i * 2] = int_n_trees[i].signed_type; integer_types[itk_unsigned_intN_0 + i * 2] = int_n_trees[i].unsigned_type; Index: gcc/tree.h =================================================================== --- gcc/tree.h (.../tags/gcc_8_2_0_release) +++ gcc/tree.h (.../branches/gcc-8-branch) @@ -3061,6 +3061,10 @@ #define DECL_CXX_DESTRUCTOR_P(NODE)\ (FUNCTION_DECL_CHECK (NODE)->decl_with_vis.cxx_destructor) +/* In FUNCTION_DECL, this is set if this function is a lambda function. */ +#define DECL_LAMBDA_FUNCTION(NODE) \ + (FUNCTION_DECL_CHECK (NODE)->function_decl.lambda_function) + /* In FUNCTION_DECL that represent an virtual method this is set when the method is final. */ #define DECL_FINAL_P(NODE)\ Index: gcc/rtlanal.c =================================================================== --- gcc/rtlanal.c (.../tags/gcc_8_2_0_release) +++ gcc/rtlanal.c (.../branches/gcc-8-branch) @@ -1802,6 +1802,7 @@ recurse: switch (GET_CODE (x)) { + case CLOBBER: case STRICT_LOW_PART: case ZERO_EXTRACT: case SIGN_EXTRACT: Index: gcc/fold-const.c =================================================================== --- gcc/fold-const.c (.../tags/gcc_8_2_0_release) +++ gcc/fold-const.c (.../branches/gcc-8-branch) @@ -4922,8 +4922,8 @@ /* Disable this optimization for function pointer expressions on targets that require function pointer canonicalization. */ if (targetm.have_canonicalize_funcptr_for_compare () - && TREE_CODE (etype) == POINTER_TYPE - && TREE_CODE (TREE_TYPE (etype)) == FUNCTION_TYPE) + && POINTER_TYPE_P (etype) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (etype))) return NULL_TREE; if (! in_p) @@ -11565,10 +11565,16 @@ && integer_pow2p (arg1) && TREE_CODE (TREE_OPERAND (arg0, 0)) == BIT_AND_EXPR && operand_equal_p (TREE_OPERAND (TREE_OPERAND (arg0, 0), 1), - arg1, OEP_ONLY_CONST)) + arg1, OEP_ONLY_CONST) + /* operand_equal_p compares just value, not precision, so e.g. + arg1 could be 8-bit -128 and be power of two, but BIT_AND_EXPR + second operand 32-bit -128, which is not a power of two (or vice + versa. */ + && integer_pow2p (TREE_OPERAND (TREE_OPERAND (arg0, 0), 1))) return pedantic_non_lvalue_loc (loc, - fold_convert_loc (loc, type, - TREE_OPERAND (arg0, 0))); + fold_convert_loc (loc, type, + TREE_OPERAND (arg0, + 0))); /* Disable the transformations below for vectors, since fold_binary_op_with_conditional_arg may undo them immediately, Index: gcc/omp-low.c =================================================================== --- gcc/omp-low.c (.../tags/gcc_8_2_0_release) +++ gcc/omp-low.c (.../branches/gcc-8-branch) @@ -1190,7 +1190,7 @@ /* Global variables with "omp declare target" attribute don't need to be copied, the receiver side will use them directly. However, global variables with "omp declare target link" - attribute need to be copied. */ + attribute need to be copied. Or when ALWAYS modifier is used. */ if (OMP_CLAUSE_CODE (c) == OMP_CLAUSE_MAP && DECL_P (decl) && ((OMP_CLAUSE_MAP_KIND (c) != GOMP_MAP_FIRSTPRIVATE_POINTER @@ -1197,6 +1197,9 @@ && (OMP_CLAUSE_MAP_KIND (c) != GOMP_MAP_FIRSTPRIVATE_REFERENCE)) || TREE_CODE (TREE_TYPE (decl)) == ARRAY_TYPE) + && OMP_CLAUSE_MAP_KIND (c) != GOMP_MAP_ALWAYS_TO + && OMP_CLAUSE_MAP_KIND (c) != GOMP_MAP_ALWAYS_FROM + && OMP_CLAUSE_MAP_KIND (c) != GOMP_MAP_ALWAYS_TOFROM && is_global_var (maybe_lookup_decl_in_outer_ctx (decl, ctx)) && varpool_node::get_create (decl)->offloadable && !lookup_attribute ("omp declare target link", @@ -7099,6 +7102,7 @@ splay_tree_node n; struct omp_taskcopy_context tcctx; location_t loc = gimple_location (task_stmt); + size_t looptempno = 0; child_fn = gimple_omp_task_copy_fn (task_stmt); child_cfun = DECL_STRUCT_FUNCTION (child_fn); @@ -7212,6 +7216,15 @@ t = build2 (MODIFY_EXPR, TREE_TYPE (dst), dst, src); append_to_statement_list (t, &list); break; + case OMP_CLAUSE__LOOPTEMP_: + /* Fields for first two _looptemp_ clauses are initialized by + GOMP_taskloop*, the rest are handled like firstprivate. */ + if (looptempno < 2) + { + looptempno++; + break; + } + /* FALLTHRU */ case OMP_CLAUSE_FIRSTPRIVATE: decl = OMP_CLAUSE_DECL (c); if (is_variable_sized (decl)) @@ -7237,7 +7250,10 @@ src = decl; dst = build_simple_mem_ref_loc (loc, arg); dst = omp_build_component_ref (dst, f); - t = lang_hooks.decls.omp_clause_copy_ctor (c, dst, src); + if (OMP_CLAUSE_CODE (c) == OMP_CLAUSE__LOOPTEMP_) + t = build2 (MODIFY_EXPR, TREE_TYPE (dst), dst, src); + else + t = lang_hooks.decls.omp_clause_copy_ctor (c, dst, src); append_to_statement_list (t, &list); break; case OMP_CLAUSE_PRIVATE: Index: gcc/gcov.c =================================================================== --- gcc/gcov.c (.../tags/gcc_8_2_0_release) +++ gcc/gcov.c (.../branches/gcc-8-branch) @@ -536,6 +536,7 @@ static void print_usage (int) ATTRIBUTE_NORETURN; static void print_version (void) ATTRIBUTE_NORETURN; static void process_file (const char *); +static void process_all_functions (void); static void generate_results (const char *); static void create_file_names (const char *); static char *canonicalize_name (const char *); @@ -791,6 +792,7 @@ if (flag_intermediate_format || argno == argc - 1) { + process_all_functions (); generate_results (argv[argno]); release_structures (); } @@ -1066,7 +1068,8 @@ } /* Follow with lines associated with the source file. */ - output_intermediate_line (gcov_file, &src->lines[line_num], line_num); + if (line_num < src->lines.size ()) + output_intermediate_line (gcov_file, &src->lines[line_num], line_num); } } @@ -1132,11 +1135,14 @@ { create_file_names (file_name); read_graph_file (); - if (functions.empty ()) - return; - read_count_file (); +} +/* Process all functions in all files. */ + +static void +process_all_functions (void) +{ hash_map fn_map; /* Identify group functions. */ @@ -1213,7 +1219,6 @@ if (fn->is_group) fn->lines.resize (fn->end_line - fn->start_line + 1); - solve_flow_graph (fn); if (fn->has_catch) find_exception_blocks (fn); Index: gcc/pretty-print.c =================================================================== --- gcc/pretty-print.c (.../tags/gcc_8_2_0_release) +++ gcc/pretty-print.c (.../branches/gcc-8-branch) @@ -640,6 +640,16 @@ { attrib_add |= sb.wAttributes & ~attrib_rm; } + if (attrib_add & COMMON_LVB_REVERSE_VIDEO) + { + /* COMMON_LVB_REVERSE_VIDEO is only effective for DBCS. + * Swap foreground and background colors by hand. + */ + attrib_add = (attrib_add & 0xFF00) + | ((attrib_add & 0x00F0) >> 4) + | ((attrib_add & 0x000F) << 4); + attrib_add &= ~COMMON_LVB_REVERSE_VIDEO; + } SetConsoleTextAttribute (h, attrib_add); break; } @@ -684,7 +694,6 @@ /* If it is not a console, write everything as-is. */ write_all (h, read, strlen (read)); - _close ((intptr_t) h); return 1; } Index: gcc/ChangeLog =================================================================== --- gcc/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,552 @@ +2018-10-09 H.J. Lu + + Backport from mainline + 2018-09-29 H.J. Lu + + PR target/87370 + * config/i386/i386.c (construct_container): Use TImode for + BLKmode values in 2 integer registers. + +2018-10-08 H.J. Lu + + Backport from mainline + 2018-10-08 H.J. Lu + + PR target/87517 + * config/i386/avx512fintrin.h (_mm512_mask_fmaddsub_round_pd): + Defined with __builtin_ia32_vfmaddsubpd512_mask. + +2018-10-05 H.J. Lu + + Backport from mainline + 2018-10-05 H.J. Lu + + PR target/87522 + * config/i386/gnu-user.h (ASM_SPEC): Don't pass -msse2avx to + assembler for -mavx. + * config/i386/gnu-user64.h (ASM_SPEC): Likewise. + +2018-10-03 Uros Bizjak + + Backport from mainline + 2018-09-28 Uros Bizjak + + * config/i386/i386.h (SSE_REGNO): Fix check for FIRST_REX_SSE_REG. + (GET_SSE_REGNO): Rename from SSE_REGNO. Update all uses for rename. + +2018-10-03 Jonathan Wakely + + PR other/87353 + * doc/invoke.texi (Link Options): Fix formatting and grammar. + +2018-10-03 Martin Liska + + Backport from mainline + 2018-10-03 Martin Liska + + PR gcov-profile/86109 + * coverage.c (coverage_begin_function): Do not + mark lambdas as artificial. + * tree-core.h (struct GTY): Remove tm_clone_flag + and introduce new lambda_function. + * tree.h (DECL_LAMBDA_FUNCTION): New macro. + +2018-10-02 H.J. Lu + + Backport from mainline + 2018-09-24 H.J. Lu + + PR target/82699 + * config/i386/i386.c (rest_of_insert_endbranch): Set + endbr_queued_at_entrance to true and don't insert ENDBR if + x86_function_profiler will be called. + (x86_function_profiler): Insert ENDBR if endbr_queued_at_entrance + is true. + * config/i386/i386.h (machine_function): Add + endbr_queued_at_entrance. + +2018-10-01 Kyrylo Tkachov + + Backport from mainline + 2018-06-29 Kyrylo Tkachov + + * config/arm/arm.c (output_move_double): Don't allow STRD instructions + if starting source register is not even. + +2018-09-29 Jakub Jelinek + + PR target/87467 + * config/i386/avx512fintrin.h (_mm512_abs_pd, _mm512_mask_abs_pd): Use + __m512d type for __A argument rather than __m512. + +2018-09-27 Michael Meissner + + Backport from mainline + 2018-08-20 Michael Meissner + + PR target/87033 + * config/rs6000/rs6000.md (extendsi2): Change constraints + from 'Y' to 'YZ' to enable the LWAX instruction to be generated + for indexed loads. + +2018-09-25 Martin Liska + + Backport from mainline + 2018-09-24 Martin Liska + + PR sanitizer/85774 + * asan.c: Make asan_handled_variables extern. + * asan.h: Likewise. + * cfgexpand.c (expand_stack_vars): Make sure + a representative is unpoison if another + variable in the partition is handled by + use-after-scope sanitization. + +2018-09-24 Andrew Pinski + + * config/aarch64/aarch64.c (aarch_macro_fusion_pair_p): Don't + access prev before checking it for NULLness in the + AARCH64_FUSE_CMP_BRANCH case. + +2018-09-21 Eric Botcazou + + * config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Return false + if the call takes a static chain. + +2018-09-19 John David Anglin + + * config/pa/pa.md (atomic_storeqi): Restore deleted expander. + (atomic_storehi): Likewise. + (atomic_storesi): Likewise. + (atomic_loaddi): Restore compare and swap exchange loop code. + +2018-09-18 Segher Boessenkool + + Backport from trunk + 2018-09-18 Segher Boessenkool + + PR rtl-optimization/86882 + * rtlanal.c (reg_overlap_mentioned_p): Handle CLOBBER. + +2018-09-18 Martin Liska + + Backport from mainline + 2018-09-17 Martin Liska + + PR gcov-profile/85871 + * gcov.c (output_intermediate_file): Fix out of bounds + access. + +2018-09-16 Hans-Peter Nilsson + + PR target/85666 + * config/mmix/mmix.c (mmix_assemble_integer): Handle byte-size + non-CONST_INT rtx:es using assemble_integer_with_op ".byte". + (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS): Don't call + leaf_function_p, instead use has_hard_reg_initial_val. + +2018-09-14 John David Anglin + + PR middle-end/87188 + * dojump.c (do_compare_and_jump): Canonicalize function pointers + when one operand is a function pointer. Use POINTER_TYPE_P and + FUNC_OR_METHOD_TYPE_P. + * expr.c (do_store_flag): Use POINTER_TYPE_P and FUNC_OR_METHOD_TYPE_P. + * fold-const.c (build_range_check): Likewise. + * match.pd (simple_comparison): Likewise. + +2018-09-14 Segher Boessenkool + + Backport from trunk + 2018-09-14 Segher Boessenkool + + PR target/87224 + * config/rs6000/rs6000.md (*mov_hardfloat64): Add Z to the Y + alternatives. + +2018-09-14 Carl Love + + Backport from trunk + 2018-09-14 Carl Love + + * config/rs6000/emmintrin.h: Add _MM_SHUFFLE2. + * config/rs6000/xmmintrin.h: Add _MM_SHUFFLE. + +2018-09-12 Segher Boessenkool + + Backport from trunk + 2018-08-24 Segher Boessenkool + + PR target/86989 + * config/rs6000/rs6000.c (toc_relative_expr_p): Check that the base is + the TOC register. + +2018-09-12 Segher Boessenkool + + Backport from trunk + 2018-08-22 Segher Boessenkool + + PR rtl-optimization/86771 + * combine.c (try_combine): Do not allow splitting a resulting PARALLEL + of two SETs into those two SETs, one to be placed at i2, if that SETs + destination is modified between i2 and i3. + +2018-09-12 Andreas Krebbel + + Backport from mainline + 2018-09-12 Andreas Krebbel + + * config/s390/s390.md (PFPO_RND_MODE_DFP, PFPO_RND_MODE_BFP): New + constants. + ("trunc2") + ("trunc2") + ("extend2") + ("extend2"): Set proper rounding mode + according to the target operand type. + +2018-09-12 Jakub Jelinek + + PR middle-end/87248 + * fold-const.c (fold_ternary_loc) : Verify also that + BIT_AND_EXPR's second operand is a power of two. Formatting fix. + +2018-09-05 Nathan Sidwell + + PR c++/87137 + * stor-layout.c (place_field): Scan forwards to check last + bitfield when ms_bitfield_placement is in effect. + +2018-09-05 Richard Biener + + PR bootstrap/87225 + * tree-vect-stmts.c (vectorizable_simd_clone_call): Fix bogus + return. + +2018-09-05 Jakub Jelinek + + Backported from mainline + 2018-09-04 Jakub Jelinek + + PR target/87198 + * common/config/i386/i386-common.c (OPTION_MASK_ISA_XSAVEOPT_SET, + OPTION_MASK_ISA_XSAVES_SET, OPTION_MASK_ISA_XSAVEC_SET): Use + OPTION_MASK_ISA_XSAVE_SET instead of OPTION_MASK_ISA_XSAVE. + (OPTION_MASK_ISA_XSAVE_UNSET): Add OPTION_MASK_ISA_XSAVES_UNSET + and OPTION_MASK_ISA_XSAVEC_UNSET. + + 2018-08-31 Jakub Jelinek + + PR middle-end/87138 + * expmed.c (expand_mult_const): Use immed_wide_int_const instead of + gen_int_mode. Formatting fixes. + + 2018-08-11 Jakub Jelinek + + PR tree-optimization/86835 + * tree-ssa-math-opts.c (insert_reciprocals): Even when inserting + new_stmt after def_gsi, make sure to insert new_square_stmt after + that stmt, not 2 stmts before it. + +2018-09-04 Max Filippov + + Backport from mainline + 2018-09-04 Max Filippov + + * config/xtensa/xtensa.c (xtensa_expand_atomic): Reorder AND and + XOR operations in NAND case. + +2018-09-04 Jonathan Wakely + + * doc/invoke.texi (Option Summary): Add -Waligned-new. + +2018-09-03 Tom de Vries + + backport from trunk: + 2018-06-21 Tom de Vries + + PR tree-optimization/85859 + * tree-ssa-tail-merge.c (stmt_local_def): Copy gimple_is_call + test with comment from bb_no_side_effects_p. + +2018-09-01 Michael Matz + + Backport from mainline + PR tree-optimization/87074 + * gimple-loop-jam.c (unroll_jam_possible_p): Check loop exit + PHIs for outer-loop uses. + +2018-08-31 Richard Biener + + Backport from mainline + 2018-08-27 Richard Biener + + PR tree-optimization/86927 + * tree-vect-loop.c (vect_create_epilog_for_reduction): Properly + use const cond reduction code. + + 2018-08-23 Richard Biener + + PR middle-end/87024 + * tree-inline.c (copy_bb): Drop unused __builtin_va_arg_pack_len + calls. + + 2018-08-22 Richard Biener + + PR tree-optimization/86945 + * tree-cfg.c (generate_range_test): Use unsigned arithmetic. + + 2018-08-17 Richard Biener + + PR middle-end/86505 + * tree-inline.c (copy_bb): When inlining __builtin_va_arg_pack_len () + across a va-arg-pack using call adjust its return value accordingly. + + 2018-08-02 Richard Biener + + PR tree-optimization/86816 + * tree-ssa-tail-merge.c (tail_merge_valueize): New function + which checks for value availability before querying it. + (gvn_uses_equal): Use it. + (same_succ_hash): Likewise. + (gimple_equal_p): Likewise. + + 2018-07-17 Richard Biener + + PR lto/86456 + * dwarf2out.c (init_sections_and_labels): Always generate + a debug_line_str_section for early LTO debug. + (dwarf2out_finish): Reset debug_line_str_hash output early. + Bump counter for extra dwarf5 .debug_loc labels to not conflict + with fat LTO part. + (dwarf2out_early_finish): Output debug_line_str. + +2018-08-29 Luis Machado + + * config/aarch64/aarch64.c (qdf24xx_vector_cost): New static global. + (qdf24xx_tunings): Set vector cost structure to qdf24xx_vector_cost. + +2018-08-29 Luis Machado + + * config/aarch64/aarch64.c (qdf24xx_addrcost_table) + : Set to 3. + +2018-08-27 Martin Sebor + + PR tree-optimization/86914 + * tree-ssa-strlen.c (maybe_set_strlen_range): Avoid MEM_REF. + +2018-08-28 Jakub Jelinek + + PR middle-end/87099 + * calls.c (maybe_warn_nonstring_arg): Punt early if + warn_stringop_overflow is zero. Don't call get_range_strlen + on 3rd argument, keep iterating until lenrng[1] is INTEGER_CST. + Only use lenrng[1] if non-NULL and INTEGER_CST. Don't uselessly + increment lenrng[0]. + +2018-08-27 Jakub Jelinek + + PR rtl-optimization/87065 + * combine.c (simplify_if_then_else): Formatting fix. + (if_then_else_cond): Guard MULT optimization with SCALAR_INT_MODE_P + check. + (known_cond): Don't return const_true_rtx for vector modes. Use + CONST0_RTX instead of const0_rtx. Formatting fixes. + +2018-08-25 Jozef Lawrynowicz + + Backport from mainline + PR target/86662 + * gcc/tree.c (build_common_tree_nodes): Initialize integer_types array + with all enabled __intN types. + + * gcc/testsuite/gcc.target/msp430/pr86662.c: New test. + +2018-08-21 H.J. Lu + + Backport from mainline + 2018-08-20 H.J. Lu + + PR target/87014 + * config/i386/i386.md (eh_return): Always update EH return + address in word_mode. + +2018-08-17 John David Anglin + + Backport from mainline + 2018-08-11 John David Anglin + + * config/pa/pa.md (UNSPEC_MEMORY_BARRIER): New unspec enum. + Update comment for atomic instructions. + (atomic_storeqi, atomic_storehi, atomic_storesi, atomic_storesf, + atomic_loaddf, atomic_loaddf_1, atomic_storedf, atomic_storedf_1): + Remove. + (atomic_loaddi): Revise fence expansion to only emit fence prior to + load for __ATOMIC_SEQ_CST model. + (atomic_loaddi_1): Remove float register target. + (atomic_storedi): Handle CONST_INT values. + (atomic_storedi_1): Remove float register source. Add special case + for zero value. + (memory_barrier): New expander and insn. + +2018-08-16 Tamar Christina + + Backport from mainline + 2018-07-30 Segher Boessenkool + + PR target/86640 + * config/arm/arm.c (arm_block_set_aligned_vect): Use gen_int_mode + instead of GEN_INT. + +2018-08-16 Martin Liska + + Backport from mainline + 2018-08-02 Martin Liska + + PR gcov-profile/86817 + * gcov.c (process_all_functions): New function. + (main): Call it. + (process_file): Move functions processing to + process_all_functions. + +2018-08-14 Siddhesh Poyarekar + + Backport from mainline + 2018-08-03 Siddhesh Poyarekar + + * config/aarch64/falkor.md (falkor_am_1_vxvy_vxvy): Move + neon_dup_q to... + (falkor_am_1_gtov_gtov): ... a new insn reservation. + +2018-08-13 Liu Hao + + Backport from mainline + 2018-08-13 Liu Hao + + * pretty-print.c (eat_esc_sequence): Swap the foreground and + background colors if the COMMON_LVB_REVERSE_VIDEO flag is set, + and clear it thereafter, as it only works for DBCS. + +2018-08-13 Liu Hao + + Backport from mainline + 2018-08-13 Liu Hao + + * pretty-print.c (mingw_ansi_fputs): Do not call _close() on the + handle returned by _get_osf_handle(). + +2018-08-14 Richard Sandiford + + Backport from mainline + 2018-08-09 Richard Sandiford + + PR tree-optimization/86871 + * tree-vect-stmts.c (vect_transform_stmt): Use gimple_get_lhs + instead of gimple_assign_lhs. + +2018-08-07 H.J. Lu + + Backport from mainline + 2018-08-05 H.J. Lu + + PR target/86386 + * config/i386/i386.c (ix86_finalize_stack_frame_flags): Set + cfun->machine->max_used_stack_alignment if needed. + +2018-08-02 Jozef Lawrynowicz + + Backport from mainline + 2018-07-31 Jozef Lawrynowicz + + PR middle-end/86705 + * gcc/cfgexpand.c (set_parm_rtl): Use the alignment of Pmode when + MAX_SUPPORTED_STACK_ALIGNMENT would otherwise be exceeded by the + requested variable alignment. + (expand_one_ssa_partition): Likewise. + (expand_one_var): Likewise. + +2018-08-02 Andreas Schwab + + Backport from mainline + 2018-07-17 Andreas Schwab + + PR target/86820 + * config/m68k/m68k.md (umulsi3_highpart+1, const_umulsi3_highpart) + (smulsi3_highpart+1, const_smulsi3_highpart): Add CC_STATUS_INIT. + +2018-08-01 Richard Biener + + PR bootstrap/86724 + * graphite.h: Include isl/id.h and isl/space.h to allow build + with ISL 0.20. + +2018-08-01 Jan Willem Jagersma + + PR target/86651 + * dwarf2out.c (dwarf2out_early_finish): Do not generate assembly in LTO + mode for COFF targets. + * defaults.h (TARGET_COFF): Define. + * config/i386/djgpp.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END, + TARGET_COFF): Define. + (i386_djgpp_asm_lto_start, i386_djgpp_asm_lto_end): Declare. + * config/i386/djgpp.c (saved_debug_info_level): New static variable. + (i386_djgpp_asm_lto_start, i386_djgpp_asm_lto_end): New functions. + +2018-07-29 Bernd Edlinger + + Backport from mainline + 2018-07-23 Bernd Edlinger + + PR c/86617 + * genmatch.c (dt_operand::gen_match_op): Avoid folding volatile values. + +2018-07-29 John David Anglin + + * config/pa/pa.c (pa_output_addr_vec): Align address table. + * config/pa/pa.h (JUMP_TABLES_IN_TEXT_SECTION): Revise comment. + * config/pa/pa32-linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define. + +2018-07-26 Uros Bizjak + + Backport from mainline + 2018-07-16 Uros Bizjak + + PR target/86511 + * expmed.c (emit_store_flag): Do not emit setcc followed by a + conditional move when trapping comparison was split to a + non-trapping one (and vice versa). + +2018-07-26 Jakub Jelinek + + Backported from mainline + 2018-07-24 Jakub Jelinek + + PR middle-end/86627 + * expmed.c (expand_divmod): Punt if d == HOST_WIDE_INT_MIN + and size > HOST_BITS_PER_WIDE_INT. For size > HOST_BITS_PER_WIDE_INT + and abs_d == d, do the power of two handling if profitable. + + 2018-07-17 Jakub Jelinek + + PR middle-end/86542 + * omp-low.c (create_task_copyfn): Copy over also fields corresponding + to _looptemp_ clauses, other than the first two. + + PR middle-end/86539 + * gimplify.c (gimplify_omp_for): Ensure taskloop firstprivatized init + and cond temporaries don't have reference type if iterator has + pointer type. For init use &for_pre_body instead of pre_p if + for_pre_body is non-empty. + +2018-07-26 Jakub Jelinek + + PR middle-end/86660 + * omp-low.c (scan_sharing_clauses): Don't ignore map clauses for + declare target to variables if they have always,{to,from,tofrom} map + kinds. + + * BASE-VER: Set to 8.2.1. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/testsuite/gcc.target/powerpc/pr87033.c =================================================================== --- gcc/testsuite/gcc.target/powerpc/pr87033.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/powerpc/pr87033.c (.../branches/gcc-8-branch) @@ -0,0 +1,12 @@ +/* { dg-do compile { target { powerpc*-*-* && lp64 } } } */ +/* { dg-options "-O2" } */ + +/* Insure that a LWAX is generated instead of ADD + LWA. LP64 is needed + because the LWA and LWAX instructions are only available in 64-bit mode. */ +long func (int *p, unsigned long n) +{ + return p[n]; +} + +/* { dg-final { scan-assembler {\mlwax\M} } } */ +/* { dg-final { scan-assembler-not {\mlwa\M} } } */ Index: gcc/testsuite/gcc.target/powerpc/pr58673-2.c =================================================================== --- gcc/testsuite/gcc.target/powerpc/pr58673-2.c (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/gcc.target/powerpc/pr58673-2.c (.../branches/gcc-8-branch) @@ -140,7 +140,7 @@ malloc (__len); __retval;} - )): __strdup (eoNames[i]))); + )): strdup (eoNames[i]))); raleg[j++] = (__extension__ (__builtin_constant_p (buf) @@ -165,7 +165,7 @@ malloc (__len); __retval;} - )): __strdup (buf))); + )): strdup (buf))); } } if (tcr->nLJ) Index: gcc/testsuite/gcc.target/arm/pr86640.c =================================================================== --- gcc/testsuite/gcc.target/arm/pr86640.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/arm/pr86640.c (.../branches/gcc-8-branch) @@ -0,0 +1,10 @@ +/* { dg-options "-O3" } */ + +/* This ICEd with -O3 -mfpu=neon -mfloat-abi=hard -march=armv7-a . */ + +char fn1() { + long long b[5]; + for (int a = 0; a < 5; a++) + b[a] = ~0ULL; + return b[3]; +} Index: gcc/testsuite/gcc.target/arm/arm-soft-strd-even.c =================================================================== --- gcc/testsuite/gcc.target/arm/arm-soft-strd-even.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/arm/arm-soft-strd-even.c (.../branches/gcc-8-branch) @@ -0,0 +1,19 @@ +/* { dg-do assemble } */ +/* { dg-require-effective-target arm_arm_ok } */ +/* { dg-skip-if "do not override -mfloat-abi" { *-*-* } { "-mfloat-abi=*" } {"-mfloat-abi=soft" } } */ +/* { dg-options "-O2 -marm -mfloat-abi=soft" } */ + +/* Check that we don't try to emit STRD in ARM state with + odd starting register. */ + +struct S { + double M0; +} __attribute((aligned)) __attribute((packed)); + +void bar(void *); + +void foo(int x, struct S y) { + asm("" : : : "r1", "r8", "r7", "r4"); + y.M0 ?: bar(0); + bar(__builtin_alloca(8)); +} Index: gcc/testsuite/gcc.target/s390/dfp_to_bfp_rounding.c =================================================================== --- gcc/testsuite/gcc.target/s390/dfp_to_bfp_rounding.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/s390/dfp_to_bfp_rounding.c (.../branches/gcc-8-branch) @@ -0,0 +1,29 @@ +/* { dg-do run } */ +/* { dg-options "-O3 -mzarch -march=z10" } */ + +/* According to IEEE 754 2008 4.3 Conversion operations between + different radixes must use the rounding mode of the target radix. + On S/390 this means passing the right value in GPR0 to PFPO + instruction. */ + +#include + +double __attribute__((noclone,noinline)) +convert (_Decimal64 in) +{ + return (double)in; +} + +int +main () +{ + fesetround (FE_UPWARD); + + if (convert (1e-325DD) != __DBL_DENORM_MIN__) + __builtin_abort (); + + fesetround (FE_DOWNWARD); + + if (convert (-1e-325DD) != -__DBL_DENORM_MIN__) + __builtin_abort (); +} Index: gcc/testsuite/gcc.target/m68k/mulsi_highpart.c =================================================================== --- gcc/testsuite/gcc.target/m68k/mulsi_highpart.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/m68k/mulsi_highpart.c (.../branches/gcc-8-branch) @@ -0,0 +1,8 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -m68020" } */ +/* Don't optimize away a compare after [us]mulsi_highpart. */ +/* { dg-final { scan-assembler {tst\.?l} } } */ +int cmp (unsigned int a, unsigned int b) +{ + return (a > 0xffffffff / b); +} Index: gcc/testsuite/gcc.target/msp430/pr86662.c =================================================================== --- gcc/testsuite/gcc.target/msp430/pr86662.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/msp430/pr86662.c (.../branches/gcc-8-branch) @@ -0,0 +1,13 @@ +/* PR/86662 */ + +/* { dg-do link } */ +/* -nostdlib prevents link errors due to mismatched code models for + libgloss objects. */ +/* { dg-options "-mlarge -flto -nostdlib" } */ +/* { dg-skip-if "" { *-*-* } { "-mcpu=msp430" } } */ + +int main(void) +{ + __int20 n = 5; + return 0; +} Index: gcc/testsuite/gcc.target/i386/pr82699-6.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-6.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-6.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-do compile { target *-*-linux* } } */ +/* { dg-options "-fno-pic -O2 -fcf-protection -pg -mfentry -mrecord-mcount -mnop-mcount -fasynchronous-unwind-tables" } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gcc.target/i386/pr87198.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr87198.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr87198.c (.../branches/gcc-8-branch) @@ -0,0 +1,13 @@ +/* PR target/87198 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -mxsavec -mno-xsave" } */ + +#include + +void +test_xsavec (void *__A, long long __B) +{ + _xsavec (__A, __B); +} + +/* { dg-error "target specific option mismatch" "" { target *-*-* } 0 } */ Index: gcc/testsuite/gcc.target/i386/pr82699-1.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-1.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-1.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-do compile { target *-*-linux* } } */ +/* { dg-options "-O2 -fno-pic -fcf-protection -pg -fasynchronous-unwind-tables" } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gcc.target/i386/pr82699-2.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-2.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-2.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-do compile { target *-*-linux* } } */ +/* { dg-options "-O2 -fno-pic -fcf-protection -pg -mfentry -fasynchronous-unwind-tables" } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gcc.target/i386/pr82699-3.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-3.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-3.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-do compile { target *-*-linux* } } */ +/* { dg-options "-O2 -fpic -fcf-protection -pg -fasynchronous-unwind-tables" } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gcc.target/i386/avx512f-abspd-1.c =================================================================== --- gcc/testsuite/gcc.target/i386/avx512f-abspd-1.c (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/gcc.target/i386/avx512f-abspd-1.c (.../branches/gcc-8-branch) @@ -6,11 +6,11 @@ #include "avx512f-helper.h" -#define SIZE (AVX512F_LEN / 32) +#define SIZE (AVX512F_LEN / 64) #include "avx512f-mask-type.h" static void -CALC (float *i1, float *r) +CALC (double *i1, double *r) { int i; @@ -24,14 +24,14 @@ void TEST (void) { - float ck[SIZE]; + double ck[SIZE]; int i; - UNION_TYPE (AVX512F_LEN, ) s, d, dm; + UNION_TYPE (AVX512F_LEN, d) s, d, dm; MASK_TYPE mask = MASK_VALUE; for (i = 0; i < SIZE; i++) { - s.a[i] = i * ((i & 1) ? 3.5f : -7.5f); + s.a[i] = i * ((i & 1) ? 3.5 : -7.5); d.a[i] = DEFAULT_VALUE; dm.a[i] = DEFAULT_VALUE; } @@ -38,13 +38,13 @@ CALC (s.a, ck); - d.x = INTRINSIC (_abs_ps) (s.x); - dm.x = INTRINSIC (_mask_abs_ps) (dm.x, mask, s.x); + d.x = INTRINSIC (_abs_pd) (s.x); + dm.x = INTRINSIC (_mask_abs_pd) (dm.x, mask, s.x); - if (UNION_CHECK (AVX512F_LEN, ) (d, ck)) + if (UNION_CHECK (AVX512F_LEN, d) (d, ck)) abort (); - MASK_MERGE () (ck, mask, SIZE); - if (UNION_CHECK (AVX512F_LEN, ) (dm, ck)) + MASK_MERGE (d) (ck, mask, SIZE); + if (UNION_CHECK (AVX512F_LEN, d) (dm, ck)) abort (); } Index: gcc/testsuite/gcc.target/i386/avx512bw-pr87138.c =================================================================== --- gcc/testsuite/gcc.target/i386/avx512bw-pr87138.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/avx512bw-pr87138.c (.../branches/gcc-8-branch) @@ -0,0 +1,29 @@ +/* PR middle-end/87138 */ +/* { dg-do run { target int128 } } */ +/* { dg-options "-O -fno-tree-fre -mavx512bw -mtune=k8" } */ +/* { dg-require-effective-target avx512bw } */ + +#include "avx512bw-check.h" + +typedef int U __attribute__ ((vector_size (64))); +typedef __int128 V __attribute__ ((vector_size (64))); +V g, i; + +static inline void +foo (unsigned h, V j, U k, V n) +{ + k /= h; + __builtin_memmove (&h, &n, 1); + n[j[1]] *= 0x7FFFFFFFFFFFFFFF; + j[k[5]] = 0; + g = n; + i = h + j + n; +} + +void +avx512bw_test () +{ + foo (~0, (V) { }, (U) { 5 }, (V) { 3 }); + if (g[0] != (__int128) 3 * 0x7FFFFFFFFFFFFFFF) + abort (); +} Index: gcc/testsuite/gcc.target/i386/pr82699-4.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-4.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-4.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-do compile { target { *-*-linux* && { ! ia32 } } } } */ +/* { dg-options "-O2 -fpic -fcf-protection -pg -mfentry -fasynchronous-unwind-tables" } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gcc.target/i386/pr86386.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr86386.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr86386.c (.../branches/gcc-8-branch) @@ -0,0 +1,26 @@ +/* PR target/86386 */ +/* { dg-do run { target { avx_runtime && int128 } } } */ +/* { dg-options "-Os -fno-tree-dce -mstringop-strategy=vector_loop -mavx" } */ + +unsigned c, d, e, f; + +unsigned __attribute__((noipa)) +foo (unsigned char g, unsigned short h, unsigned i, unsigned long long j, + unsigned char k, unsigned short l, unsigned m, unsigned __int128 n) +{ + __builtin_memset (&e, 0, 3); + n <<= m; + __builtin_memcpy (&m, 2 + (char *) &n, 1); + m >>= 0; + d ^= __builtin_mul_overflow (l, n, &m); + return m; +} + +int +main () +{ + unsigned __int128 x = foo (0, 0, 0, 0, 0, 4, 1, 3); + if (x != 24) + __builtin_abort (); + return 0; +} Index: gcc/testsuite/gcc.target/i386/pr87065.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr87065.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr87065.c (.../branches/gcc-8-branch) @@ -0,0 +1,22 @@ +/* PR rtl-optimization/87065 */ +/* { dg-do compile } */ +/* { dg-options "-O3 -mxop -mprefer-vector-width=128" } */ + +int a, c, d, e; +short *b; + +void +foo (void) +{ + short *g = b; + int h = 1; + unsigned i; + for (; h <= 1; h++) + g = (short *) &c; + for (; c; c++) + { + for (; i <= 1; i++) + ; + a ^= (a > 0 <= i) + ((e += d) == 0 ?: (*g = 8)); + } +} Index: gcc/testsuite/gcc.target/i386/pr87370.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr87370.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr87370.c (.../branches/gcc-8-branch) @@ -0,0 +1,39 @@ +/* { dg-do compile { target { ! ia32 } } } */ +/* { dg-options "-O2" } */ + +struct A +{ + int b[4]; +}; +struct B +{ + char a[12]; + int b; +}; +struct C +{ + char a[16]; +}; + +struct A +f1 (void) +{ + struct A x = {}; + return x; +} + +struct B +f2 (void) +{ + struct B x = {}; + return x; +} + +struct C +f3 (void) +{ + struct C x = {}; + return x; +} + +/* { dg-final { scan-assembler-not "xmm" } } */ Index: gcc/testsuite/gcc.target/i386/pr86627.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr86627.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr86627.c (.../branches/gcc-8-branch) @@ -0,0 +1,28 @@ +/* PR middle-end/86627 */ +/* { dg-do compile { target int128 } } */ +/* { dg-options "-O2" } */ +/* { dg-final { scan-assembler-not "call\[^\n\r]*__divti3" } } */ + +__int128_t +f1 (__int128_t a) +{ + return a / 2; +} + +__int128_t +f2 (__int128_t a) +{ + return a / -2; +} + +__int128_t +f3 (__int128_t a) +{ + return a / 0x4000000000000000LL; +} + +__int128_t +f4 (__int128_t a) +{ + return a / -0x4000000000000000LL; +} Index: gcc/testsuite/gcc.target/i386/pr82699-5.c =================================================================== --- gcc/testsuite/gcc.target/i386/pr82699-5.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.target/i386/pr82699-5.c (.../branches/gcc-8-branch) @@ -0,0 +1,12 @@ +/* { dg-do compile { target *-*-linux* } } */ +/* { dg-options "-O2 -fcf-protection -mfentry -fasynchronous-unwind-tables" } */ +/* { dg-additional-options "-fno-pic" { target ia32 } } */ +/* { dg-final { scan-assembler-times {\t\.cfi_startproc\n\tendbr} 1 } } */ + +extern int bar (int); + +int +foo (int i) +{ + return bar (i); +} Index: gcc/testsuite/gfortran.dg/pr86328.f90 =================================================================== --- gcc/testsuite/gfortran.dg/pr86328.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/pr86328.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,49 @@ +! { dg-do run } +! +! Test the fix for PR86328 in which temporaries were not being +! assigned for array component references. +! +! Contributed by Martin +! +program ptr_alloc + + type :: t + class(*), allocatable :: val + end type + + type :: list + type(t), dimension(:), pointer :: ll + end type + + integer :: i + type(list) :: a + + allocate(a%ll(1:2)) + do i = 1,2 + allocate(a%ll(i)%val, source=i) + end do + + do i = 1,2 + call rrr(a, i) + end do + + do i = 1,2 + deallocate(a%ll(i)%val) + end do + deallocate (a%ll) +contains + + subroutine rrr(a, i) + type(list), intent(in) :: a + class(*), allocatable :: c + integer :: i + + allocate(c, source=a%ll(i)%val) + select type (c) + type is (integer) + if (c .ne. i) stop 1 + end select + + end subroutine + +end Index: gcc/testsuite/gfortran.dg/matmul_19.f90 =================================================================== --- gcc/testsuite/gfortran.dg/matmul_19.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/matmul_19.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,25 @@ +! { dg-do run } +! { dg-options "-finline-matmul-limit=0" } +! PR 86704 - this used to segfault. + +program testmaticovenasobeni +implicit none + + character(len=10) :: line + write (unit=line,fmt=*) testmatmul(120,1,3) + + contains + + function testmatmul(m,n,o) + integer, intent(in) :: m,n,o + real :: A(n,m),B(n,o),C(m,o) + logical :: testmatmul + + call random_number(A) + call random_number(B) + + C=matmul(transpose(A),B) + testmatmul=.true. + end function + +end program testmaticovenasobeni Index: gcc/testsuite/gfortran.dg/allocate_with_mold_2.f90 =================================================================== --- gcc/testsuite/gfortran.dg/allocate_with_mold_2.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/allocate_with_mold_2.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,62 @@ +! { dg-do compile } +! { dg-options "-fdump-tree-original" } +! +! Test the fix for PR87284 in which the indexing in allocate with mold +! was incorrect for class array initialization and resulted in the valgrind +! error: +! "Conditional jump or move depends on uninitialised value(s)" at line 42. +! +! Contributed by Andrew Baldwin on clf. +! + MODULE INTS_TYPE_MODULE + TYPE, ABSTRACT :: BASE_TYPE + END TYPE BASE_TYPE + + TYPE, EXTENDS (BASE_TYPE) :: INTS_TYPE + INTEGER, ALLOCATABLE :: INTS(:) + END TYPE INTS_TYPE + CONTAINS + SUBROUTINE MOLD_ALLOCATE (IT_OBJS, MOLD_OBJ) + CLASS (BASE_TYPE), ALLOCATABLE, INTENT (OUT) :: IT_OBJS(:) + CLASS (BASE_TYPE), INTENT (IN) :: MOLD_OBJ + + ALLOCATE (IT_OBJS(2), mold = MOLD_OBJ) + + RETURN + END SUBROUTINE MOLD_ALLOCATE + END MODULE INTS_TYPE_MODULE + + PROGRAM MFE + USE INTS_TYPE_MODULE + IMPLICIT NONE + + CLASS (BASE_TYPE), ALLOCATABLE :: IT_OBJS(:) + INTEGER :: I + TYPE (INTS_TYPE) :: MOLD_OBJ + + ALLOCATE (INTS_TYPE :: IT_OBJS(2)) + + SELECT TYPE (IT_OBJS) + TYPE IS (INTS_TYPE) + ALLOCATE (IT_OBJS(1)%INTS(10)) + + ALLOCATE (IT_OBJS(2)%INTS(10)) + END SELECT + + + DEALLOCATE (IT_OBJS) + + CALL MOLD_ALLOCATE (IT_OBJS, MOLD_OBJ) + + IF (ALLOCATED(IT_OBJS)) THEN + IF (SIZE(IT_OBJS) .GE. 2) THEN + SELECT TYPE (IT_OBJS) + TYPE IS (INTS_TYPE) + ALLOCATE (IT_OBJS(1)%INTS(10)) + + ALLOCATE (IT_OBJS(2)%INTS(10)) + END SELECT + END IF + END IF + END PROGRAM MFE +! { dg-final { scan-tree-dump-times "it_objs->_vptr->_size" 1 "original" } } Index: gcc/testsuite/gfortran.dg/array_constructor_type_23.f90 =================================================================== --- gcc/testsuite/gfortran.dg/array_constructor_type_23.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/array_constructor_type_23.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,7 @@ +! { dg-do compile } +! PR 83999 - this used to ICE +! Origial test case by Gerhard Steinmetz + +program p + character(2) :: c = 'a' // [character :: [1]] ! { dg-error "Illegal type in character concatenation" } +end Index: gcc/testsuite/gfortran.dg/select_type_43.f90 =================================================================== --- gcc/testsuite/gfortran.dg/select_type_43.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/select_type_43.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,48 @@ +! { dg-do run } +! +! Tests the fix for PRxxxxx - runtime segfault as indicated. +! +! Contributed by Andrew Baldwin on clf. +! + MODULE INTS_TYPE_MODULE + TYPE INTS_TYPE + INTEGER, ALLOCATABLE :: INTS(:) + END TYPE INTS_TYPE + CONTAINS + SUBROUTINE ALLOCATE_INTS_TYPE (IT_OBJ) + CLASS (INTS_TYPE), POINTER, INTENT (OUT) :: IT_OBJ + + ALLOCATE (INTS_TYPE :: IT_OBJ) + + SELECT TYPE (IT_OBJ) + TYPE IS (INTS_TYPE) + CALL ALLOCATE_ARRAY (IT_OBJ%INTS) ! Sefaulted at runtime here. + if (.not.allocated (IT_OBJ%INTS)) stop 1 + if (any (IT_OBJ%INTS .ne. [1,2,3,4])) stop 2 + END SELECT + + RETURN + END SUBROUTINE ALLOCATE_INTS_TYPE + + SUBROUTINE ALLOCATE_ARRAY (ALLOC_ARR) + INTEGER, ALLOCATABLE, INTENT (OUT) :: ALLOC_ARR(:) + INTEGER :: I + + ALLOCATE (ALLOC_ARR(4)) + + DO I = 1, SIZE(ALLOC_ARR) + ALLOC_ARR(I) = I + END DO + + RETURN + END SUBROUTINE ALLOCATE_ARRAY + END MODULE INTS_TYPE_MODULE + + PROGRAM MFE + USE INTS_TYPE_MODULE + IMPLICIT NONE + + CLASS (INTS_TYPE), POINTER :: IT_OBJ + + CALL ALLOCATE_INTS_TYPE (IT_OBJ) + END PROGRAM MFE Index: gcc/testsuite/gfortran.dg/proc_ptr_comp_52.f90 =================================================================== --- gcc/testsuite/gfortran.dg/proc_ptr_comp_52.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/proc_ptr_comp_52.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,33 @@ +! { dg-do compile } +! +! PR 85395: [F03] private clause contained in derived type acquires spurious scope +! +! Contributed by + +module defs + implicit none + + type :: base + contains + private + end type + + type :: options + procedure(), pointer, nopass :: ptr + end type + + type :: t + private + procedure(), pointer, nopass, public :: ptr + end type +end module + + +program p + use defs + implicit none + type(options) :: self + type(t) :: dt + self%ptr => null() + dt%ptr => null() +end Index: gcc/testsuite/gfortran.dg/vect/pr86421.f90 =================================================================== --- gcc/testsuite/gfortran.dg/vect/pr86421.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/vect/pr86421.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,35 @@ +! PR fortran/86421 +! { dg-require-effective-target vect_simd_clones } +! { dg-additional-options "-fopenmp-simd" } +! { dg-additional-options "-mavx" { target avx_runtime } } + +module mod86421 + implicit none +contains + subroutine foo(x, y, z) + real :: x + integer :: y, z + !$omp declare simd linear(ref(x)) linear(val(y)) linear(uval(z)) + x = x + y + z = z + 1 + end subroutine +end module mod86421 + +program pr86421 + use mod86421 + implicit none + integer :: i, j + real :: a(64) + j = 0 + do i = 1, 64 + a(i) = i + end do + !$omp simd + do i = 1, 64 + call foo (a(i), i, j) + end do + do i = 1, 64 + if (a(i) .ne. (2 * i)) stop 1 + end do + if (j .ne. 64) stop 2 +end program pr86421 Index: gcc/testsuite/gfortran.dg/generic_34.f90 =================================================================== --- gcc/testsuite/gfortran.dg/generic_34.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/generic_34.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,27 @@ +! { dg-do compile } +! +! PR 86116: [6/7/8/9 Regression] Ambiguous generic interface not recognised +! +! Contributed by martin + +module mod + + type :: t + end type t + + interface sub + module procedure s1 + module procedure s2 + end interface + +contains + + subroutine s1(x) ! { dg-error "Ambiguous interfaces in generic interface" } + type(t) :: x + end subroutine + + subroutine s2(x) ! { dg-error "Ambiguous interfaces in generic interface" } + class(*), allocatable :: x + end subroutine + +end Index: gcc/testsuite/gfortran.dg/deferred_character_21.f90 =================================================================== --- gcc/testsuite/gfortran.dg/deferred_character_21.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/deferred_character_21.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,29 @@ +! { dg-do compile } +! { dg-options "-O3" } +! +! Tests the fix for PR85954 in which the gimplifier could not determine +! the space required for the dummy argument data types, when inlining the +! subroutines. +! +! Contributed by G.Steinmetz +! +program p + character(kind=1,len=:), allocatable :: z(:) + allocate (z, source = ["xyz"]) + print *, allocated(z), size(z), len(z), z + call s(z) + call t(z) +contains + subroutine s(x) + character(kind=1,len=:), allocatable :: x(:) + x = ['abcd'] + print *, allocated(x), size(x), len(x), x + end + subroutine t(x) + character(kind=1,len=:), allocatable :: x(:) + associate (y => x) + y = ['abc'] + end associate + print *, allocated(x), size(x), len(x), x + end +end Index: gcc/testsuite/gfortran.dg/elemental_function_4.f90 =================================================================== --- gcc/testsuite/gfortran.dg/elemental_function_4.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/elemental_function_4.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,18 @@ +! { dg-do compile } +! +! Tests the fix for PR83999, where the invalid function 'f' caused an ICE. +! +! Contributed by Gerhard Steinmetz +! +program p + type t + integer :: a + end type + type(t) :: x(3) + x = f() + print *, x +contains + elemental function f() result(z) ! { dg-error "must have a scalar result" } + type(t), pointer :: z(:) + end +end Index: gcc/testsuite/gfortran.dg/implied_do_io_6.f90 =================================================================== --- gcc/testsuite/gfortran.dg/implied_do_io_6.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/implied_do_io_6.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,39 @@ +! { dg-do run } +! { dg-options "-ffrontend-optimize" } +! PR 86837 - this was mis-optimized by trying to turn this into an +! array I/O statement. +! Original test case by "Pascal". + +Program read_loop + + implicit none + + integer :: i, j + + ! number of values per column + integer, dimension(3) :: nvalues + data nvalues / 1, 2, 4 / + + ! values in a 1D array + real, dimension(7) :: one_d + data one_d / 1, 11, 12, 21, 22, 23, 24 / + + ! where to store the data back + real, dimension(4, 3) :: two_d + + ! 1 - write our 7 values in one block + open(unit=10, file="loop.dta", form="unformatted") + write(10) one_d + close(unit=10) + + ! 2 - read them back in chosen cells of a 2D array + two_d = -9 + open(unit=10, file="loop.dta", form="unformatted", status='old') + read(10) ((two_d(i,j), i=1,nvalues(j)), j=1,3) + close(unit=10, status='delete') + + ! 4 - print the whole array, just in case + + if (any(reshape(two_d,[12]) /= [1.,-9.,-9.,-9.,11.,12.,-9.,-9.,21.,22.,23.,24.])) call abort + +end Program read_loop Index: gcc/testsuite/gfortran.dg/pr86760.f90 =================================================================== --- gcc/testsuite/gfortran.dg/pr86760.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/pr86760.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,57 @@ +! { dg-do run } +! +! Test the fix for PR86760 in which temporaries were not being +! assigned for array component references. +! +! Contributed by Chris Hansen +! +MODULE test_nesting_mod + IMPLICIT NONE + TYPE :: test_obj1 + CONTAINS + PROCEDURE :: destroy + END TYPE + + TYPE :: obj_ptr + CLASS(test_obj1), POINTER :: f => NULL() + END TYPE + + TYPE :: obj_container + TYPE(obj_ptr), POINTER, DIMENSION(:) :: v => NULL() + END TYPE + + integer :: ctr = 0 + +CONTAINS + + SUBROUTINE destroy(self) + CLASS(test_obj1), INTENT(INOUT):: self + ctr = ctr + 1 + END SUBROUTINE + + SUBROUTINE container_destroy(self) + type(obj_container), INTENT(INOUT) :: self + INTEGER :: i + DO i=1,ubound(self%v,1) + CALL self%v(i)%f%destroy() + END DO + END SUBROUTINE + +END MODULE + + +PROGRAM test_nesting_ptr + USE test_nesting_mod + IMPLICIT NONE + INTEGER :: i + INTEGER, PARAMETER :: n = 2 + TYPE(obj_container) :: var + + ALLOCATE(var%v(n)) + DO i=1,n + ALLOCATE(test_obj1::var%v(i)%f) + END DO + CALL container_destroy(var) + + if (ctr .ne. 2) stop 1 +END Index: gcc/testsuite/gfortran.dg/modulo_check.f90 =================================================================== --- gcc/testsuite/gfortran.dg/modulo_check.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/modulo_check.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,8 @@ +! { dg-do compile } +! Test checks on modulo with p == 0 +program p + logical :: a(2) = (modulo([2,3],0) == 0) ! { dg-error "shall not be zero" } + integer :: b = count(modulo([2,3],0) == 0) ! { dg-error "shall not be zero" } + integer :: c = all(modulo([2,3],0) == 0) ! { dg-error "shall not be zero" } + integer :: d = any(modulo([2,3],0) == 0) ! { dg-error "shall not be zero" } +end program Index: gcc/testsuite/gfortran.dg/typebound_call_30.f90 =================================================================== --- gcc/testsuite/gfortran.dg/typebound_call_30.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/typebound_call_30.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,32 @@ +! { dg-do compile } +! +! PR 86830: [8/9 Regression] Contiguous array pointer function result not recognized as contiguous +! +! Contributed by + +module m + implicit none + + type :: t1 + contains + procedure :: get_ptr + end type + + type :: t2 + class(t1), allocatable :: c + end type + +contains + + function get_ptr(this) + class(t1) :: this + real, dimension(:), contiguous, pointer :: get_ptr + end function + + subroutine test() + real, dimension(:), contiguous, pointer:: ptr + type(t2) :: x + ptr => x%c%get_ptr() + end subroutine + +end module Index: gcc/testsuite/gfortran.dg/associate_41.f90 =================================================================== --- gcc/testsuite/gfortran.dg/associate_41.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/associate_41.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,25 @@ +! { dg-do run } +! +! Test the fix for PR86372 in which the associate name string length was +! not being set, thereby causing a segfault. +! +! Contributed by Janus Weil +! +program xxx + + character(len=50) :: s + + s = repeat ('*', len(s)) + call sub(s) + if (s .ne. '**'//'123'//repeat ('*', len(s) - 5)) stop 1 + +contains + + subroutine sub(str) + character(len=*), intent(inout) :: str + associate (substr => str(3:5)) + substr = '123' + end associate + end subroutine + +end Index: gcc/testsuite/gfortran.dg/use_rename_9.f90 =================================================================== --- gcc/testsuite/gfortran.dg/use_rename_9.f90 (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gfortran.dg/use_rename_9.f90 (.../branches/gcc-8-branch) @@ -0,0 +1,19 @@ +! { dg-do compile } +! +! Test the fix for PR86906, in which a spurious error was generated +! by 'config' in the subroutine having the same symbol name as the +! renamed 'foo_config'. +! +! Contributed by Damian Rouson +! +module foo + type config + end type +end module + use foo, only: foo_config => config +contains + subroutine cap + integer config + type(foo_config) extra + end subroutine +end Index: gcc/testsuite/gcc.c-torture/compile/pr85704.c =================================================================== --- gcc/testsuite/gcc.c-torture/compile/pr85704.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.c-torture/compile/pr85704.c (.../branches/gcc-8-branch) @@ -0,0 +1,10 @@ +/* PR c/85704 */ + +struct C { struct {} c; }; +struct D { int d; struct C e; int f; }; + +void +foo (struct D *x) +{ + *x = (struct D) { .e = (struct C) { .c = {} } }; +} Index: gcc/testsuite/gcc.dg/pr87074.c =================================================================== --- gcc/testsuite/gcc.dg/pr87074.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr87074.c (.../branches/gcc-8-branch) @@ -0,0 +1,25 @@ +/* { dg-do run } */ +/* { dg-options "-O3 -floop-unroll-and-jam --param unroll-jam-min-percent=0" } */ +long b; +unsigned c[5]; +unsigned long long d = 3; +int e, f, g; + +void h() { + for (; f < 11; f++) { + b = g; + for (e = 0; e < 5; e++) { + c[e] = e - b - (c[e] >> 5); + g = c[e]; + } + } + if (c[0]) + d = 0; +} + +extern void abort(void); +int main() { + h(); + if (d != 0) + abort (); +} Index: gcc/testsuite/gcc.dg/pr87024.c =================================================================== --- gcc/testsuite/gcc.dg/pr87024.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr87024.c (.../branches/gcc-8-branch) @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-options "-O -fno-tree-dce" } */ + +static inline void __attribute__((always_inline)) +mp () +{ + (void) __builtin_va_arg_pack_len (); +} + +void +ui (void) +{ + mp (); +} Index: gcc/testsuite/gcc.dg/strlenopt-57.c =================================================================== --- gcc/testsuite/gcc.dg/strlenopt-57.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/strlenopt-57.c (.../branches/gcc-8-branch) @@ -0,0 +1,49 @@ +/* PR tree-optimization/86914 - wrong code with strlen() of poor-man's + flexible array member plus offset + { dg-do compile } + { dg-options "-O2 -Wall -fdump-tree-optimized" } */ + +#include "strlenopt.h" + +struct A0 { char i, a[0]; }; +struct A1 { char i, a[1]; }; +struct A9 { char i, a[9]; }; +struct Ax { char i, a[]; }; + +extern int a[]; + +extern struct A0 a0; +extern struct A1 a1; +extern struct A9 a9; +extern struct Ax ax; + +void test_var_flexarray_cst_off (void) +{ + /* Use arbitrary constants greater than 16 in case GCC ever starts + unrolling strlen() calls with small array arguments. */ + a[0] = 17 < strlen (a0.a + 1); + a[1] = 19 < strlen (a1.a + 1); + a[2] = 23 < strlen (a9.a + 9); + a[3] = 29 < strlen (ax.a + 3); +} + +void test_ptr_flexarray_cst_off (struct A0 *p0, struct A1 *p1, + struct A9 *p9, struct Ax *px) +{ + a[0] = 17 < strlen (p0->a + 1); + a[1] = 19 < strlen (p1->a + 1); + a[2] = 23 < strlen (p9->a + 9); + a[3] = 29 < strlen (px->a + 3); +} + +void test_ptr_flexarray_var_off (struct A0 *p0, struct A1 *p1, + struct A9 *p9, struct Ax *px, + int i) +{ + a[0] = 17 < strlen (p0->a + i); + a[1] = 19 < strlen (p1->a + i); + a[2] = 23 < strlen (p9->a + i); + a[3] = 29 < strlen (px->a + i); +} + +/* { dg-final { scan-tree-dump-times "strlen" 12 "optimized" } } */ Index: gcc/testsuite/gcc.dg/torture/pr86945.c =================================================================== --- gcc/testsuite/gcc.dg/torture/pr86945.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/torture/pr86945.c (.../branches/gcc-8-branch) @@ -0,0 +1,18 @@ +/* { dg-do run } */ + +void __attribute__((noinline,noipa)) +foo(int id) +{ + switch (id) + { + case (-__INT_MAX__ - 1)...-1: + __builtin_abort (); + default:; + } +} + +int main() +{ + foo(1); + return 0; +} Index: gcc/testsuite/gcc.dg/torture/pr86505.c =================================================================== --- gcc/testsuite/gcc.dg/torture/pr86505.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/torture/pr86505.c (.../branches/gcc-8-branch) @@ -0,0 +1,32 @@ +/* { dg-do run } */ + +static inline __attribute__(( __always_inline__)) int +funA(unsigned int param, ...) +{ + return __builtin_va_arg_pack_len(); +} + +static inline __attribute__(( __always_inline__)) int +funB(unsigned int param, ...) +{ + return funA(param, 2, 4, __builtin_va_arg_pack()); +} + +int +testBuiltin(void) +{ + int rc = funB(0,1,2); + if (rc != 4) + return 1; + return 0; +} + +int +main() +{ + int rc = testBuiltin(); + if (rc == 1) + __builtin_abort (); + + return 0; +} Index: gcc/testsuite/gcc.dg/vect/pr86927.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr86927.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/vect/pr86927.c (.../branches/gcc-8-branch) @@ -0,0 +1,15 @@ +#include "tree-vect.h" + +int a[28]; +int main() +{ + check_vect (); + a[4] = 1; + int c = 1; + for (int b = 0; b < 8; b++) + if (a[b]) + c = 0; + if (c) + abort(); + return 0; +} Index: gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c =================================================================== --- gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/gcc.dg/vect/no-section-anchors-vect-69.c (.../branches/gcc-8-branch) @@ -119,5 +119,6 @@ return main1 (); } -/* { dg-final { scan-tree-dump-times "vectorized 4 loops" 1 "vect" } } */ -/* { dg-final { scan-tree-dump-times "Alignment of access forced using versioning" 1 "vect" { target { {! vector_alignment_reachable} && {! vect_hw_misalign} } } } } */ +/* { dg-final { scan-tree-dump-times "vectorized 4 loops" 1 "vect" { target vect_hw_misalign } } } */ +/* { dg-final { scan-tree-dump-times "vectorized 3 loops" 1 "vect" { target { ! vect_hw_misalign } } } } */ +/* { dg-final { scan-tree-dump-times "Alignment of access forced using versioning" 1 "vect" { target { { ! vector_alignment_reachable } && { ! vect_hw_misalign } } } } } */ Index: gcc/testsuite/gcc.dg/vect/pr86871.c =================================================================== --- gcc/testsuite/gcc.dg/vect/pr86871.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/vect/pr86871.c (.../branches/gcc-8-branch) @@ -0,0 +1,15 @@ +/* { dg-do compile } */ + +extern int b[]; +extern int c[]; +void g(int f) { + for (; f; f++) { + int d = 0; + for (int e = -1; e <= 1; e++) { + int a = f + e; + if (a) + d = *(c + a); + } + *(b + f) = d; + } + } Index: gcc/testsuite/gcc.dg/pr86617.c =================================================================== --- gcc/testsuite/gcc.dg/pr86617.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr86617.c (.../branches/gcc-8-branch) @@ -0,0 +1,11 @@ +/* { dg-options "-Os -fdump-rtl-final" } */ + +volatile unsigned char u8; + +void test (void) +{ + u8 = u8 + u8; + u8 = u8 - u8; +} + +/* { dg-final { scan-rtl-dump-times "mem/v" 6 "final" } } */ Index: gcc/testsuite/gcc.dg/nested-func-11.c =================================================================== --- gcc/testsuite/gcc.dg/nested-func-11.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/nested-func-11.c (.../branches/gcc-8-branch) @@ -0,0 +1,34 @@ +/* { dg-do run } */ +/* { dg-options "-O2 -fno-omit-frame-pointer" } */ + +int __attribute__((noipa)) foo (int i) +{ + int a; + + void __attribute__((noipa)) nested2 (int i) + { + a = i; + } + + void __attribute__((noipa)) nested1 (int i) + { + int b[32]; + + for (int j = 0; j < 32; j++) + b[j] = i + j; + + nested2 (b[i]); + } + + nested1 (i); + + return a; +} + +int main (void) +{ + if (foo (4) != 8) + __builtin_abort (); + + return 0; +} Index: gcc/testsuite/gcc.dg/pr87099.c =================================================================== --- gcc/testsuite/gcc.dg/pr87099.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr87099.c (.../branches/gcc-8-branch) @@ -0,0 +1,21 @@ +/* PR middle-end/87099 */ +/* { dg-do compile } */ +/* { dg-options "-Wstringop-overflow" } */ + +void bar (char *); + +int +foo (int n) +{ + char v[n]; + bar (v); + return __builtin_strncmp (&v[1], "aaa", 3); +} + +int +baz (int n, char *s) +{ + char v[n]; + bar (v); + return __builtin_strncmp (&v[1], s, 3); +} Index: gcc/testsuite/gcc.dg/pr86835.c =================================================================== --- gcc/testsuite/gcc.dg/pr86835.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr86835.c (.../branches/gcc-8-branch) @@ -0,0 +1,29 @@ +/* PR tree-optimization/86835 */ +/* { dg-do run } */ +/* { dg-options "-O2 -ffast-math -Wuninitialized" } */ + +__attribute__((noipa)) void +foo (int n, double *x, double *y) +{ /* { dg-bogus "is used uninitialized in this function" "" { target *-*-* } 0 } */ + int i; + double b = y[4]; + for (i = 0; i < n; ++i) + y[3] += __builtin_sin (x[i] / b); + y[0] /= b; + y[1] /= b * b; + y[2] /= b; +} + +int +main () +{ + double y[] = { 16.0, 64.0, 128.0, 0.0, 2.0 }; + foo (0, y, y); + if (__builtin_fabs (y[0] - 8.0) > 0.0001 + || __builtin_fabs (y[1] - 16.0) > 0.0001 + || __builtin_fabs (y[2] - 64.0) > 0.0001 + || y[3] != 0.0 + || y[4] != 2.0) + __builtin_abort (); + return 0; +} Index: gcc/testsuite/gcc.dg/pr85859.c =================================================================== --- gcc/testsuite/gcc.dg/pr85859.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/gcc.dg/pr85859.c (.../branches/gcc-8-branch) @@ -0,0 +1,19 @@ +/* { dg-do run } */ +/* { dg-options "-ftree-tail-merge -Wno-div-by-zero -O2 -fno-dce -fno-isolate-erroneous-paths-dereference -fno-tree-dce -fno-tree-vrp" } */ + +int b, c, d, e; + +__attribute__ ((noinline, noclone)) +int foo (short f) +{ + f %= 0; + return f; +} + +int +main (void) +{ + b = (unsigned char) __builtin_parity (d); + e ? foo (0) : (long) &c; + return 0; +} Index: gcc/testsuite/ChangeLog =================================================================== --- gcc/testsuite/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,404 @@ +2018-10-09 H.J. Lu + + Backport from mainline + 2018-09-29 H.J. Lu + + PR target/87370 + * gcc.target/i386/pr87370.c: New test. + +2018-10-08 Paul Thomas + + PR fortran/83999 + Backport from trunk + * gfortran.dg/elemental_function_4.f90 : New test. + +2018-10-08 Paul Thomas + + Backport from trunk + PR fortran/86372 + * gfortran.dg/associate_41.f90: New test. + +2018-10-06 Thomas Koenig + + PR fortran/86111 + Backport from trunk + * gfortran.dg/array_constructor_type_23.f90: New test. + +2018-10-03 Martin Liska + + Backport from mainline + 2018-10-03 Martin Liska + + PR gcov-profile/86109 + * g++.dg/gcov/pr86109.C: New test. + +2018-10-02 H.J. Lu + + Backport from mainline + 2018-09-25 H.J. Lu + + PR target/82699 + * gcc.target/i386/pr82699-5.c: Add -fno-pic for ia32. + * gcc.target/i386/pr82699-6.c: Add -fno-pic. + + 2018-09-24 H.J. Lu + + PR target/82699 + * gcc.target/i386/pr82699-1.c: New file. + * gcc.target/i386/pr82699-2.c: Likewise. + * gcc.target/i386/pr82699-3.c: Likewise. + * gcc.target/i386/pr82699-4.c: Likewise. + * gcc.target/i386/pr82699-5.c: Likewise. + * gcc.target/i386/pr82699-6.c: Likewise. + +2018-10-01 Kyrylo Tkachov + + Backport from mainline + 2018-07-02 Christophe Lyon + + * gcc.target/arm/arm-soft-strd-even.c: Skip if -mfloat-abi is + overriden. + 2018-06-29 Kyrylo Tkachov + + * gcc.target/arm/arm-soft-strd-even.c: New test. + +2018-09-29 Jakub Jelinek + + PR target/87467 + * gcc.target/i386/avx512f-abspd-1.c (SIZE): Divide by two. + (CALC): Use double instead of float. + (TEST): Adjust to test _mm512_abs_pd and _mm512_mask_abs_pd rather than + _mm512_abs_ps and _mm512_mask_abs_ps. + +2018-09-27 Michael Meissner + + Backport from mainline + 2018-08-20 Michael Meissner + + PR target/87033 + * gcc.target/powerpc/pr87033.c: New test. + +2018-09-25 Martin Liska + + Backport from mainline + 2018-09-24 Martin Liska + + PR sanitizer/85774 + * g++.dg/asan/pr85774.C: New test. + +2018-09-24 Paolo Carlini + + PR c++/85070 + * g++.dg/cpp0x/pr85070.C: New. + +2018-09-21 Eric Botcazou + + * gcc.dg/nested-func-11.c: New test. + +2018-09-18 Janus Weil + + Backport from trunk + PR fortran/85395 + * gfortran.dg/proc_ptr_comp_52.f90: New test case. + +2018-09-18 Janus Weil + + Backport from trunk + PR fortran/86830 + * gfortran.dg/typebound_call_30.f90: New test case. + +2018-09-18 Paul Thomas + + Backported from trunk + PR fortran/85954 + * gfortran.dg/deferred_character_21.f90 : New test. + +2018-09-18 Nathan Sidwell + + PR c++/86881 + * g++.dg/warn/pr86881.C: New. + +2018-09-12 Paul Thomas + + Backported from trunk + PR fortran/87284 + * gfortran.dg/allocate_with_mold_2.f90: New test. + +2018-09-12 Andreas Krebbel + + Backport from mainline + 2018-09-12 Andreas Krebbel + + * gcc.target/s390/dfp_to_bfp_rounding.c: New test. + +2018-09-12 Jakub Jelinek + + PR middle-end/87248 + * c-c++-common/torture/pr87248.c: New test. + +2018-09-11 Paul Thomas + + Backported from trunk + PR fortran/87277 + * gfortran.dg/select_type_43.f90: New test. + +2018-09-05 Janus Weil + + Backported from trunk + PR fortran/86116 + * gfortran.dg/generic_34.f90: New test case. + +2018-09-05 Pádraig Brady + + PR c++/87185 + * g++.dg/pr87185.C: New. + +2018-09-05 Nathan Sidwell + + PR c++/87137 + * g++.dg/abi/pr87137.C: New. + +2018-09-05 Jakub Jelinek + + Backported from mainline + 2018-09-04 Jakub Jelinek + + PR target/87198 + * gcc.target/i386/pr87198.c: New test. + + 2018-08-31 Jakub Jelinek + + PR middle-end/87138 + * gcc.target/i386/avx512bw-pr87138.c: New test. + + 2018-08-29 Jakub Jelinek + + PR c++/87095 + * g++.dg/ubsan/vptr-13.C: New test. + + 2018-08-11 Jakub Jelinek + + PR tree-optimization/86835 + * gcc.dg/pr86835.c: New test. + + 2018-08-08 Jakub Jelinek + + PR c++/86836 + * g++.dg/cpp1z/decomp46.C: New test. + + PR c++/86738 + * g++.dg/opt/pr86738.C: New test. + + 2018-08-03 Jason Merrill + + PR c++/86706 + * g++.dg/template/pr86706.C: New test. + +2018-09-04 Jerry DeLisle + + Backport from mainline + * gfortran.dg/modulo_check: New test. + +2018-09-03 Tom de Vries + + backport from trunk: + 2018-06-21 Tom de Vries + + PR tree-optimization/85859 + * gcc.dg/pr85859.c: New test. + +2018-09-01 Michael Matz + + Backport from mainline + PR tree-optimization/87074 + * gcc.dg/pr87074.c: New test. + +2018-09-01 Paul Thomas + + PR fortran/86328 + PR fortran/86760 + * gfortran.dg/pr86328.f90 : New test. + * gfortran.dg/pr86760.f90 : New test. + +2018-08-31 Nathan Sidwell + + PR c++/87155 + PR c++/84707 + * g++.dg/cpp0x/pr87155.C: New. + * g++.dg/cpp0x/inline-ns10.C: Adjust. + +2018-08-31 Richard Biener + + Backport from mainline + 2018-08-27 Richard Biener + + PR tree-optimization/86927 + * gcc.dg/vect/pr86927.c: New testcase. + + 2018-08-23 Richard Biener + + PR middle-end/87024 + * gcc.dg/pr87024.c: New testcase. + + 2018-08-22 Richard Biener + + PR tree-optimization/86945 + * gcc.dg/torture/pr86945.c: New testcase. + + 2018-08-17 Richard Biener + + PR middle-end/86505 + * gcc.dg/torture/pr86505.c: New testcase. + + 2018-08-02 Richard Biener + + PR tree-optimization/86816 + * g++.dg/torture/pr86816.C: New testcase. + + 2018-07-17 Richard Biener + + PR lto/86456 + * g++.dg/debug/dwarf2/pr86456.C: New testcase. + +2018-08-29 Jakub Jelinek + + PR c++/87122 + * g++.dg/cpp1z/decomp47.C: New test. + +2018-08-27 Martin Sebor + + PR tree-optimization/86914 + * gcc.dg/strlenopt-57.c: New test. + +2018-08-28 Jakub Jelinek + + PR middle-end/87099 + * gcc.dg/pr87099.c: New test. + +2018-08-27 Jakub Jelinek + + PR rtl-optimization/87065 + * gcc.target/i386/pr87065.c: New test. + +2018-08-26 Thomas Koenig + + Backport from trunk + PR libfortran/86704 + * gfortran.dg/matmul_19.f90: New test. + +2018-08-24 Thomas Koenig + + Backport from trunk + PR fortran/86837 + * gfortran.dg/implied_do_io_6.f90: New test. + +2018-08-21 H.J. Lu + + Backport from mainline + 2018-08-20 H.J. Lu + + PR target/87014 + * g++.dg/torture/pr87014.C: New file. + +2018-08-21 Szabolcs Nagy + + Backport from mainline + 2018-08-21 Szabolcs Nagy + + * g++.dg/torture/pr86763.C: Restrict to *-*-linux*. + +2018-08-17 Richard Biener + + Backport from mainline + 2018-08-02 Richard Biener + + PR c++/86763 + * g++.dg/torture/pr86763.C: New testcase. + +2018-08-16 Tamar Christina + + Backport from mainline + 2018-07-31 Segher Boessenkool + + PR target/86640 + * gcc.target/arm/pr86640.c: New testcase. + +2018-08-14 Richard Sandiford + + Backport from mainline + 2018-08-09 Richard Sandiford + + PR tree-optimization/86871 + * gcc.dg/vect/pr86871.c: New test. + +2018-08-12 Paul Thomas + + Backported from trunk + PR fortran/86906 + * gfortran.dg/use_rename_9.f90: New test. + +2018-08-07 H.J. Lu + + Backport from mainline + 2018-08-05 H.J. Lu + + PR target/86386 + * gcc.target/i386/pr86386.c: New file. + +2018-08-07 Steve Ellcey + Rainer Orth + + PR tree-optimization/80925 + * gcc.dg/vect/no-section-anchors-vect-69.c: Expect 3 loops + vectorized on !vect_hw_misalign targets. + +2018-08-04 Uros Bizjak + + PR testsuite/86153 + * g++.dg/pr83239.C (dg-options): Add -finline-limit=500. + +2018-08-02 Andreas Schwab + + Backport from mainline + 2018-07-17 Andreas Schwab + + PR target/86820 + * gcc.target/m68k/mulsi_highpart.c: New test. + +2018-08-01 Jakub Jelinek + + PR c/85704 + * gcc.c-torture/compile/pr85704.c: New test. + +2018-07-29 Bernd Edlinger + + Backport from mainline + 2018-07-23 Bernd Edlinger + + PR c/86617 + * gcc.dg/pr86617.c: New test. + +2018-07-26 Pat Haugen + + Backport from mainline + 2018-07-26 Pat Haugen + + PR target/86612 + * gcc.target/powerpc/pr58673-2.c: Call strdup. + +2018-07-26 Jakub Jelinek + + Backported from mainline + 2018-07-24 Jakub Jelinek + + PR middle-end/86627 + * gcc.target/i386/pr86627.c: New test. + + 2018-07-10 Jakub Jelinek + + PR fortran/86421 + * gfortran.dg/vect/pr86421.f90: New test. + 2018-07-26 Release Manager * GCC 8.2.0 released. @@ -8,10 +409,10 @@ 2018-07-16 Carl Love PR target/86414 - * gcc.target/powerpc/divkc3-2.c: Add dg-require-effective-target + * gcc.target/powerpc/divkc3-2.c: Add dg-require-effective-target longdouble128. * gcc.target/powerpc/divkc3-3.c: Ditto. - * gcc.target/powerpc/mulkc3-2.c: Ditto. + * gcc.target/powerpc/mulkc3-2.c: Ditto. * gcc.target/powerpc/mulkc3-3.c: Ditto. * gcc.target/powerpc/fold-vec-mergehl-double.c: Update counts. * gcc.target/powerpc/pr85456.c: Make check Linux and AIX specific. @@ -743,7 +1144,7 @@ Backport from mainline 2018-05-11 Martin Liska - PR sanitizer/85556 + PR sanitizer/85556 * c-c++-common/ubsan/attrib-6.c: New test. 2018-05-22 Martin Sebor @@ -1443,11 +1844,11 @@ 2018-04-13 Andreas Krebbel - PR testsuite/85326 - * gcc.target/s390/pr77822-1.C: Rename to ... - * gcc.target/s390/pr77822-1.c: ... this. Add asm scan check. - * gcc.target/s390/pr77822-2.c: Add asm scan check. - * gcc.target/s390/s390.exp: Remove C from testcase regexps. + PR testsuite/85326 + * gcc.target/s390/pr77822-1.C: Rename to ... + * gcc.target/s390/pr77822-1.c: ... this. Add asm scan check. + * gcc.target/s390/pr77822-2.c: Add asm scan check. + * gcc.target/s390/s390.exp: Remove C from testcase regexps. 2018-04-13 Jan Hubicka @@ -2780,7 +3181,7 @@ * g++.dg/cpp2a/desig7.C: New test. 2018-03-16 Mark Doffman - Jim MacArthur + Jim MacArthur * gfortran.dg/automatic_1.f90: New test. * gfortran.dg/automatic_repeat.f90: New test @@ -4015,9 +4416,9 @@ 2018-02-20 Jeff Law - PR middle-end/82123 - PR tree-optimization/81592 - PR middle-end/79257 + PR middle-end/82123 + PR tree-optimization/81592 + PR middle-end/79257 * gcc.dg/pr81592.c: New test. * gcc.dg/pr82123.c: New test. * gcc.dg/builtin-unreachable-6.c: Turn off VRP. @@ -6741,7 +7142,7 @@ 2018-02-14 Carl Love - * gcc.target/powerpc/builtins-4-int128-runnable.c + * gcc.target/powerpc/builtins-4-int128-runnable.c (dg-require-effective-target): Change vsx_hw to p8vector_hw. (dg-options): Change -maltivec -mvsx to -mpower8-vector. Index: gcc/testsuite/g++.dg/pr83239.C =================================================================== --- gcc/testsuite/g++.dg/pr83239.C (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/g++.dg/pr83239.C (.../branches/gcc-8-branch) @@ -1,7 +1,7 @@ // PR tree-optimization/83239 - False positive from -Wstringop-overflow // on simple std::vector code // { dg-do compile } -// { dg-options "-O3 -Wall -fdump-tree-optimized" } +// { dg-options "-O3 -finline-limit=500 -Wall -fdump-tree-optimized" } #include Index: gcc/testsuite/g++.dg/ubsan/vptr-13.C =================================================================== --- gcc/testsuite/g++.dg/ubsan/vptr-13.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/ubsan/vptr-13.C (.../branches/gcc-8-branch) @@ -0,0 +1,19 @@ +// PR c++/87095 +// { dg-do run } +// { dg-options "-fsanitize=vptr -fno-sanitize-recover=vptr" } + +struct A +{ + virtual ~A () {} +}; + +struct B : virtual A {}; + +struct C : B {}; + +int +main () +{ + C c; + return 0; +} Index: gcc/testsuite/g++.dg/warn/pr86881.C =================================================================== --- gcc/testsuite/g++.dg/warn/pr86881.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/warn/pr86881.C (.../branches/gcc-8-branch) @@ -0,0 +1,20 @@ +// PR c++/86881 ICE with shadow warning +// { dg-do compile { target c++11 } } +// { dg-additional-options { -Wshadow-compatible-local } }} + +void a() { + auto b([] {}); + { + auto b = 0; + } +} + +struct Proxy { }; + +void Two () +{ + auto my = Proxy (); + { + auto my = Proxy (); // { dg-warning "shadows" "" { xfail *-*-* } } + }; +} Index: gcc/testsuite/g++.dg/warn/Wsign-conversion-3.C =================================================================== --- gcc/testsuite/g++.dg/warn/Wsign-conversion-3.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/warn/Wsign-conversion-3.C (.../branches/gcc-8-branch) @@ -0,0 +1,13 @@ +// PR c++/86190 +// { dg-options "-Wsign-conversion -Wsign-compare" } + +typedef unsigned long sz_t; +sz_t s(); +bool f(int i) { return s() < (unsigned long) i; } +bool f2(int i) { return s() < static_cast(i); } +bool f3(int i) { return s() < i; } // { dg-warning "comparison of integer expressions of different signedness" } +bool f4(int i) { return s() < (long) i; } // { dg-warning "comparison of integer expressions of different signedness" } +bool f5(short int i) { return s() < (int) i; } // { dg-warning "comparison of integer expressions of different signedness" } +bool f6(signed char i) { return s() < (int) i; } // { dg-warning "comparison of integer expressions of different signedness" } +bool f7(unsigned char i) { return s() < i; } +bool f8(signed char i) { return s() < i; } // { dg-warning "comparison of integer expressions of different signedness" } Index: gcc/testsuite/g++.dg/warn/Wsign-conversion-4.C =================================================================== --- gcc/testsuite/g++.dg/warn/Wsign-conversion-4.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/warn/Wsign-conversion-4.C (.../branches/gcc-8-branch) @@ -0,0 +1,14 @@ +// PR c++/86190 +// { dg-options "-Wsign-conversion -Wsign-compare" } + +typedef unsigned long size_t; + +struct vector { + typedef size_t size_type; + size_type size(); +}; + +bool func(vector vec, int var) +{ + return vec.size() < static_cast(var); // { dg-bogus "may change" } +} Index: gcc/testsuite/g++.dg/asan/pr85774.C =================================================================== --- gcc/testsuite/g++.dg/asan/pr85774.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/asan/pr85774.C (.../branches/gcc-8-branch) @@ -0,0 +1,51 @@ +/* PR sanitizer/85774 */ +/* { dg-do run } */ + +#include + +void +DoSomething () +{ +} + +void +DoFunc (const std::function &func) +{ + func (); +} + +void +Setup () +{ + switch (1) + { + case 1: + { + DoFunc ([]() {}); + break; + } + case 2: + { + DoFunc ([]() {}); + break; + } + default: + break; + } + + DoSomething (); +} + +void +DemostrateBadPoisoning () +{ + DoFunc ([]() {}); +} + +int +main () +{ + Setup (); + DemostrateBadPoisoning (); + return 0; +} Index: gcc/testsuite/g++.dg/gcov/pr86109.C =================================================================== --- gcc/testsuite/g++.dg/gcov/pr86109.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/gcov/pr86109.C (.../branches/gcc-8-branch) @@ -0,0 +1,16 @@ + +/* { dg-options "-fprofile-arcs -ftest-coverage -std=c++11" } */ +/* { dg-do run { target native } } */ + +int main() +{ + auto partially_uncovered_lambda = [](int i) { /* count(1) */ + if (i > 10) /* count(1) */ + return 0; /* count(1) */ + return 1; /* count(#####) */ + }; + + return partially_uncovered_lambda(20); /* count(1) */ +} + +/* { dg-final { run-gcov pr86109.C } } */ Index: gcc/testsuite/g++.dg/pr87185.C =================================================================== --- gcc/testsuite/g++.dg/pr87185.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/pr87185.C (.../branches/gcc-8-branch) @@ -0,0 +1,4 @@ +// PR c++/87185 +// { dg-do compile { target c++11 } } + +void f() { const int i=0; [&]() noexcept {i;}; } Index: gcc/testsuite/g++.dg/debug/dwarf2/pr86456.C =================================================================== --- gcc/testsuite/g++.dg/debug/dwarf2/pr86456.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/debug/dwarf2/pr86456.C (.../branches/gcc-8-branch) @@ -0,0 +1,5 @@ +// { dg-do compile } +// { dg-require-effective-target lto } +// { dg-options "-g -gdwarf-5 -flto -ffat-lto-objects" } + +int a; Index: gcc/testsuite/g++.dg/opt/pr86738.C =================================================================== --- gcc/testsuite/g++.dg/opt/pr86738.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/opt/pr86738.C (.../branches/gcc-8-branch) @@ -0,0 +1,12 @@ +// PR c++/86738 +// { dg-do compile } + +struct S { int s; }; +unsigned char a[20]; +unsigned char *p = &a[(__UINTPTR_TYPE__) &((S *) 0)->s]; + +void +foo () +{ + __builtin_memcpy (&a[15], &a[(__UINTPTR_TYPE__) &((S *) 0)->s], 2); +} Index: gcc/testsuite/g++.dg/cpp0x/pr87155.C =================================================================== --- gcc/testsuite/g++.dg/cpp0x/pr87155.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp0x/pr87155.C (.../branches/gcc-8-branch) @@ -0,0 +1,14 @@ +// { dg-do compile { target c++11 } } +// PR c++/87155 confused about which anon namespace + +namespace { + void a (); // this one +} + +inline namespace n2 { + namespace {} +} + +namespace { + int a (); // { dg-error "ambiguating" "" } +} Index: gcc/testsuite/g++.dg/cpp0x/pr85070.C =================================================================== --- gcc/testsuite/g++.dg/cpp0x/pr85070.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp0x/pr85070.C (.../branches/gcc-8-branch) @@ -0,0 +1,13 @@ +// { dg-do compile { target c++11 } } + +struct A; + +struct B +{ + constexpr A & operator= (const A &); // { dg-warning "used" "" { target c++14_only } } +}; + +struct A : B // { dg-error "cannot be overloaded" "" { target c++14_only } } +{ + using B::operator=; +} a { a = a }; Index: gcc/testsuite/g++.dg/cpp0x/inline-ns10.C =================================================================== --- gcc/testsuite/g++.dg/cpp0x/inline-ns10.C (.../tags/gcc_8_2_0_release) +++ gcc/testsuite/g++.dg/cpp0x/inline-ns10.C (.../branches/gcc-8-branch) @@ -2,7 +2,10 @@ // { dg-do compile { target c++11 } } inline namespace { - namespace {} + namespace {} // not this one + void a (); } -namespace {} // { dg-error "conflicts" } +namespace { + int a (); // { dg-error "ambiguating" "" } +} Index: gcc/testsuite/g++.dg/torture/pr86763.C =================================================================== --- gcc/testsuite/g++.dg/torture/pr86763.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/torture/pr86763.C (.../branches/gcc-8-branch) @@ -0,0 +1,37 @@ +// { dg-do run { target { *-*-linux* } } } +// { dg-additional-options "-fschedule-insns2 -fstrict-aliasing" } +// { dg-additional-options "-lrt" } + +#include +#include +#include +struct ID { + uint64_t value; +}; +uint64_t value(ID id) { return id.value; } +uint64_t gen { 1000 }; +struct Msg { + uint64_t time; + ID id; +}; +struct V { + V() { } + V(Msg const & msg) : msg(msg) { } + Msg & get() { return msg; } + Msg msg; + char pad[237 - sizeof(Msg)]; +}; +struct T : V { using V::V; }; +Msg init_msg() { + Msg msg; + timespec t; + clock_gettime(CLOCK_REALTIME, &t); + msg.time = t.tv_sec + t.tv_nsec; + msg.id.value = ++gen; + return msg; +} +int main() { + T t; + t = init_msg(); + assert(value(t.get().id) == 1001); +} Index: gcc/testsuite/g++.dg/torture/pr86816.C =================================================================== --- gcc/testsuite/g++.dg/torture/pr86816.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/torture/pr86816.C (.../branches/gcc-8-branch) @@ -0,0 +1,42 @@ +// { dg-do compile } + +class Signal +{ +public: + int m_Mode; +}; + +class Ctx +{ +public: + bool m_Invert; + + void DoSomething(); +}; + +class Test +{ + void TestIce( Ctx& ctx, Signal* sig); +}; + +void Test::TestIce( Ctx& ctx, Signal* sig) +{ + int invert = false; + + if( ! ctx.m_Invert) + invert = ! invert; + + switch( sig->m_Mode) + { + case 1: + invert = ! invert; + break; + + case 2: + invert = true; + break; + } + + if( invert) + ctx.DoSomething(); +} Index: gcc/testsuite/g++.dg/torture/pr87014.C =================================================================== --- gcc/testsuite/g++.dg/torture/pr87014.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/torture/pr87014.C (.../branches/gcc-8-branch) @@ -0,0 +1,37 @@ +// { dg-do run } + +void +fillstack () +{ + long long foo[] = + { + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + }; +} + +void +f (long long=-1,long long=-1,long long=-1,long long=-1, + long long=-1,long long=-1,long long arg7_on_stack=-1) +{ + throw 0; +} + +void +g() +{ + try + { + f (); + } + catch (int) + { + } +} + +int +main() +{ + fillstack (); + g (); + return 0; +} Index: gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic19.C =================================================================== --- gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic19.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic19.C (.../branches/gcc-8-branch) @@ -0,0 +1,4 @@ +// PR c++/86728 +// { dg-do compile { target c++14 } } + +auto c = [](auto x ...) { }; Index: gcc/testsuite/g++.dg/cpp1y/constexpr-86767.C =================================================================== --- gcc/testsuite/g++.dg/cpp1y/constexpr-86767.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp1y/constexpr-86767.C (.../branches/gcc-8-branch) @@ -0,0 +1,119 @@ +// PR c++/86767 +// { dg-do compile { target c++14 } } + +constexpr int +fn0 () noexcept +{ + int r = 0; + for (int i = 0; i < 10; ++i) + { + continue; + r++; + for (int j = 0; j < 10; ++j ) + { + } + } + return r; +} +static_assert (fn0 () == 0, ""); + +constexpr int +fn1 () noexcept +{ + int r = 0; + for (int i = 0; i < 10; ++i) + for (int j = 0; j < 10; ++j) + { + continue; + r++; + } + return r; +} +static_assert (fn1 () == 0, ""); + +constexpr int +fn2 () noexcept +{ + int r = 0; + for (int i = 0; i < 10; ++i) + { + continue; + r++; + } + return r; +} +static_assert (fn2 () == 0, ""); + +constexpr int +fn3 () noexcept +{ + int r = 0; + for (int i = 0; i < 10; ++i) + { + continue; + r++; + while (1) + { + } + } + return r; +} +static_assert (fn3 () == 0, ""); + +constexpr int +fn4 () noexcept +{ + for (int i = 0; i < 10; ++i) + { + switch (i) + { + case 5: + return i; + default: + continue; + } + while (1) + { + } + } + return 0; +} +static_assert (fn4 () == 5, ""); + +constexpr int +fn5 () noexcept +{ + for (int i = 0; i < 10; ++i) + { + switch (i) + { + case 0: + case 1: + case 2: + case 3: + case 4: + continue; + default: + return i; + } + while (1) + { + } + } + return 0; +} +static_assert (fn5 () == 5, ""); + +constexpr int +fn6 () noexcept +{ + int r = 0; + for (int i = 0; i < 10; ++i) + { + continue; + for (int j = 0; j < 10; ++j ) + r++; + } + return r; +} +static_assert (fn6 () == 0, ""); Index: gcc/testsuite/g++.dg/cpp1z/decomp46.C =================================================================== --- gcc/testsuite/g++.dg/cpp1z/decomp46.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp1z/decomp46.C (.../branches/gcc-8-branch) @@ -0,0 +1,25 @@ +// PR c++/86836 +// { dg-do compile { target c++11 } } +// { dg-options "" } + +struct A { + int operator*(); + void operator++(); + bool operator!=(A); +}; +template class map { +public: + A begin(); + A end(); +}; + +template void mergemap(map orig, map toadd) { + for (auto p : toadd) + auto [orig] = orig; // { dg-error "use of 'orig' before deduction of 'auto'" } +} // { dg-warning "structured bindings only available with" "" { target c++14_down } .-1 } + +int +main() { + map x, y; + mergemap(x, y); +} Index: gcc/testsuite/g++.dg/cpp1z/decomp47.C =================================================================== --- gcc/testsuite/g++.dg/cpp1z/decomp47.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/cpp1z/decomp47.C (.../branches/gcc-8-branch) @@ -0,0 +1,32 @@ +// PR c++/87122 +// { dg-do run { target c++14 } } +// { dg-options "" } + +extern "C" void abort (); +struct S { int a, b; }; +int c; + +template +void +foo () +{ + S x[4] = { { N, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } }; + auto f = [](auto & y) { + for (auto & [ u, v ] : y) // { dg-warning "structured bindings only available with" "" { target c++14_down } } + { + if ((u & 1) != 1 || v != u + 1 || u < N || u > 7 || (c & (1 << u)) + || &u != &y[v / 2 - 1].a || &v != &y[v / 2 - 1].b) + abort (); + c |= 1 << u; + } + }; + f (x); +} + +int +main () +{ + foo<1> (); + if (c != 0xaa) + abort (); +} Index: gcc/testsuite/g++.dg/ext/is_constructible2.C =================================================================== --- gcc/testsuite/g++.dg/ext/is_constructible2.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/ext/is_constructible2.C (.../branches/gcc-8-branch) @@ -0,0 +1,12 @@ +// { dg-do compile { target c++11 } } + +#include + +template struct x { + operator bool() { + static_assert(!std::is_same::value, ""); + return false; + } +}; + +static constexpr auto a = __is_constructible(bool, x); Index: gcc/testsuite/g++.dg/abi/pr87137.C =================================================================== --- gcc/testsuite/g++.dg/abi/pr87137.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/abi/pr87137.C (.../branches/gcc-8-branch) @@ -0,0 +1,40 @@ +// PR c++/87137 + +// Empty macro args are undefined in C++ 98 +// { dg-do compile { target c++11 } } + +// We got confused by non-field decls separating bitfields when +// ms_bitfield_layout was in effect. + +#if defined (__x86_64__) || defined (__i686__) || defined (__powerpc__) +#define ATTRIB __attribute__((ms_struct)) +#elif defined (__superh__) +#define ATTRIB __attribute__((renesas)) +#else +#define ATTRIB +#endif + +#define DEFINE(NAME,BASE,THING) \ + struct ATTRIB NAME BASE { \ + unsigned one : 12; \ + THING \ + unsigned two : 4; \ + } + +template struct Test; +template struct Test {}; + +#define TEST(NAME,BASE,THING) \ + DEFINE(NAME##_WITH,BASE,THING); \ + DEFINE(NAME##_WITHOUT,BASE,); \ + int NAME = sizeof (Test) + +TEST(NSFun,,int fun ();); +TEST(SFun,,static int fun ();); +TEST(Tdef,,typedef int tdef;); + +TEST(Var,,static int var;); +struct base { int f; }; +TEST(Use,:base,using base::f;); +TEST(Tmpl,,template class X {};); +TEST(TmplFN,,template void fu ();); Index: gcc/testsuite/g++.dg/template/pr86706.C =================================================================== --- gcc/testsuite/g++.dg/template/pr86706.C (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/g++.dg/template/pr86706.C (.../branches/gcc-8-branch) @@ -0,0 +1,16 @@ +// PR c++/86706 +// { dg-do compile } + +class A { int b; }; + +template +class C : A { C (); static C *f; }; + +template +C *C::f; + +template +C::C () +{ + f->b; +} Index: gcc/testsuite/c-c++-common/torture/pr87248.c =================================================================== --- gcc/testsuite/c-c++-common/torture/pr87248.c (.../tags/gcc_8_2_0_release) 1970-01-01 01:00:00.000000000 +0100 +++ gcc/testsuite/c-c++-common/torture/pr87248.c (.../branches/gcc-8-branch) @@ -0,0 +1,36 @@ +/* PR middle-end/87248 */ +/* { dg-do run } */ + +void +foo (signed char *p, int q) +{ + *p = q & (-__SCHAR_MAX__ - 1) ? (-__SCHAR_MAX__ - 1) : 0; +} + +int +bar (long long x) +{ + return x & (-__INT_MAX__ - 1) ? (-__INT_MAX__ - 1) : 0; +} + +int +main () +{ +#if __INT_MAX__ > 4 * __SCHAR_MAX__ + signed char a[4]; + foo (a, __SCHAR_MAX__ + 1U); + foo (a + 1, 2 * (__SCHAR_MAX__ + 1U)); + foo (a + 2, -__INT_MAX__ - 1); + foo (a + 3, (__SCHAR_MAX__ + 1U) / 2); + if (a[0] != (-__SCHAR_MAX__ - 1) || a[1] != a[0] || a[2] != a[0] || a[3] != 0) + __builtin_abort (); +#endif +#if __LONG_LONG_MAX__ > 4 * __INT_MAX__ + if (bar (__INT_MAX__ + 1LL) != (-__INT_MAX__ - 1) + || bar (2 * (__INT_MAX__ + 1LL)) != (-__INT_MAX__ - 1) + || bar (-__LONG_LONG_MAX__ - 1) != (-__INT_MAX__ - 1) + || bar ((__INT_MAX__ + 1LL) / 2) != 0) + __builtin_abort (); +#endif + return 0; +} Index: gcc/cp/typeck.c =================================================================== --- gcc/cp/typeck.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/typeck.c (.../branches/gcc-8-branch) @@ -5353,6 +5353,7 @@ otherwise, it will be given type RESULT_TYPE. */ if (! converted) { + warning_sentinel w (warn_sign_conversion, short_compare); if (TREE_TYPE (op0) != result_type) op0 = cp_convert_and_check (result_type, op0, complain); if (TREE_TYPE (op1) != result_type) Index: gcc/cp/class.c =================================================================== --- gcc/cp/class.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/class.c (.../branches/gcc-8-branch) @@ -278,6 +278,9 @@ probe = TYPE_MAIN_VARIANT (TREE_TYPE (expr)); if (want_pointer) probe = TYPE_MAIN_VARIANT (TREE_TYPE (probe)); + if (dependent_type_p (probe)) + if (tree open = currently_open_class (probe)) + probe = open; if (code == PLUS_EXPR && !SAME_BINFO_TYPE_P (BINFO_TYPE (d_binfo), probe)) @@ -6243,6 +6246,7 @@ bitsize_int (BITS_PER_UNIT))); SET_TYPE_ALIGN (base_t, rli->record_align); TYPE_USER_ALIGN (base_t) = TYPE_USER_ALIGN (t); + TYPE_TYPELESS_STORAGE (base_t) = TYPE_TYPELESS_STORAGE (t); /* Copy the non-static data members of T. This will include its direct non-virtual bases & vtable. */ Index: gcc/cp/decl.c =================================================================== --- gcc/cp/decl.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/decl.c (.../branches/gcc-8-branch) @@ -15557,6 +15557,18 @@ tree stmt = cp_build_modify_expr (input_location, vtbl_ptr, NOP_EXPR, vtbl, tf_warning_or_error); + /* If the vptr is shared with some virtual nearly empty base, + don't clear it if not in charge, the dtor of the virtual + nearly empty base will do that later. */ + if (CLASSTYPE_VBASECLASSES (current_class_type) + && CLASSTYPE_PRIMARY_BINFO (current_class_type) + && BINFO_VIRTUAL_P + (CLASSTYPE_PRIMARY_BINFO (current_class_type))) + { + stmt = convert_to_void (stmt, ICV_STATEMENT, + tf_warning_or_error); + stmt = build_if_in_charge (stmt); + } finish_decl_cleanup (NULL_TREE, stmt); } else Index: gcc/cp/method.c =================================================================== --- gcc/cp/method.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/method.c (.../branches/gcc-8-branch) @@ -1144,11 +1144,11 @@ constructible_expr (tree to, tree from) { tree expr; + cp_unevaluated cp_uneval_guard; if (CLASS_TYPE_P (to)) { tree ctype = to; vec *args = NULL; - cp_unevaluated cp_uneval_guard; if (TREE_CODE (to) != REFERENCE_TYPE) to = cp_build_reference_type (to, /*rval*/false); tree ob = build_stub_object (to); @@ -2405,7 +2405,7 @@ /* Add it to the class */ bool added = add_method (type, fn, false); - gcc_assert (added); + gcc_assert (added || errorcount); /* Add it to TYPE_FIELDS. */ if (sfk == sfk_destructor Index: gcc/cp/constexpr.c =================================================================== --- gcc/cp/constexpr.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/constexpr.c (.../branches/gcc-8-branch) @@ -2066,6 +2066,7 @@ { if (!ctx->quiet) error ("arithmetic involving a null pointer in %qE", lhs); + *non_constant_p = true; return t; } else if (code == POINTER_PLUS_EXPR) @@ -2506,9 +2507,13 @@ lval, non_constant_p, overflow_p); if (INDIRECT_REF_P (whole) - && integer_zerop (TREE_OPERAND (whole, 0)) - && !ctx->quiet) - error ("dereferencing a null pointer in %qE", orig_whole); + && integer_zerop (TREE_OPERAND (whole, 0))) + { + if (!ctx->quiet) + error ("dereferencing a null pointer in %qE", orig_whole); + *non_constant_p = true; + return t; + } if (TREE_CODE (whole) == PTRMEM_CST) whole = cplus_expand_constant (whole); @@ -3926,6 +3931,16 @@ for (i = tsi_start (t); !tsi_end_p (i); tsi_next (&i)) { tree stmt = tsi_stmt (i); + /* We've found a continue, so skip everything until we reach + the label its jumping to. */ + if (continues (jump_target)) + { + if (label_matches (ctx, jump_target, stmt)) + /* Found it. */ + *jump_target = NULL_TREE; + else + continue; + } if (TREE_CODE (stmt) == DEBUG_BEGIN_STMT) continue; r = cxx_eval_constant_expression (ctx, stmt, false, Index: gcc/cp/ChangeLog =================================================================== --- gcc/cp/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/cp/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,114 @@ +2018-10-03 Martin Liska + + Backport from mainline + 2018-10-03 Martin Liska + + PR gcov-profile/86109 + * parser.c (cp_parser_lambda_declarator_opt): + Set DECL_LAMBDA_FUNCTION for lambdas. + +2018-09-24 Paolo Carlini + + PR c++/85070 + * method.c (lazily_declare_fn): During error-recovery add_method + may return false. + +2018-09-18 Nathan Sidwell + + PR c++/86881 + * name-lookup.c (check_local_shadow): Ignore auto types. + +2018-09-13 Ville Voutilainen + + Backport from mainline + 2018-09-13 Ville Voutilainen + gcc/cp + + PR c++/87093 + * method.c (constructible_expr): We're in an unevaluated context + in all cases, not just for class targets. + + testsuite/ + + PR c++/87093 + * g++.dg/ext/is_constructible2.C: New. + +2018-09-05 Pádraig Brady + + PR c++/87185 + * lambda.c (prune_lambda_captures): Protect against const_vars.get + returning NULL. + +2018-09-05 Jakub Jelinek + + Backported from mainline + 2018-08-29 Jakub Jelinek + + PR c++/87095 + * decl.c (begin_destructor_body): If current_class_type has + virtual bases and the primary base is nearly empty virtual base, + voidify clearing of vptr and make it conditional on in-charge + argument. + + 2018-08-08 Jakub Jelinek + + PR c++/86836 + * pt.c (tsubst_expr): For structured bindings, call tsubst_decomp_names + before tsubst_init, not after it. + + PR c++/86738 + * constexpr.c (cxx_eval_binary_expression): For arithmetics involving + NULL pointer set *non_constant_p to true. + (cxx_eval_component_reference): For dereferencing of a NULL pointer, + set *non_constant_p to true and return t. + + 2018-08-03 Jason Merrill + + PR c++/86706 + * class.c (build_base_path): Use currently_open_class. + +2018-08-31 Nathan Sidwell + + PR c++/87155 + PR c++/84707 + * name-lookup.c (name_lookup::search_namespace): Don't look at + inlines when searching for NULL names. + +2018-08-29 Jakub Jelinek + + PR c++/87122 + * pt.c (tsubst_expr) : If + processing_template_decl and decl is structured binding decl, call + cp_finish_decomp. + +2018-08-17 Richard Biener + + Backport from mainline + 2018-08-02 Richard Biener + + PR c++/86763 + * class.c (layout_class_type): Copy TYPE_TYPELESS_STORAGE + to the CLASSTYPE_AS_BASE. + +2018-08-10 Jason Merrill + + PR c++/86728 - C variadic generic lambda. + * parser.c (cp_parser_parameter_declaration): Don't turn 'auto' into + a pack if it's followed by a declarator-id. + +2018-08-08 Marek Polacek + + Backport from mainline + 2018-08-06 Marek Polacek + + PR c++/86767 + * constexpr.c (cxx_eval_statement_list): Handle continue. + +2018-08-01 Marek Polacek + + PR c++/86190 - bogus -Wsign-conversion warning + * typeck.c (cp_build_binary_op): Add a warning sentinel. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/cp/pt.c =================================================================== --- gcc/cp/pt.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/pt.c (.../branches/gcc-8-branch) @@ -16734,8 +16734,18 @@ else { int const_init = false; + unsigned int cnt = 0; + tree first = NULL_TREE, ndecl = error_mark_node; maybe_push_decl (decl); + if (VAR_P (decl) + && DECL_DECOMPOSITION_P (decl) + && TREE_TYPE (pattern_decl) != error_mark_node) + ndecl = tsubst_decomp_names (decl, pattern_decl, args, + complain, in_decl, &first, + &cnt); + + if (VAR_P (decl) && DECL_PRETTY_FUNCTION_P (decl)) { /* For __PRETTY_FUNCTION__ we have to adjust the @@ -16750,23 +16760,14 @@ if (VAR_P (decl)) const_init = (DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P (pattern_decl)); - if (VAR_P (decl) - && DECL_DECOMPOSITION_P (decl) - && TREE_TYPE (pattern_decl) != error_mark_node) - { - unsigned int cnt; - tree first; - tree ndecl - = tsubst_decomp_names (decl, pattern_decl, args, - complain, in_decl, &first, &cnt); - if (ndecl != error_mark_node) - cp_maybe_mangle_decomp (ndecl, first, cnt); - cp_finish_decl (decl, init, const_init, NULL_TREE, 0); - if (ndecl != error_mark_node) - cp_finish_decomp (ndecl, first, cnt); - } - else - cp_finish_decl (decl, init, const_init, NULL_TREE, 0); + + if (ndecl != error_mark_node) + cp_maybe_mangle_decomp (ndecl, first, cnt); + + cp_finish_decl (decl, init, const_init, NULL_TREE, 0); + + if (ndecl != error_mark_node) + cp_finish_decomp (ndecl, first, cnt); } } } @@ -16816,6 +16817,8 @@ RANGE_FOR_IVDEP (stmt) = RANGE_FOR_IVDEP (t); RANGE_FOR_UNROLL (stmt) = RANGE_FOR_UNROLL (t); finish_range_for_decl (stmt, decl, expr); + if (decomp_first && decl != error_mark_node) + cp_finish_decomp (decl, decomp_first, decomp_cnt); } else { Index: gcc/cp/parser.c =================================================================== --- gcc/cp/parser.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/parser.c (.../branches/gcc-8-branch) @@ -10620,6 +10620,7 @@ DECL_ARTIFICIAL (fco) = 1; /* Give the object parameter a different name. */ DECL_NAME (DECL_ARGUMENTS (fco)) = get_identifier ("__closure"); + DECL_LAMBDA_FUNCTION (fco) = 1; if (return_type) TYPE_HAS_LATE_RETURN_TYPE (TREE_TYPE (fco)) = 1; } @@ -21598,7 +21599,8 @@ parameter was introduced during cp_parser_parameter_declaration, change any implicit parameters introduced into packs. */ if (parser->implicit_template_parms - && (token->type == CPP_ELLIPSIS + && ((token->type == CPP_ELLIPSIS + && declarator_can_be_parameter_pack (declarator)) || (declarator && declarator->parameter_pack_p))) { int latest_template_parm_idx = TREE_VEC_LENGTH Index: gcc/cp/lambda.c =================================================================== --- gcc/cp/lambda.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/lambda.c (.../branches/gcc-8-branch) @@ -1511,8 +1511,8 @@ tree cap = *capp; if (tree var = var_to_maybe_prune (cap)) { - tree *use = *const_vars.get (var); - if (TREE_CODE (*use) == DECL_EXPR) + tree **use = const_vars.get (var); + if (use && TREE_CODE (**use) == DECL_EXPR) { /* All uses of this capture were folded away, leaving only the proxy declaration. */ @@ -1527,7 +1527,7 @@ *fieldp = DECL_CHAIN (*fieldp); /* And remove the capture proxy declaration. */ - *use = void_node; + **use = void_node; continue; } } Index: gcc/cp/name-lookup.c =================================================================== --- gcc/cp/name-lookup.c (.../tags/gcc_8_2_0_release) +++ gcc/cp/name-lookup.c (.../branches/gcc-8-branch) @@ -560,12 +560,15 @@ /* Look in exactly namespace. */ bool found = search_namespace_only (scope); - - /* Recursively look in its inline children. */ - if (vec *inlinees = DECL_NAMESPACE_INLINEES (scope)) - for (unsigned ix = inlinees->length (); ix--;) - found |= search_namespace ((*inlinees)[ix]); + /* Don't look into inline children, if we're looking for an + anonymous name -- it must be in the current scope, if anywhere. */ + if (name) + /* Recursively look in its inline children. */ + if (vec *inlinees = DECL_NAMESPACE_INLINEES (scope)) + for (unsigned ix = inlinees->length (); ix--;) + found |= search_namespace ((*inlinees)[ix]); + if (found) mark_found (scope); @@ -2737,6 +2740,13 @@ && (same_type_p (TREE_TYPE (old), TREE_TYPE (decl)) || (!dependent_type_p (TREE_TYPE (decl)) && !dependent_type_p (TREE_TYPE (old)) + /* If the new decl uses auto, we don't yet know + its type (the old type cannot be using auto + at this point, without also being + dependent). This is an indication we're + (now) doing the shadow checking too + early. */ + && !type_uses_auto (TREE_TYPE (decl)) && can_convert (TREE_TYPE (old), TREE_TYPE (decl), tf_none)))) warning_code = OPT_Wshadow_compatible_local; Index: gcc/dojump.c =================================================================== --- gcc/dojump.c (.../tags/gcc_8_2_0_release) +++ gcc/dojump.c (.../branches/gcc-8-branch) @@ -1214,15 +1214,15 @@ code = unsignedp ? unsigned_code : signed_code; /* If function pointers need to be "canonicalized" before they can - be reliably compared, then canonicalize them. - Only do this if *both* sides of the comparison are function pointers. - If one side isn't, we want a noncanonicalized comparison. See PR - middle-end/17564. */ + be reliably compared, then canonicalize them. Canonicalize the + expression when one of the operands is a function pointer. This + handles the case where the other operand is a void pointer. See + PR middle-end/17564. */ if (targetm.have_canonicalize_funcptr_for_compare () - && POINTER_TYPE_P (TREE_TYPE (treeop0)) - && POINTER_TYPE_P (TREE_TYPE (treeop1)) - && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (treeop0))) - && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (treeop1)))) + && ((POINTER_TYPE_P (TREE_TYPE (treeop0)) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (treeop0)))) + || (POINTER_TYPE_P (TREE_TYPE (treeop1)) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (treeop1)))))) { rtx new_op0 = gen_reg_rtx (mode); rtx new_op1 = gen_reg_rtx (mode); Index: gcc/tree-ssa-math-opts.c =================================================================== --- gcc/tree-ssa-math-opts.c (.../tags/gcc_8_2_0_release) +++ gcc/tree-ssa-math-opts.c (.../branches/gcc-8-branch) @@ -422,6 +422,8 @@ gsi_next (&gsi); gsi_insert_before (&gsi, new_stmt, GSI_SAME_STMT); + if (should_insert_square_recip) + gsi_insert_before (&gsi, new_square_stmt, GSI_SAME_STMT); } else if (def_gsi && occ->bb == def_gsi->bb) { @@ -429,8 +431,9 @@ never happen if the definition statement can throw, because in that case the sole successor of the statement's basic block will dominate all the uses as well. */ - gsi = *def_gsi; gsi_insert_after (def_gsi, new_stmt, GSI_NEW_STMT); + if (should_insert_square_recip) + gsi_insert_after (def_gsi, new_square_stmt, GSI_NEW_STMT); } else { @@ -437,13 +440,10 @@ /* Case 3: insert in a basic block not containing defs/uses. */ gsi = gsi_after_labels (occ->bb); gsi_insert_before (&gsi, new_stmt, GSI_SAME_STMT); + if (should_insert_square_recip) + gsi_insert_before (&gsi, new_square_stmt, GSI_SAME_STMT); } - /* Regardless of which case the reciprocal as inserted in, - we insert the square immediately after the reciprocal. */ - if (should_insert_square_recip) - gsi_insert_before (&gsi, new_square_stmt, GSI_SAME_STMT); - reciprocal_stats.rdivs_inserted++; occ->recip_def_stmt = new_stmt; Index: gcc/dwarf2out.c =================================================================== --- gcc/dwarf2out.c (.../tags/gcc_8_2_0_release) +++ gcc/dwarf2out.c (.../branches/gcc-8-branch) @@ -28472,7 +28472,7 @@ debug_str_section = get_section (DEBUG_LTO_STR_SECTION, DEBUG_STR_SECTION_FLAGS | SECTION_EXCLUDE, NULL); - if (!dwarf_split_debug_info && !output_asm_line_debug_info ()) + if (!dwarf_split_debug_info) debug_line_str_section = get_section (DEBUG_LTO_LINE_STR_SECTION, DEBUG_STR_SECTION_FLAGS | SECTION_EXCLUDE, NULL); @@ -31074,6 +31074,11 @@ /* Remove indirect string decisions. */ debug_str_hash->traverse (NULL); + if (debug_line_str_hash) + { + debug_line_str_hash->traverse (NULL); + debug_line_str_hash = NULL; + } } #if ENABLE_ASSERT_CHECKING @@ -31330,8 +31335,8 @@ switch_to_section (debug_loc_section); if (dwarf_version >= 5) { - ASM_GENERATE_INTERNAL_LABEL (l1, DEBUG_LOC_SECTION_LABEL, 1); - ASM_GENERATE_INTERNAL_LABEL (l2, DEBUG_LOC_SECTION_LABEL, 2); + ASM_GENERATE_INTERNAL_LABEL (l1, DEBUG_LOC_SECTION_LABEL, 2); + ASM_GENERATE_INTERNAL_LABEL (l2, DEBUG_LOC_SECTION_LABEL, 3); if (DWARF_INITIAL_LENGTH_SIZE - DWARF_OFFSET_SIZE == 4) dw2_asm_output_data (4, 0xffffffff, "Initial length escape value indicating " @@ -31832,10 +31837,10 @@ /* Do not generate DWARF assembler now when not producing LTO bytecode. */ if ((!flag_generate_lto && !flag_generate_offload) - /* FIXME: Disable debug info generation for PE-COFF targets since the + /* FIXME: Disable debug info generation for (PE-)COFF targets since the copy_lto_debug_sections operation of the simple object support in libiberty is not implemented for them yet. */ - || TARGET_PECOFF) + || TARGET_PECOFF || TARGET_COFF) return; /* Now as we are going to output for LTO initialize sections and labels @@ -31950,6 +31955,13 @@ /* If we emitted any indirect strings, output the string table too. */ if (debug_str_hash || skeleton_debug_str_hash) output_indirect_strings (); + if (debug_line_str_hash) + { + switch_to_section (debug_line_str_section); + const enum dwarf_form form = DW_FORM_line_strp; + debug_line_str_hash->traverse (form); + } /* Switch back to the text section. */ switch_to_section (text_section); Index: gcc/match.pd =================================================================== --- gcc/match.pd (.../tags/gcc_8_2_0_release) +++ gcc/match.pd (.../branches/gcc-8-branch) @@ -3462,8 +3462,8 @@ /* Disable this optimization if we're casting a function pointer type on targets that require function pointer canonicalization. */ && !(targetm.have_canonicalize_funcptr_for_compare () - && TREE_CODE (TREE_TYPE (@00)) == POINTER_TYPE - && TREE_CODE (TREE_TYPE (TREE_TYPE (@00))) == FUNCTION_TYPE) + && POINTER_TYPE_P (TREE_TYPE (@00)) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (@00)))) && single_use (@0)) (if (TYPE_PRECISION (TREE_TYPE (@00)) == TYPE_PRECISION (TREE_TYPE (@0)) && (TREE_CODE (@10) == INTEGER_CST Index: gcc/expr.c =================================================================== --- gcc/expr.c (.../tags/gcc_8_2_0_release) +++ gcc/expr.c (.../branches/gcc-8-branch) @@ -11532,12 +11532,10 @@ /* We won't bother with store-flag operations involving function pointers when function pointers must be canonicalized before comparisons. */ if (targetm.have_canonicalize_funcptr_for_compare () - && ((TREE_CODE (TREE_TYPE (arg0)) == POINTER_TYPE - && (TREE_CODE (TREE_TYPE (TREE_TYPE (arg0))) - == FUNCTION_TYPE)) - || (TREE_CODE (TREE_TYPE (arg1)) == POINTER_TYPE - && (TREE_CODE (TREE_TYPE (TREE_TYPE (arg1))) - == FUNCTION_TYPE)))) + && ((POINTER_TYPE_P (TREE_TYPE (arg0)) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (arg0)))) + || (POINTER_TYPE_P (TREE_TYPE (arg1)) + && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (arg1)))))) return 0; STRIP_NOPS (arg0); Index: gcc/ada/libgnarl/s-osinte__solaris.ads =================================================================== --- gcc/ada/libgnarl/s-osinte__solaris.ads (.../tags/gcc_8_2_0_release) +++ gcc/ada/libgnarl/s-osinte__solaris.ads (.../branches/gcc-8-branch) @@ -536,17 +536,18 @@ end record; pragma Convention (C, record_type_3); + type upad64_t is new Interfaces.Unsigned_64; + type mutex_t is record flags : record_type_3; - lock : String (1 .. 8); - data : String (1 .. 8); + lock : upad64_t; + data : upad64_t; end record; pragma Convention (C, mutex_t); type cond_t is record - flag : array_type_9; - Xtype : unsigned_long; - data : String (1 .. 8); + flags : record_type_3; + data : upad64_t; end record; pragma Convention (C, cond_t); Index: gcc/ada/ChangeLog =================================================================== --- gcc/ada/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/ada/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,12 @@ +2018-09-13 Eric Botcazou + + Backport from mainline + 2018-07-31 Eric Botcazou + + * libgnarl/s-osinte__solaris.ads (upad64_t): New private type. + (mutex_t): Use it for 'lock' and 'data' components. + (cond_t): Likewise for 'data' and use single 'flags' component. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/common/config/i386/i386-common.c =================================================================== --- gcc/common/config/i386/i386-common.c (.../tags/gcc_8_2_0_release) +++ gcc/common/config/i386/i386-common.c (.../branches/gcc-8-branch) @@ -59,7 +59,7 @@ #define OPTION_MASK_ISA_FXSR_SET OPTION_MASK_ISA_FXSR #define OPTION_MASK_ISA_XSAVE_SET OPTION_MASK_ISA_XSAVE #define OPTION_MASK_ISA_XSAVEOPT_SET \ - (OPTION_MASK_ISA_XSAVEOPT | OPTION_MASK_ISA_XSAVE) + (OPTION_MASK_ISA_XSAVEOPT | OPTION_MASK_ISA_XSAVE_SET) #define OPTION_MASK_ISA_AVX512F_SET \ (OPTION_MASK_ISA_AVX512F | OPTION_MASK_ISA_AVX2_SET) #define OPTION_MASK_ISA_AVX512CD_SET \ @@ -95,9 +95,9 @@ #define OPTION_MASK_ISA_PREFETCHWT1_SET OPTION_MASK_ISA_PREFETCHWT1 #define OPTION_MASK_ISA_CLFLUSHOPT_SET OPTION_MASK_ISA_CLFLUSHOPT #define OPTION_MASK_ISA_XSAVES_SET \ - (OPTION_MASK_ISA_XSAVES | OPTION_MASK_ISA_XSAVE) + (OPTION_MASK_ISA_XSAVES | OPTION_MASK_ISA_XSAVE_SET) #define OPTION_MASK_ISA_XSAVEC_SET \ - (OPTION_MASK_ISA_XSAVEC | OPTION_MASK_ISA_XSAVE) + (OPTION_MASK_ISA_XSAVEC | OPTION_MASK_ISA_XSAVE_SET) #define OPTION_MASK_ISA_CLWB_SET OPTION_MASK_ISA_CLWB /* SSE4 includes both SSE4.1 and SSE4.2. -msse4 should be the same @@ -183,7 +183,8 @@ #define OPTION_MASK_ISA_FMA_UNSET OPTION_MASK_ISA_FMA #define OPTION_MASK_ISA_FXSR_UNSET OPTION_MASK_ISA_FXSR #define OPTION_MASK_ISA_XSAVE_UNSET \ - (OPTION_MASK_ISA_XSAVE | OPTION_MASK_ISA_XSAVEOPT_UNSET) + (OPTION_MASK_ISA_XSAVE | OPTION_MASK_ISA_XSAVEOPT_UNSET \ + | OPTION_MASK_ISA_XSAVES_UNSET | OPTION_MASK_ISA_XSAVEC_UNSET) #define OPTION_MASK_ISA_XSAVEOPT_UNSET OPTION_MASK_ISA_XSAVEOPT #define OPTION_MASK_ISA_AVX2_UNSET \ (OPTION_MASK_ISA_AVX2 | OPTION_MASK_ISA_AVX512F_UNSET) Index: gcc/asan.c =================================================================== --- gcc/asan.c (.../tags/gcc_8_2_0_release) +++ gcc/asan.c (.../branches/gcc-8-branch) @@ -253,7 +253,7 @@ /* Set of variable declarations that are going to be guarded by use-after-scope sanitizer. */ -static hash_set *asan_handled_variables = NULL; +hash_set *asan_handled_variables = NULL; hash_set *asan_used_labels = NULL; Index: gcc/asan.h =================================================================== --- gcc/asan.h (.../tags/gcc_8_2_0_release) +++ gcc/asan.h (.../branches/gcc-8-branch) @@ -110,6 +110,8 @@ extern bool asan_sanitize_allocas_p (void); +extern hash_set *asan_handled_variables; + /* Return TRUE if builtin with given FCODE will be intercepted by libasan. */ Index: gcc/fortran/interface.c =================================================================== --- gcc/fortran/interface.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/interface.c (.../branches/gcc-8-branch) @@ -735,6 +735,13 @@ if (s2->attr.ext_attr & (1 << EXT_ATTR_NO_ARG_CHECK)) return true; + return gfc_compare_types (&s1->ts, &s2->ts) || s2->ts.type == BT_ASSUMED; +} + + +static bool +compare_type_characteristics (gfc_symbol *s1, gfc_symbol *s2) +{ /* TYPE and CLASS of the same declared type are type compatible, but have different characteristics. */ if ((s1->ts.type == BT_CLASS && s2->ts.type == BT_DERIVED) @@ -741,7 +748,7 @@ || (s1->ts.type == BT_DERIVED && s2->ts.type == BT_CLASS)) return false; - return gfc_compare_types (&s1->ts, &s2->ts) || s2->ts.type == BT_ASSUMED; + return compare_type (s1, s2); } @@ -1291,7 +1298,8 @@ /* Check type and rank. */ if (type_must_agree) { - if (!compare_type (s1, s2) || !compare_type (s2, s1)) + if (!compare_type_characteristics (s1, s2) + || !compare_type_characteristics (s2, s1)) { snprintf (errmsg, err_len, "Type mismatch in argument '%s' (%s/%s)", s1->name, gfc_typename (&s1->ts), gfc_typename (&s2->ts)); @@ -1510,7 +1518,7 @@ return true; /* Check type and rank. */ - if (!compare_type (r1, r2)) + if (!compare_type_characteristics (r1, r2)) { snprintf (errmsg, err_len, "Type mismatch in function result (%s/%s)", gfc_typename (&r1->ts), gfc_typename (&r2->ts)); Index: gcc/fortran/trans-expr.c =================================================================== --- gcc/fortran/trans-expr.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/trans-expr.c (.../branches/gcc-8-branch) @@ -1505,7 +1505,6 @@ gfc_start_block (&block); lhs = gfc_copy_expr (code->expr1); - gfc_add_data_component (lhs); rhs = gfc_copy_expr (code->expr1); gfc_add_vptr_component (rhs); @@ -1523,11 +1522,15 @@ { gfc_array_spec *tmparr = gfc_get_array_spec (); *tmparr = *CLASS_DATA (code->expr1)->as; + /* Adding the array ref to the class expression results in correct + indexing to the dynamic type. */ gfc_add_full_array_ref (lhs, tmparr); tmp = gfc_trans_class_array_init_assign (rhs, lhs, code->expr1); } else { + /* Scalar initialization needs the _data component. */ + gfc_add_data_component (lhs); sz = gfc_copy_expr (code->expr1); gfc_add_vptr_component (sz); gfc_add_size_component (sz); @@ -2234,7 +2237,8 @@ if (!cl->length) { gfc_expr* expr_flat; - gcc_assert (expr); + if (!expr) + return; expr_flat = gfc_copy_expr (expr); flatten_array_ctors_without_strlen (expr_flat); gfc_resolve_expr (expr_flat); Index: gcc/fortran/trans-array.c =================================================================== --- gcc/fortran/trans-array.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/trans-array.c (.../branches/gcc-8-branch) @@ -3414,11 +3414,7 @@ if (is_pointer_array (info->descriptor)) { if (TREE_CODE (info->descriptor) == COMPONENT_REF) - { - decl = gfc_evaluate_now (info->descriptor, &se->pre); - GFC_DECL_PTR_ARRAY_P (decl) = 1; - TREE_USED (decl) = 1; - } + decl = info->descriptor; else if (TREE_CODE (info->descriptor) == INDIRECT_REF) decl = TREE_OPERAND (info->descriptor, 0); @@ -3659,11 +3655,7 @@ && is_pointer_array (se->expr)) { if (TREE_CODE (se->expr) == COMPONENT_REF) - { - decl = gfc_evaluate_now (se->expr, &se->pre); - GFC_DECL_PTR_ARRAY_P (decl) = 1; - TREE_USED (decl) = 1; - } + decl = se->expr; else if (TREE_CODE (se->expr) == INDIRECT_REF) decl = TREE_OPERAND (se->expr, 0); else @@ -9505,6 +9497,9 @@ sym = expr->symtree->n.sym; + if (sym->attr.associate_var) + return false; + /* An allocatable class variable with no reference. */ if (sym->ts.type == BT_CLASS && CLASS_DATA (sym)->attr.allocatable Index: gcc/fortran/decl.c =================================================================== --- gcc/fortran/decl.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/decl.c (.../branches/gcc-8-branch) @@ -10557,7 +10557,8 @@ done: if (ba->access == ACCESS_UNKNOWN) - ba->access = gfc_typebound_default_access; + ba->access = ppc ? gfc_current_block()->component_access + : gfc_typebound_default_access; if (ppc && !seen_ptr) { Index: gcc/fortran/gfortran.h =================================================================== --- gcc/fortran/gfortran.h (.../tags/gcc_8_2_0_release) +++ gcc/fortran/gfortran.h (.../branches/gcc-8-branch) @@ -191,7 +191,8 @@ /* Arithmetic results. */ enum arith { ARITH_OK = 1, ARITH_OVERFLOW, ARITH_UNDERFLOW, ARITH_NAN, - ARITH_DIV0, ARITH_INCOMMENSURATE, ARITH_ASYMMETRIC, ARITH_PROHIBIT + ARITH_DIV0, ARITH_INCOMMENSURATE, ARITH_ASYMMETRIC, ARITH_PROHIBIT, + ARITH_WRONGCONCAT }; /* Statements. */ Index: gcc/fortran/ChangeLog =================================================================== --- gcc/fortran/ChangeLog (.../tags/gcc_8_2_0_release) +++ gcc/fortran/ChangeLog (.../branches/gcc-8-branch) @@ -1,3 +1,128 @@ +2018-10-08 Paul Thomas + + PR fortran/83999 + Backport from trunk + * resolve.c (resolve_fl_procedure): Include class functions in + the test that elemental function results be scalar. + +2018-10-08 Paul Thomas + + Backport from trunk + PR fortran/86372 + * trans-stmt.c (trans_associate_var): Character associate names + with variable string length do not have to be deferred length + for the string length to be set, if variable. + +2018-10-06 Thomas Koenig + + PR fortran/86111 + Backport from trunk + * gfortran.h (enum arith): Add ARITH_WRONGCONCAT. + * arith.h (gfc_arith_error): Issue error for ARITH_WRONGCONCAT. + (gfc_arith_concat): If the types of op1 and op2 are not + character of if their kinds do not match, issue ARITH_WRONGCONCAT. + +2018-09-18 Janus Weil + + Backport from trunk + PR fortran/85395 + * decl.c (match_binding_attributes): Use correct default accessibility + for procedure pointer components. + +2018-09-18 Janus Weil + + Backport from trunk + PR fortran/86830 + * expr.c (gfc_is_simply_contiguous): Handle type-bound procedure calls + with non-polymorphic objects. + +2018-09-18 Paul Thomas + + Backported from trunk + PR fortran/85954 + * resolve.c (resolve_assoc_var): If the target expression is a + deferred charlen dummy and the associate name shares the + charlen, generate a new one. Make sure that new charlens are in + the namespace list so that they get cleaned up. + * trans-array.c (gfc_is_reallocatable_lhs): Associate names are + not reallocatable. + * trans-decl.c (gfc_get_symbol_decl): Put deferred character + length dummy and result arrays on the deferred initialization + list so that the variable length arrays can be correctly dealt + with. + * trans-expr.c (gfc_conv_string_length): Return if 'expr' is + NULL rather than ICEing. + +2018-09-12 Paul Thomas + + Backported from trunk + PR fortran/87284 + * trans-expr.c (gfc_trans_class_init_assign): Access to + to array elements of the dynamic type requires that the array + reference be added to the class expression and not the _data + component, unlike scalar expressions. + +2018-09-11 Paul Thomas + + Backported from trunk + PR fortran/87277 + * expr.c (is_subref_array): Add the check of dimensionality for + class, dummy, pointer arrays. + +2018-09-05 Janus Weil + + Backported from trunk + PR fortran/86116 + * interface.c (compare_type): Remove a CLASS/TYPE check. + (compare_type_characteristics): New function that behaves like the old + 'compare_type'. + (gfc_check_dummy_characteristics, gfc_check_result_characteristics): + Call 'compare_type_characteristics' instead of 'compare_type'. + +2018-09-04 Jerry DeLisle + + * simplify.c (gfc_simplify_modulo): Re-arrange code to test + whether 'P' is zero and issue an error if it is. + +2018-09-01 Paul Thomas + + PR fortran/86328 + PR fortran/86760 + * trans-array.c (gfc_conv_scalarized_array_ref): Do not fix + info->descriptor but pass it directly to gfc_build_array_ref. + (gfc_conv_array_ref): Likewise for se->expr. + * trans.c (gfc_build_array_ref): If 'decl' is a COMPONENT_REF + obtain the span field directly from it. + +2018-08-24 Thomas Koenig + + Backport from trunk + PR fortran/86837 + * frontend-passes.c (var_in_expr_callback): New function. + (var_in_expr): New function. + (traverse_io_block): Use var_in_expr instead of + gfc_check_dependency for checking if the variable depends on the + previous interators. + +2018-08-12 Paul Thomas + + Backported from trunk + PR fortran/86906 + * resolve.c (resolve_fl_variable_derived): Check if the derived + type is use associated before checking for the host association + error. + +2018-07-26 Jakub Jelinek + + Backported from mainline + 2018-07-10 Jakub Jelinek + + PR fortran/86421 + * module.c (omp_declare_simd_clauses): Add LINEAR with _REF, _VAL and + _UVAL suffixes. + (mio_omp_declare_simd): Save and restore ref, val and uval modifiers + on linear clauses. Initialize n->where to gfc_current_locus. + 2018-07-26 Release Manager * GCC 8.2.0 released. Index: gcc/fortran/trans-stmt.c =================================================================== --- gcc/fortran/trans-stmt.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/trans-stmt.c (.../branches/gcc-8-branch) @@ -1887,7 +1887,6 @@ } if (sym->ts.type == BT_CHARACTER - && sym->ts.deferred && !sym->attr.select_type_temporary && VAR_P (sym->ts.u.cl->backend_decl) && se.string_length != sym->ts.u.cl->backend_decl) Index: gcc/fortran/expr.c =================================================================== --- gcc/fortran/expr.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/expr.c (.../branches/gcc-8-branch) @@ -1069,6 +1069,7 @@ if (e->symtree->n.sym->ts.type == BT_CLASS && e->symtree->n.sym->attr.dummy + && CLASS_DATA (e->symtree->n.sym)->attr.dimension && CLASS_DATA (e->symtree->n.sym)->attr.class_pointer) return true; @@ -5360,16 +5361,13 @@ return expr->value.function.esym->result->attr.contiguous; else { - /* We have to jump through some hoops if this is a vtab entry. */ - gfc_symbol *s; - gfc_ref *r, *rc; + /* Type-bound procedures. */ + gfc_symbol *s = expr->symtree->n.sym; + if (s->ts.type != BT_CLASS && s->ts.type != BT_DERIVED) + return false; - s = expr->symtree->n.sym; - if (s->ts.type != BT_CLASS) - return false; - - rc = NULL; - for (r = expr->ref; r; r = r->next) + gfc_ref *rc = NULL; + for (gfc_ref *r = expr->ref; r; r = r->next) if (r->type == REF_COMPONENT) rc = r; Index: gcc/fortran/module.c =================================================================== --- gcc/fortran/module.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/module.c (.../branches/gcc-8-branch) @@ -4100,6 +4100,9 @@ minit ("UNIFORM", 3), minit ("LINEAR", 4), minit ("ALIGNED", 5), + minit ("LINEAR_REF", 33), + minit ("LINEAR_VAL", 34), + minit ("LINEAR_UVAL", 35), minit (NULL, -1) }; @@ -4142,7 +4145,10 @@ } for (n = ods->clauses->lists[OMP_LIST_LINEAR]; n; n = n->next) { - mio_name (4, omp_declare_simd_clauses); + if (n->u.linear_op == OMP_LINEAR_DEFAULT) + mio_name (4, omp_declare_simd_clauses); + else + mio_name (32 + n->u.linear_op, omp_declare_simd_clauses); mio_symbol_ref (&n->sym); mio_expr (&n->expr); } @@ -4183,11 +4189,20 @@ case 4: case 5: *ptrs[t - 3] = n = gfc_get_omp_namelist (); + finish_namelist: + n->where = gfc_current_locus; ptrs[t - 3] = &n->next; mio_symbol_ref (&n->sym); if (t != 3) mio_expr (&n->expr); break; + case 33: + case 34: + case 35: + *ptrs[1] = n = gfc_get_omp_namelist (); + n->u.linear_op = (enum gfc_omp_linear_op) (t - 32); + t = 4; + goto finish_namelist; } } } Index: gcc/fortran/trans.c =================================================================== --- gcc/fortran/trans.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/trans.c (.../branches/gcc-8-branch) @@ -407,7 +407,12 @@ if (vptr) span = gfc_vptr_size_get (vptr); else if (decl) - span = get_array_span (type, decl); + { + if (TREE_CODE (decl) == COMPONENT_REF) + span = gfc_conv_descriptor_span_get (decl); + else + span = get_array_span (type, decl); + } /* If a non-null span has been generated reference the element with pointer arithmetic. */ Index: gcc/fortran/frontend-passes.c =================================================================== --- gcc/fortran/frontend-passes.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/frontend-passes.c (.../branches/gcc-8-branch) @@ -1099,6 +1099,31 @@ return 0; } +/* Callback function to var_in_expr - return true if expr1 and + expr2 are identical variables. */ +static int +var_in_expr_callback (gfc_expr **e, int *walk_subtrees ATTRIBUTE_UNUSED, + void *data) +{ + gfc_expr *expr1 = (gfc_expr *) data; + gfc_expr *expr2 = *e; + + if (expr2->expr_type != EXPR_VARIABLE) + return 0; + + return expr1->symtree->n.sym == expr2->symtree->n.sym; +} + +/* Return true if expr1 is found in expr2. */ + +static bool +var_in_expr (gfc_expr *expr1, gfc_expr *expr2) +{ + gcc_assert (expr1->expr_type == EXPR_VARIABLE); + + return gfc_expr_walker (&expr2, var_in_expr_callback, (void *) expr1); +} + struct do_stack { struct do_stack *prev; @@ -1251,9 +1276,9 @@ for (int j = i - 1; j < i; j++) { if (iters[j] - && (gfc_check_dependency (var, iters[j]->start, true) - || gfc_check_dependency (var, iters[j]->end, true) - || gfc_check_dependency (var, iters[j]->step, true))) + && (var_in_expr (var, iters[j]->start) + || var_in_expr (var, iters[j]->end) + || var_in_expr (var, iters[j]->step))) return false; } } Index: gcc/fortran/resolve.c =================================================================== --- gcc/fortran/resolve.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/resolve.c (.../branches/gcc-8-branch) @@ -8658,6 +8658,14 @@ if (!sym->ts.u.cl) sym->ts.u.cl = target->ts.u.cl; + if (sym->ts.deferred && target->expr_type == EXPR_VARIABLE + && target->symtree->n.sym->attr.dummy + && sym->ts.u.cl == target->ts.u.cl) + { + sym->ts.u.cl = gfc_new_charlen (sym->ns, NULL); + sym->ts.deferred = 1; + } + if (!sym->ts.u.cl->length && !sym->ts.deferred && target->expr_type == EXPR_CONSTANT) @@ -8670,7 +8678,7 @@ || sym->ts.u.cl->length->expr_type != EXPR_CONSTANT) && target->expr_type != EXPR_VARIABLE) { - sym->ts.u.cl = gfc_get_charlen(); + sym->ts.u.cl = gfc_new_charlen (sym->ns, NULL); sym->ts.deferred = 1; /* This is reset in trans-stmt.c after the assignment @@ -12050,6 +12058,7 @@ namespace. 14.6.1.3 of the standard and the discussion on comp.lang.fortran. */ if (sym->ns != sym->ts.u.derived->ns + && !sym->ts.u.derived->attr.use_assoc && sym->ns->proc_name->attr.if_source != IFSRC_IFBODY) { gfc_symbol *s; @@ -12404,7 +12413,8 @@ } /* An elemental function is required to return a scalar 12.7.1 */ - if (sym->attr.elemental && sym->attr.function && sym->as) + if (sym->attr.elemental && sym->attr.function + && (sym->as || (sym->ts.type == BT_CLASS && CLASS_DATA (sym)->as))) { gfc_error ("ELEMENTAL function %qs at %L must have a scalar " "result", sym->name, &sym->declared_at); Index: gcc/fortran/trans-decl.c =================================================================== --- gcc/fortran/trans-decl.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/trans-decl.c (.../branches/gcc-8-branch) @@ -1543,6 +1543,13 @@ /* Dummy variables should already have been created. */ gcc_assert (sym->backend_decl); + /* However, the string length of deferred arrays must be set. */ + if (sym->ts.type == BT_CHARACTER + && sym->ts.deferred + && sym->attr.dimension + && sym->attr.allocatable) + gfc_defer_symbol_init (sym); + if (sym->attr.pointer && sym->attr.dimension && sym->ts.type != BT_CLASS) GFC_DECL_PTR_ARRAY_P (sym->backend_decl) = 1; Index: gcc/fortran/arith.c =================================================================== --- gcc/fortran/arith.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/arith.c (.../branches/gcc-8-branch) @@ -113,6 +113,11 @@ p = _("Integer outside symmetric range implied by Standard Fortran at %L"); break; + case ARITH_WRONGCONCAT: + p = + _("Illegal type in character concatenation at %L"); + break; + default: gfc_internal_error ("gfc_arith_error(): Bad error code"); } @@ -982,7 +987,12 @@ gfc_expr *result; size_t len; - gcc_assert (op1->ts.kind == op2->ts.kind); + /* By cleverly playing around with constructors, is is possible + to get mismaching types here. */ + if (op1->ts.type != BT_CHARACTER || op2->ts.type != BT_CHARACTER + || op1->ts.kind != op2->ts.kind) + return ARITH_WRONGCONCAT; + result = gfc_get_constant_expr (BT_CHARACTER, op1->ts.kind, &op1->where); Index: gcc/fortran/simplify.c =================================================================== --- gcc/fortran/simplify.c (.../tags/gcc_8_2_0_release) +++ gcc/fortran/simplify.c (.../branches/gcc-8-branch) @@ -5509,54 +5509,57 @@ gfc_expr *result; int kind; - if (a->expr_type != EXPR_CONSTANT || p->expr_type != EXPR_CONSTANT) + /* First check p. */ + if (p->expr_type != EXPR_CONSTANT) return NULL; - kind = a->ts.kind > p->ts.kind ? a->ts.kind : p->ts.kind; - result = gfc_get_constant_expr (a->ts.type, kind, &a->where); - - switch (a->ts.type) + /* p shall not be 0. */ + switch (p->ts.type) { case BT_INTEGER: if (mpz_cmp_ui (p->value.integer, 0) == 0) { - /* Result is processor-dependent. This processor just opts - to not handle it at all. */ - gfc_error ("Second argument of MODULO at %L is zero", &a->where); - gfc_free_expr (result); + gfc_error ("Argument %qs of MODULO at %L shall not be zero", + "P", &p->where); return &gfc_bad_expr; } - mpz_fdiv_r (result->value.integer, a->value.integer, p->value.integer); - break; - case BT_REAL: if (mpfr_cmp_ui (p->value.real, 0) == 0) { - /* Result is processor-dependent. */ - gfc_error ("Second argument of MODULO at %L is zero", &p->where); - gfc_free_expr (result); + gfc_error ("Argument %qs of MODULO at %L shall not be zero", + "P", &p->where); return &gfc_bad_expr; } - - gfc_set_model_kind (kind); - mpfr_fmod (result->value.real, a->value.real, p->value.real, - GFC_RND_MODE); - if (mpfr_cmp_ui (result->value.real, 0) != 0) - { - if (mpfr_signbit (a->value.real) != mpfr_signbit (p->value.real)) - mpfr_add (result->value.real, result->value.real, p->value.real, - GFC_RND_MODE); - } - else - mpfr_copysign (result->value.real, result->value.real, - p->value.real, GFC_RND_MODE); break; - default: gfc_internal_error ("gfc_simplify_modulo(): Bad arguments"); } + if (a->expr_type != EXPR_CONSTANT) + return NULL; + + kind = a->ts.kind > p->ts.kind ? a->ts.kind : p->ts.kind; + result = gfc_get_constant_expr (a->ts.type, kind, &a->where); + + if (a->ts.type == BT_INTEGER) + mpz_fdiv_r (result->value.integer, a->value.integer, p->value.integer); + else + { + gfc_set_model_kind (kind); + mpfr_fmod (result->value.real, a->value.real, p->value.real, + GFC_RND_MODE); + if (mpfr_cmp_ui (result->value.real, 0) != 0) + { + if (mpfr_signbit (a->value.real) != mpfr_signbit (p->value.real)) + mpfr_add (result->value.real, result->value.real, p->value.real, + GFC_RND_MODE); + } + else + mpfr_copysign (result->value.real, result->value.real, + p->value.real, GFC_RND_MODE); + } + return range_check (result, "MODULO"); } Index: gcc/BASE-VER =================================================================== --- gcc/BASE-VER (.../tags/gcc_8_2_0_release) +++ gcc/BASE-VER (.../branches/gcc-8-branch) @@ -1 +1 @@ -8.2.0 +8.2.1 Index: gcc/stor-layout.c =================================================================== --- gcc/stor-layout.c (.../tags/gcc_8_2_0_release) +++ gcc/stor-layout.c (.../branches/gcc-8-branch) @@ -1685,14 +1685,21 @@ { rli->bitpos = size_binop (PLUS_EXPR, rli->bitpos, DECL_SIZE (field)); - /* If we ended a bitfield before the full length of the type then - pad the struct out to the full length of the last type. */ - if ((DECL_CHAIN (field) == NULL - || TREE_CODE (DECL_CHAIN (field)) != FIELD_DECL) - && DECL_BIT_FIELD_TYPE (field) + /* If FIELD is the last field and doesn't end at the full length + of the type then pad the struct out to the full length of the + last type. */ + if (DECL_BIT_FIELD_TYPE (field) && !integer_zerop (DECL_SIZE (field))) - rli->bitpos = size_binop (PLUS_EXPR, rli->bitpos, - bitsize_int (rli->remaining_in_alignment)); + { + /* We have to scan, because non-field DECLS are also here. */ + tree probe = field; + while ((probe = DECL_CHAIN (probe))) + if (TREE_CODE (probe) == FIELD_DECL) + break; + if (!probe) + rli->bitpos = size_binop (PLUS_EXPR, rli->bitpos, + bitsize_int (rli->remaining_in_alignment)); + } normalize_rli (rli); } Index: gcc/genmatch.c =================================================================== --- gcc/genmatch.c (.../tags/gcc_8_2_0_release) +++ gcc/genmatch.c (.../branches/gcc-8-branch) @@ -2680,12 +2680,14 @@ char match_opname[20]; match_dop->get_name (match_opname); if (value_match) - fprintf_indent (f, indent, "if (%s == %s || operand_equal_p (%s, %s, 0))\n", - opname, match_opname, opname, match_opname); + fprintf_indent (f, indent, "if ((%s == %s && ! TREE_SIDE_EFFECTS (%s)) " + "|| operand_equal_p (%s, %s, 0))\n", + opname, match_opname, opname, opname, match_opname); else - fprintf_indent (f, indent, "if (%s == %s || (operand_equal_p (%s, %s, 0) " + fprintf_indent (f, indent, "if ((%s == %s && ! TREE_SIDE_EFFECTS (%s)) " + "|| (operand_equal_p (%s, %s, 0) " "&& types_match (%s, %s)))\n", - opname, match_opname, opname, match_opname, + opname, match_opname, opname, opname, match_opname, opname, match_opname); fprintf_indent (f, indent + 2, "{\n"); return 1; Index: gcc/tree-vect-loop.c =================================================================== --- gcc/tree-vect-loop.c (.../tags/gcc_8_2_0_release) +++ gcc/tree-vect-loop.c (.../branches/gcc-8-branch) @@ -5558,6 +5558,9 @@ if (STMT_VINFO_VEC_REDUCTION_TYPE (stmt_info) == INTEGER_INDUC_COND_REDUCTION) code = induc_code; + else if (STMT_VINFO_VEC_REDUCTION_TYPE (stmt_info) + == CONST_COND_REDUCTION) + code = STMT_VINFO_VEC_CONST_COND_REDUC_CODE (stmt_info); else code = MAX_EXPR; } Index: gcc/gimplify.c =================================================================== --- gcc/gimplify.c (.../tags/gcc_8_2_0_release) +++ gcc/gimplify.c (.../branches/gcc-8-branch) @@ -9734,9 +9734,26 @@ t = TREE_VEC_ELT (OMP_FOR_INIT (for_stmt), i); if (!is_gimple_constant (TREE_OPERAND (t, 1))) { + tree type = TREE_TYPE (TREE_OPERAND (t, 0)); TREE_OPERAND (t, 1) = get_initialized_tmp_var (TREE_OPERAND (t, 1), - pre_p, NULL, false); + gimple_seq_empty_p (for_pre_body) + ? pre_p : &for_pre_body, NULL, + false); + /* Reference to pointer conversion is considered useless, + but is significant for firstprivate clause. Force it + here. */ + if (TREE_CODE (type) == POINTER_TYPE + && (TREE_CODE (TREE_TYPE (TREE_OPERAND (t, 1))) + == REFERENCE_TYPE)) + { + tree v = create_tmp_var (TYPE_MAIN_VARIANT (type)); + tree m = build2 (INIT_EXPR, TREE_TYPE (v), v, + TREE_OPERAND (t, 1)); + gimplify_and_add (m, gimple_seq_empty_p (for_pre_body) + ? pre_p : &for_pre_body); + TREE_OPERAND (t, 1) = v; + } tree c = build_omp_clause (input_location, OMP_CLAUSE_FIRSTPRIVATE); OMP_CLAUSE_DECL (c) = TREE_OPERAND (t, 1); @@ -9748,11 +9765,26 @@ t = TREE_VEC_ELT (OMP_FOR_COND (for_stmt), i); if (!is_gimple_constant (TREE_OPERAND (t, 1))) { + tree type = TREE_TYPE (TREE_OPERAND (t, 0)); TREE_OPERAND (t, 1) = get_initialized_tmp_var (TREE_OPERAND (t, 1), gimple_seq_empty_p (for_pre_body) ? pre_p : &for_pre_body, NULL, false); + /* Reference to pointer conversion is considered useless, + but is significant for firstprivate clause. Force it + here. */ + if (TREE_CODE (type) == POINTER_TYPE + && (TREE_CODE (TREE_TYPE (TREE_OPERAND (t, 1))) + == REFERENCE_TYPE)) + { + tree v = create_tmp_var (TYPE_MAIN_VARIANT (type)); + tree m = build2 (INIT_EXPR, TREE_TYPE (v), v, + TREE_OPERAND (t, 1)); + gimplify_and_add (m, gimple_seq_empty_p (for_pre_body) + ? pre_p : &for_pre_body); + TREE_OPERAND (t, 1) = v; + } tree c = build_omp_clause (input_location, OMP_CLAUSE_FIRSTPRIVATE); OMP_CLAUSE_DECL (c) = TREE_OPERAND (t, 1); Index: gcc/calls.c =================================================================== --- gcc/calls.c (.../tags/gcc_8_2_0_release) +++ gcc/calls.c (.../branches/gcc-8-branch) @@ -1627,6 +1627,9 @@ if (!fndecl || DECL_BUILT_IN_CLASS (fndecl) != BUILT_IN_NORMAL) return; + if (!warn_stringop_overflow) + return; + bool with_bounds = CALL_WITH_BOUNDS_P (exp); unsigned nargs = call_expr_nargs (exp); @@ -1655,7 +1658,10 @@ conservatively as the bound for the unbounded function, and to adjust the range of the bound of the bounded ones. */ unsigned stride = with_bounds ? 2 : 1; - for (unsigned argno = 0; argno < nargs && !*lenrng; argno += stride) + for (unsigned argno = 0; + argno < MIN (nargs, 2 * stride) + && !(lenrng[1] && TREE_CODE (lenrng[1]) == INTEGER_CST); + argno += stride) { tree arg = CALL_EXPR_ARG (exp, argno); if (!get_attr_nonstring_decl (arg)) @@ -1693,11 +1699,9 @@ if (bound) get_size_range (bound, bndrng); - if (*lenrng) + if (lenrng[1] && TREE_CODE (lenrng[1]) == INTEGER_CST) { /* Add one for the nul. */ - lenrng[0] = const_binop (PLUS_EXPR, TREE_TYPE (lenrng[0]), - lenrng[0], size_one_node); lenrng[1] = const_binop (PLUS_EXPR, TREE_TYPE (lenrng[1]), lenrng[1], size_one_node); Index: gcc/expmed.c =================================================================== --- gcc/expmed.c (.../tags/gcc_8_2_0_release) +++ gcc/expmed.c (.../branches/gcc-8-branch) @@ -3343,9 +3343,9 @@ /* Write a REG_EQUAL note on the last insn so that we can cse multiplication sequences. Note that if ACCUM is a SUBREG, we've set the inner register and must properly indicate that. */ - tem = op0, nmode = mode; - accum_inner = accum; - if (GET_CODE (accum) == SUBREG) + tem = op0, nmode = mode; + accum_inner = accum; + if (GET_CODE (accum) == SUBREG) { accum_inner = SUBREG_REG (accum); nmode = GET_MODE (accum_inner); @@ -3352,10 +3352,12 @@ tem = gen_lowpart (nmode, op0); } - insn = get_last_insn (); - set_dst_reg_note (insn, REG_EQUAL, - gen_rtx_MULT (nmode, tem, - gen_int_mode (val_so_far, nmode)), + insn = get_last_insn (); + wide_int wval_so_far + = wi::uhwi (val_so_far, + GET_MODE_PRECISION (as_a (nmode))); + rtx c = immed_wide_int_const (wval_so_far, nmode); + set_dst_reg_note (insn, REG_EQUAL, gen_rtx_MULT (nmode, tem, c), accum_inner); } } @@ -4480,6 +4482,11 @@ HOST_WIDE_INT d = INTVAL (op1); unsigned HOST_WIDE_INT abs_d; + /* Not prepared to handle division/remainder by + 0xffffffffffffffff8000000000000000 etc. */ + if (d == HOST_WIDE_INT_MIN && size > HOST_BITS_PER_WIDE_INT) + break; + /* Since d might be INT_MIN, we have to cast to unsigned HOST_WIDE_INT before negating to avoid undefined signed overflow. */ @@ -4522,9 +4529,7 @@ || (optab_handler (sdivmod_optab, int_mode) != CODE_FOR_nothing))) ; - else if (EXACT_POWER_OF_2_OR_ZERO_P (abs_d) - && (size <= HOST_BITS_PER_WIDE_INT - || abs_d != (unsigned HOST_WIDE_INT) d)) + else if (EXACT_POWER_OF_2_OR_ZERO_P (abs_d)) { if (rem_flag) { @@ -6038,6 +6043,11 @@ if (!HAVE_conditional_move) return 0; + /* Do not turn a trapping comparison into a non-trapping one. */ + if ((code != EQ && code != NE && code != UNEQ && code != LTGT) + && flag_trapping_math) + return 0; + /* Try using a setcc instruction for ORDERED/UNORDERED, followed by a conditional move. */ tem = emit_store_flag_1 (subtarget, first_code, op0, op1, mode, 0, Index: gcc/coverage.c =================================================================== --- gcc/coverage.c (.../tags/gcc_8_2_0_release) +++ gcc/coverage.c (.../branches/gcc-8-branch) @@ -663,7 +663,8 @@ gcov_write_unsigned (cfg_checksum); gcov_write_string (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (current_function_decl))); - gcov_write_unsigned (DECL_ARTIFICIAL (current_function_decl)); + gcov_write_unsigned (DECL_ARTIFICIAL (current_function_decl) + && !DECL_LAMBDA_FUNCTION (current_function_decl)); gcov_write_filename (xloc.file); gcov_write_unsigned (xloc.line); gcov_write_unsigned (xloc.column); Index: gcc/cfgexpand.c =================================================================== --- gcc/cfgexpand.c (.../tags/gcc_8_2_0_release) +++ gcc/cfgexpand.c (.../branches/gcc-8-branch) @@ -1157,6 +1157,20 @@ if (repr_decl == NULL_TREE) repr_decl = stack_vars[i].decl; data->asan_decl_vec.safe_push (repr_decl); + + /* Make sure a representative is unpoison if another + variable in the partition is handled by + use-after-scope sanitization. */ + if (asan_handled_variables != NULL + && !asan_handled_variables->contains (repr_decl)) + { + for (j = i; j != EOC; j = stack_vars[j].next) + if (asan_handled_variables->contains (stack_vars[j].decl)) + break; + if (j != EOC) + asan_handled_variables->add (repr_decl); + } + data->asan_alignb = MAX (data->asan_alignb, alignb); if (data->asan_base == NULL) data->asan_base = gen_reg_rtx (Pmode); @@ -1259,10 +1273,10 @@ allocate it, which means that in-frame portion is just a pointer. ??? We've got a pseudo for sure here, do we actually dynamically allocate its spilling area if needed? - ??? Isn't it a problem when POINTER_SIZE also exceeds - MAX_SUPPORTED_STACK_ALIGNMENT, as on cris and lm32? */ + ??? Isn't it a problem when Pmode alignment also exceeds + MAX_SUPPORTED_STACK_ALIGNMENT, as can happen on cris and lm32? */ if (align > MAX_SUPPORTED_STACK_ALIGNMENT) - align = POINTER_SIZE; + align = GET_MODE_ALIGNMENT (Pmode); record_alignment_for_reg_var (align); } @@ -1383,7 +1397,7 @@ /* If the variable alignment is very large we'll dynamicaly allocate it, which means that in-frame portion is just a pointer. */ if (align > MAX_SUPPORTED_STACK_ALIGNMENT) - align = POINTER_SIZE; + align = GET_MODE_ALIGNMENT (Pmode); record_alignment_for_reg_var (align); @@ -1610,7 +1624,7 @@ /* If the variable alignment is very large we'll dynamicaly allocate it, which means that in-frame portion is just a pointer. */ if (align > MAX_SUPPORTED_STACK_ALIGNMENT) - align = POINTER_SIZE; + align = GET_MODE_ALIGNMENT (Pmode); } record_alignment_for_reg_var (align); Index: gcc/graphite.h =================================================================== --- gcc/graphite.h (.../tags/gcc_8_2_0_release) +++ gcc/graphite.h (.../branches/gcc-8-branch) @@ -37,6 +37,8 @@ #include #include #include +#include +#include typedef struct poly_dr *poly_dr_p; Index: gcc/po/es.po =================================================================== --- gcc/po/es.po (.../tags/gcc_8_2_0_release) +++ gcc/po/es.po (.../branches/gcc-8-branch) @@ -41,7 +41,7 @@ msgstr "" "Project-Id-Version: gcc 8.1.0\n" "Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n" -"POT-Creation-Date: 2018-05-01 20:30+0000\n" +"POT-Creation-Date: 2018-07-25 14:25+0000\n" "PO-Revision-Date: 2018-07-07 15:54+0200\n" "Last-Translator: Antonio Ceballos Roa \n" "Language-Team: Spanish \n" @@ -73,12 +73,12 @@ msgid "[cannot find %s]" msgstr "[no se puede encontrar %s]" -#: collect2.c:1557 +#: collect2.c:1585 #, c-format msgid "collect2 version %s\n" msgstr "collect2 versión %s\n" -#: collect2.c:1664 +#: collect2.c:1692 #, c-format msgid "%d constructor found\n" msgid_plural "%d constructors found\n" @@ -85,7 +85,7 @@ msgstr[0] "se encontró %d constructor\n" msgstr[1] "se encontraron %d constructores\n" -#: collect2.c:1668 +#: collect2.c:1696 #, c-format msgid "%d destructor found\n" msgid_plural "%d destructors found\n" @@ -92,7 +92,7 @@ msgstr[0] "se encontró %d destructor\n" msgstr[1] "se encontraron %d destructores\n" -#: collect2.c:1672 +#: collect2.c:1700 #, c-format msgid "%d frame table found\n" msgid_plural "%d frame tables found\n" @@ -100,12 +100,12 @@ msgstr[1] "se encontraron %d tablas de marco\n" # %s se refiere a un fichero. cfuga -#: collect2.c:1836 +#: collect2.c:1864 #, c-format msgid "[Leaving %s]\n" msgstr "[Saliendo de %s]\n" -#: collect2.c:2068 +#: collect2.c:2094 #, c-format msgid "" "\n" @@ -114,7 +114,7 @@ "\n" "write_c_file - el nombre de salida es %s, el prefijo es %s\n" -#: collect2.c:2584 +#: collect2.c:2610 #, c-format msgid "" "\n" @@ -137,7 +137,7 @@ msgid "%s: some warnings being treated as errors" msgstr "%s: algunos avisos se tratan como errores" -#: diagnostic.c:324 input.c:222 input.c:1834 c-family/c-opts.c:1377 +#: diagnostic.c:324 input.c:222 input.c:1834 c-family/c-opts.c:1392 #: fortran/cpp.c:576 fortran/error.c:1008 fortran/error.c:1028 msgid "" msgstr "" @@ -229,13 +229,13 @@ #. TARGET_PRINT_OPERAND must handle them. #. We can't handle floating point constants; #. PRINT_OPERAND must handle them. -#: final.c:4164 config/arc/arc.c:5784 config/i386/i386.c:17302 +#: final.c:4164 config/arc/arc.c:5775 config/i386/i386.c:17305 #: config/pdp11/pdp11.c:1715 #, c-format msgid "floating constant misused" msgstr "constante de coma flotante mal usada" -#: final.c:4222 config/arc/arc.c:5881 config/i386/i386.c:17393 +#: final.c:4222 config/arc/arc.c:5872 config/i386/i386.c:17396 #: config/pdp11/pdp11.c:1756 #, c-format msgid "invalid expression as operand" @@ -1145,7 +1145,7 @@ msgid "GCSE disabled" msgstr "GCSE desactivado" -#: gimple-ssa-isolate-paths.c:542 c/c-typeck.c:10240 +#: gimple-ssa-isolate-paths.c:542 c/c-typeck.c:10245 #, gcc-internal-format msgid "function returns address of local variable" msgstr "la función devuelve la dirección de una variable local" @@ -1446,7 +1446,7 @@ msgid "options enabled: " msgstr "opciones activadas: " -#: tree-diagnostic.c:299 c/c-decl.c:5419 c/c-typeck.c:7259 cp/error.c:1042 +#: tree-diagnostic.c:299 c/c-decl.c:5439 c/c-typeck.c:7264 cp/error.c:1042 #: c-family/c-pretty-print.c:413 #, gcc-internal-format msgid "" @@ -2911,64 +2911,64 @@ msgstr "modificador de longitud en formato strfmon" #. Handle deferred options from command-line. -#: c-family/c-opts.c:1402 fortran/cpp.c:590 +#: c-family/c-opts.c:1417 fortran/cpp.c:590 msgid "" msgstr "" -#: config/aarch64/aarch64.c:6613 +#: config/aarch64/aarch64.c:6629 #, c-format msgid "unsupported operand for code '%c'" msgstr "no se admite el operando para el código '%c'" -#: config/aarch64/aarch64.c:6624 config/aarch64/aarch64.c:6640 -#: config/aarch64/aarch64.c:6652 config/aarch64/aarch64.c:6663 -#: config/aarch64/aarch64.c:6673 config/aarch64/aarch64.c:6694 -#: config/aarch64/aarch64.c:6764 config/aarch64/aarch64.c:6775 -#: config/aarch64/aarch64.c:6789 config/aarch64/aarch64.c:7011 -#: config/aarch64/aarch64.c:7029 +#: config/aarch64/aarch64.c:6640 config/aarch64/aarch64.c:6656 +#: config/aarch64/aarch64.c:6668 config/aarch64/aarch64.c:6679 +#: config/aarch64/aarch64.c:6689 config/aarch64/aarch64.c:6710 +#: config/aarch64/aarch64.c:6780 config/aarch64/aarch64.c:6791 +#: config/aarch64/aarch64.c:6805 config/aarch64/aarch64.c:7027 +#: config/aarch64/aarch64.c:7045 #, c-format msgid "invalid operand for '%%%c'" msgstr "operando no válido para '%%%c'" -#: config/aarch64/aarch64.c:6709 config/aarch64/aarch64.c:6720 -#: config/aarch64/aarch64.c:6871 config/aarch64/aarch64.c:6882 +#: config/aarch64/aarch64.c:6725 config/aarch64/aarch64.c:6736 +#: config/aarch64/aarch64.c:6887 config/aarch64/aarch64.c:6898 #, c-format msgid "invalid vector constant" msgstr "constante de vector no válida" -#: config/aarch64/aarch64.c:6732 config/aarch64/aarch64.c:6744 -#: config/aarch64/aarch64.c:6755 +#: config/aarch64/aarch64.c:6748 config/aarch64/aarch64.c:6760 +#: config/aarch64/aarch64.c:6771 #, c-format msgid "incompatible floating point / vector register operand for '%%%c'" msgstr "coma flotante incompatible / operando de registro de vector para '%%%c'" -#: config/aarch64/aarch64.c:6823 config/arm/arm.c:22704 +#: config/aarch64/aarch64.c:6839 config/arm/arm.c:22704 #, c-format msgid "missing operand" msgstr "falta un operando" -#: config/aarch64/aarch64.c:6908 +#: config/aarch64/aarch64.c:6924 #, c-format msgid "invalid constant" msgstr "constante no válida" -#: config/aarch64/aarch64.c:6911 +#: config/aarch64/aarch64.c:6927 #, c-format msgid "invalid operand" msgstr "operando no válido" -#: config/aarch64/aarch64.c:7040 config/aarch64/aarch64.c:7045 +#: config/aarch64/aarch64.c:7056 config/aarch64/aarch64.c:7061 #, c-format msgid "invalid operand prefix '%%%c'" msgstr "prefijo de operando no válido '%%%c'" -#: config/aarch64/aarch64.c:7062 +#: config/aarch64/aarch64.c:7078 #, c-format msgid "invalid address mode" msgstr "modo de direccionamiento no válido" -#: config/alpha/alpha.c:5125 config/i386/i386.c:18558 -#: config/powerpcspe/powerpcspe.c:24333 config/rs6000/rs6000.c:21798 +#: config/alpha/alpha.c:5125 config/i386/i386.c:18561 +#: config/powerpcspe/powerpcspe.c:24333 config/rs6000/rs6000.c:21875 #: config/sparc/sparc.c:9290 #, c-format msgid "'%%&' used without any local dynamic TLS references" @@ -2985,7 +2985,7 @@ msgstr "valor %%r no válido" #: config/alpha/alpha.c:5223 config/ia64/ia64.c:5534 -#: config/powerpcspe/powerpcspe.c:24013 config/rs6000/rs6000.c:21506 +#: config/powerpcspe/powerpcspe.c:24013 config/rs6000/rs6000.c:21583 #: config/xtensa/xtensa.c:2429 #, c-format msgid "invalid %%R value" @@ -2992,13 +2992,13 @@ msgstr "valor %%R no válido" #: config/alpha/alpha.c:5229 config/powerpcspe/powerpcspe.c:23933 -#: config/rs6000/rs6000.c:21426 config/xtensa/xtensa.c:2396 +#: config/rs6000/rs6000.c:21503 config/xtensa/xtensa.c:2396 #, c-format msgid "invalid %%N value" msgstr "valor %%N no válido" #: config/alpha/alpha.c:5237 config/powerpcspe/powerpcspe.c:23961 -#: config/rs6000/rs6000.c:21454 +#: config/rs6000/rs6000.c:21531 #, c-format msgid "invalid %%P value" msgstr "valor %%P no válido" @@ -3029,7 +3029,7 @@ msgstr "valor %%U no válido" #: config/alpha/alpha.c:5323 config/powerpcspe/powerpcspe.c:24021 -#: config/rs6000/rs6000.c:21514 +#: config/rs6000/rs6000.c:21591 #, c-format msgid "invalid %%s value" msgstr "valor %%s no válido" @@ -3040,7 +3040,7 @@ msgstr "valor %%C no válido" #: config/alpha/alpha.c:5371 config/powerpcspe/powerpcspe.c:23797 -#: config/rs6000/rs6000.c:21290 +#: config/rs6000/rs6000.c:21367 #, c-format msgid "invalid %%E value" msgstr "valor %%E no válido" @@ -3051,7 +3051,7 @@ msgstr "reubicación unspec desconocida" #: config/alpha/alpha.c:5405 config/cr16/cr16.c:1569 -#: config/powerpcspe/powerpcspe.c:24338 config/rs6000/rs6000.c:21803 +#: config/powerpcspe/powerpcspe.c:24338 config/rs6000/rs6000.c:21880 #: config/spu/spu.c:1458 #, c-format msgid "invalid %%xn code" @@ -3062,57 +3062,57 @@ msgid "invalid operand address" msgstr "dirección de operando no válida" -#: config/arc/arc.c:3810 +#: config/arc/arc.c:3808 #, c-format msgid "invalid operand to %%Z code" msgstr "operando no válido para el código %%Z" -#: config/arc/arc.c:3818 +#: config/arc/arc.c:3816 #, c-format msgid "invalid operand to %%z code" msgstr "operando no válido para el código %%z" -#: config/arc/arc.c:3826 +#: config/arc/arc.c:3824 #, c-format msgid "invalid operands to %%c code" msgstr "operandos no válidos para el código %%c" -#: config/arc/arc.c:3834 +#: config/arc/arc.c:3832 #, c-format msgid "invalid operand to %%M code" msgstr "operando no válido para el código %%M" -#: config/arc/arc.c:3842 config/m32r/m32r.c:2100 +#: config/arc/arc.c:3840 config/m32r/m32r.c:2100 #, c-format msgid "invalid operand to %%p code" msgstr "operador no válido para el código %%p" -#: config/arc/arc.c:3853 config/m32r/m32r.c:2093 +#: config/arc/arc.c:3851 config/m32r/m32r.c:2093 #, c-format msgid "invalid operand to %%s code" msgstr "operando no válido para el código %%s" -#: config/arc/arc.c:4001 config/m32r/m32r.c:2126 +#: config/arc/arc.c:3999 config/m32r/m32r.c:2126 #, c-format msgid "invalid operand to %%R code" msgstr "operando no válido para el código %%R" -#: config/arc/arc.c:4077 config/m32r/m32r.c:2149 +#: config/arc/arc.c:4075 config/m32r/m32r.c:2149 #, c-format msgid "invalid operand to %%H/%%L code" msgstr "operando no válido para el código %%H%%L" -#: config/arc/arc.c:4145 config/m32r/m32r.c:2220 +#: config/arc/arc.c:4143 config/m32r/m32r.c:2220 #, c-format msgid "invalid operand to %%U code" msgstr "operando no válido para el código %%U" -#: config/arc/arc.c:4157 +#: config/arc/arc.c:4155 #, c-format msgid "invalid operand to %%V code" msgstr "operando no válido para el código %%V" -#: config/arc/arc.c:4214 +#: config/arc/arc.c:4212 #, c-format msgid "invalid operand to %%O code" msgstr "operando no válido para el código %%O" @@ -3119,18 +3119,18 @@ #. Unknown flag. #. Undocumented flag. -#: config/arc/arc.c:4240 config/epiphany/epiphany.c:1305 -#: config/m32r/m32r.c:2247 config/nds32/nds32.c:3079 config/sparc/sparc.c:9569 +#: config/arc/arc.c:4238 config/epiphany/epiphany.c:1305 +#: config/m32r/m32r.c:2247 config/nds32/nds32.c:3080 config/sparc/sparc.c:9569 #, c-format msgid "invalid operand output code" msgstr "operando no válido en el código de salida" -#: config/arc/arc.c:5869 +#: config/arc/arc.c:5860 #, c-format msgid "invalid UNSPEC as operand: %d" msgstr "UNSPEC no válido como operando: %d" -#: config/arc/arc.c:6158 config/cris/cris.c:2568 +#: config/arc/arc.c:6149 config/cris/cris.c:2568 msgid "unrecognized supposed constant" msgstr "no se reconoce la constante supuesta" @@ -3165,7 +3165,7 @@ #: config/arm/arm.c:22685 config/arm/arm.c:22692 config/bfin/bfin.c:1441 #: config/bfin/bfin.c:1448 config/bfin/bfin.c:1455 config/bfin/bfin.c:1462 #: config/bfin/bfin.c:1471 config/bfin/bfin.c:1478 config/bfin/bfin.c:1485 -#: config/bfin/bfin.c:1492 config/nds32/nds32.c:3098 +#: config/bfin/bfin.c:1492 config/nds32/nds32.c:3099 #, c-format msgid "invalid operand for code '%c'" msgstr "operando no válido para el código '%c'" @@ -3506,98 +3506,98 @@ msgid "bad output_condmove_single operand" msgstr "operando output_condmove_single erróneo" -#: config/i386/i386.c:17387 +#: config/i386/i386.c:17390 #, c-format msgid "invalid UNSPEC as operand" msgstr "UNSPEC no válido como operando" -#: config/i386/i386.c:17925 +#: config/i386/i386.c:17928 #, c-format msgid "invalid use of register '%s'" msgstr "uso no válido del registro '%s'" -#: config/i386/i386.c:17930 +#: config/i386/i386.c:17933 #, c-format msgid "invalid use of asm flag output" msgstr "tipo no válido de la salida del indicador asm" -#: config/i386/i386.c:18160 +#: config/i386/i386.c:18163 #, c-format msgid "invalid operand size for operand code 'O'" msgstr "tamaño de operando no válido para el código de operando 'O'" -#: config/i386/i386.c:18195 +#: config/i386/i386.c:18198 #, c-format msgid "invalid operand size for operand code 'z'" msgstr "tamaño de operando no válido para el código de operando 'z'" -#: config/i386/i386.c:18264 +#: config/i386/i386.c:18267 #, c-format msgid "invalid operand type used with operand code 'Z'" msgstr "se usó un tipo de operando no válido con el código de operando 'Z'" -#: config/i386/i386.c:18269 +#: config/i386/i386.c:18272 #, c-format msgid "invalid operand size for operand code 'Z'" msgstr "tamaño de operando no válido para el código de operando 'Z'" -#: config/i386/i386.c:18346 +#: config/i386/i386.c:18349 #, c-format msgid "operand is not a condition code, invalid operand code 'Y'" msgstr "el operando no es un código de condición, código de operando 'Y' no válido" -#: config/i386/i386.c:18425 +#: config/i386/i386.c:18428 #, c-format msgid "operand is not a condition code, invalid operand code 'D'" msgstr "el operando no es un código de condición, código de operando 'D' no válido" -#: config/i386/i386.c:18443 +#: config/i386/i386.c:18446 #, c-format msgid "operand is not a condition code, invalid operand code '%c'" msgstr "el operando no es un código de condición, código de operando '%c' no válido" -#: config/i386/i386.c:18456 +#: config/i386/i386.c:18459 #, c-format msgid "operand is not an offsettable memory reference, invalid operand code 'H'" msgstr "el operando no es una referencia de memoria desplazable, código de operando 'H' no válido" -#: config/i386/i386.c:18471 +#: config/i386/i386.c:18474 #, c-format msgid "operand is not an integer, invalid operand code 'K'" msgstr "el operando no es un entero, código de operando 'K' no válido" -#: config/i386/i386.c:18499 +#: config/i386/i386.c:18502 #, c-format msgid "operand is not a specific integer, invalid operand code 'r'" msgstr "el operando no es un entero concreto, código de operando 'r' no válido" -#: config/i386/i386.c:18517 +#: config/i386/i386.c:18520 #, c-format msgid "operand is not an integer, invalid operand code 'R'" msgstr "el operando no es un entero, código de operando 'R' no válido" -#: config/i386/i386.c:18540 +#: config/i386/i386.c:18543 #, c-format msgid "operand is not a specific integer, invalid operand code 'R'" msgstr "el operando no es un entero concreto, código de operando 'R' no válido" -#: config/i386/i386.c:18626 +#: config/i386/i386.c:18629 #, c-format msgid "invalid operand code '%c'" msgstr "código de operando '%c' no válido" -#: config/i386/i386.c:18688 +#: config/i386/i386.c:18691 #, c-format msgid "invalid constraints for operand" msgstr "restricciones no válidas para el operando" -#: config/i386/i386.c:18738 +#: config/i386/i386.c:18741 #, fuzzy, c-format #| msgid "invalid vector constant" msgid "invalid vector immediate" msgstr "constante de vector no válida" -#: config/i386/i386.c:29572 +#: config/i386/i386.c:29575 msgid "unknown insn mode" msgstr "modo insn desconocido" @@ -3635,7 +3635,7 @@ msgstr "operando %%P no válido" #: config/iq2000/iq2000.c:3185 config/powerpcspe/powerpcspe.c:23951 -#: config/rs6000/rs6000.c:21444 +#: config/rs6000/rs6000.c:21521 #, c-format msgid "invalid %%p value" msgstr "valor %%p no válido" @@ -3689,7 +3689,7 @@ msgstr "la dirección de post-incremento no es un registro" #: config/m32r/m32r.c:2350 config/m32r/m32r.c:2365 -#: config/powerpcspe/powerpcspe.c:36090 config/rs6000/rs6000.c:33292 +#: config/powerpcspe/powerpcspe.c:36090 config/rs6000/rs6000.c:33348 msgid "bad address" msgstr "dirección errónea" @@ -3808,185 +3808,185 @@ msgid "Try running '%s' in the shell to raise its limit.\n" msgstr "Pruebe ejecutar '%s' en el intérprete de órdenes para elevar su límite.\n" -#: config/powerpcspe/powerpcspe.c:4411 config/rs6000/rs6000.c:4258 +#: config/powerpcspe/powerpcspe.c:4411 config/rs6000/rs6000.c:4278 msgid "-maltivec=le not allowed for big-endian targets" msgstr "-maltivec=le no permitida para destinos big-endian" -#: config/powerpcspe/powerpcspe.c:4423 config/rs6000/rs6000.c:4273 +#: config/powerpcspe/powerpcspe.c:4423 config/rs6000/rs6000.c:4293 msgid "-mvsx requires hardware floating point" msgstr "-mvsx requiere coma flotante de hardware" -#: config/powerpcspe/powerpcspe.c:4431 config/rs6000/rs6000.c:4281 +#: config/powerpcspe/powerpcspe.c:4431 config/rs6000/rs6000.c:4301 msgid "-mvsx and -mpaired are incompatible" msgstr "-mvsx y -mpaired son incompatibles" -#: config/powerpcspe/powerpcspe.c:4433 config/rs6000/rs6000.c:4283 +#: config/powerpcspe/powerpcspe.c:4433 config/rs6000/rs6000.c:4303 msgid "-mvsx needs indexed addressing" msgstr "-mvsx necesita direccionamiento indizado" -#: config/powerpcspe/powerpcspe.c:4438 config/rs6000/rs6000.c:4288 +#: config/powerpcspe/powerpcspe.c:4438 config/rs6000/rs6000.c:4308 msgid "-mvsx and -mno-altivec are incompatible" msgstr "-mvsx y -mno-altivec son incompatibles" -#: config/powerpcspe/powerpcspe.c:4440 config/rs6000/rs6000.c:4290 +#: config/powerpcspe/powerpcspe.c:4440 config/rs6000/rs6000.c:4310 msgid "-mno-altivec disables vsx" msgstr "-mno-altivec desactiva vsx" -#: config/powerpcspe/powerpcspe.c:4648 config/rs6000/rs6000.c:4416 +#: config/powerpcspe/powerpcspe.c:4648 config/rs6000/rs6000.c:4436 msgid "-mquad-memory requires 64-bit mode" msgstr "-mquad-memory requiere modo de 64 bits" -#: config/powerpcspe/powerpcspe.c:4651 config/rs6000/rs6000.c:4419 +#: config/powerpcspe/powerpcspe.c:4651 config/rs6000/rs6000.c:4439 msgid "-mquad-memory-atomic requires 64-bit mode" msgstr "-mquad-memory-atomic requiere modo de 64 bits" -#: config/powerpcspe/powerpcspe.c:4663 config/rs6000/rs6000.c:4431 +#: config/powerpcspe/powerpcspe.c:4663 config/rs6000/rs6000.c:4451 msgid "-mquad-memory is not available in little endian mode" msgstr "-mquad-memory no está disponible en modo little endian" -#: config/powerpcspe/powerpcspe.c:4735 config/rs6000/rs6000.c:4512 +#: config/powerpcspe/powerpcspe.c:4735 config/rs6000/rs6000.c:4532 msgid "-mtoc-fusion requires 64-bit" msgstr "-mtoc-fusion requiere 64 bits" -#: config/powerpcspe/powerpcspe.c:4742 config/rs6000/rs6000.c:4519 +#: config/powerpcspe/powerpcspe.c:4742 config/rs6000/rs6000.c:4539 msgid "-mtoc-fusion requires medium/large code model" msgstr "-mtoc-fusion requiere modelo de código medio/grande" -#: config/powerpcspe/powerpcspe.c:11492 config/rs6000/rs6000.c:10915 +#: config/powerpcspe/powerpcspe.c:11492 config/rs6000/rs6000.c:10947 msgid "bad move" msgstr "move erróneo" -#: config/powerpcspe/powerpcspe.c:23594 config/rs6000/rs6000.c:21087 +#: config/powerpcspe/powerpcspe.c:23594 config/rs6000/rs6000.c:21164 msgid "Bad 128-bit move" msgstr "Movimiento de 128 bits erróneo" -#: config/powerpcspe/powerpcspe.c:23785 config/rs6000/rs6000.c:21278 +#: config/powerpcspe/powerpcspe.c:23785 config/rs6000/rs6000.c:21355 #, c-format msgid "invalid %%e value" msgstr "valor %%e no válido" -#: config/powerpcspe/powerpcspe.c:23806 config/rs6000/rs6000.c:21299 +#: config/powerpcspe/powerpcspe.c:23806 config/rs6000/rs6000.c:21376 #, c-format msgid "invalid %%f value" msgstr "valor %%f no válido" -#: config/powerpcspe/powerpcspe.c:23815 config/rs6000/rs6000.c:21308 +#: config/powerpcspe/powerpcspe.c:23815 config/rs6000/rs6000.c:21385 #, c-format msgid "invalid %%F value" msgstr "valor %%F no válido" -#: config/powerpcspe/powerpcspe.c:23824 config/rs6000/rs6000.c:21317 +#: config/powerpcspe/powerpcspe.c:23824 config/rs6000/rs6000.c:21394 #, c-format msgid "invalid %%G value" msgstr "valor %%G no válido" -#: config/powerpcspe/powerpcspe.c:23859 config/rs6000/rs6000.c:21352 +#: config/powerpcspe/powerpcspe.c:23859 config/rs6000/rs6000.c:21429 #, c-format msgid "invalid %%j code" msgstr "código %%j no válido" -#: config/powerpcspe/powerpcspe.c:23869 config/rs6000/rs6000.c:21362 +#: config/powerpcspe/powerpcspe.c:23869 config/rs6000/rs6000.c:21439 #, c-format msgid "invalid %%J code" msgstr "código %%J no válido" -#: config/powerpcspe/powerpcspe.c:23879 config/rs6000/rs6000.c:21372 +#: config/powerpcspe/powerpcspe.c:23879 config/rs6000/rs6000.c:21449 #, c-format msgid "invalid %%k value" msgstr "valor %%k no válido" -#: config/powerpcspe/powerpcspe.c:23894 config/rs6000/rs6000.c:21387 +#: config/powerpcspe/powerpcspe.c:23894 config/rs6000/rs6000.c:21464 #: config/xtensa/xtensa.c:2415 #, c-format msgid "invalid %%K value" msgstr "valor %%K no válido" -#: config/powerpcspe/powerpcspe.c:23941 config/rs6000/rs6000.c:21434 +#: config/powerpcspe/powerpcspe.c:23941 config/rs6000/rs6000.c:21511 #, c-format msgid "invalid %%O value" msgstr "valor %%O no válido" -#: config/powerpcspe/powerpcspe.c:23988 config/rs6000/rs6000.c:21481 +#: config/powerpcspe/powerpcspe.c:23988 config/rs6000/rs6000.c:21558 #, c-format msgid "invalid %%q value" msgstr "valor %%q no válido" -#: config/powerpcspe/powerpcspe.c:24041 config/rs6000/rs6000.c:21534 +#: config/powerpcspe/powerpcspe.c:24041 config/rs6000/rs6000.c:21611 #, c-format msgid "invalid %%T value" msgstr "valor %%T no válido" -#: config/powerpcspe/powerpcspe.c:24053 config/rs6000/rs6000.c:21546 +#: config/powerpcspe/powerpcspe.c:24053 config/rs6000/rs6000.c:21623 #, c-format msgid "invalid %%u value" msgstr "valor %%u no válido" -#: config/powerpcspe/powerpcspe.c:24067 config/rs6000/rs6000.c:21560 +#: config/powerpcspe/powerpcspe.c:24067 config/rs6000/rs6000.c:21637 #: config/xtensa/xtensa.c:2384 #, c-format msgid "invalid %%v value" msgstr "valor %%v no válido" -#: config/powerpcspe/powerpcspe.c:24134 config/rs6000/rs6000.c:21627 +#: config/powerpcspe/powerpcspe.c:24134 config/rs6000/rs6000.c:21704 #: config/xtensa/xtensa.c:2436 #, c-format msgid "invalid %%x value" msgstr "valor %%x no válido" -#: config/powerpcspe/powerpcspe.c:24282 config/rs6000/rs6000.c:21747 +#: config/powerpcspe/powerpcspe.c:24282 config/rs6000/rs6000.c:21824 #, c-format msgid "invalid %%y value, try using the 'Z' constraint" msgstr "valor %%y no válido, pruebe usando la restricción 'Z'" -#: config/powerpcspe/powerpcspe.c:24996 config/rs6000/rs6000.c:22282 +#: config/powerpcspe/powerpcspe.c:24996 config/rs6000/rs6000.c:22359 msgid "__float128 and __ibm128 cannot be used in the same expression" msgstr "__float128 y __ibm128 no pueden utilizarse en la misma expresión" -#: config/powerpcspe/powerpcspe.c:25002 config/rs6000/rs6000.c:22288 +#: config/powerpcspe/powerpcspe.c:25002 config/rs6000/rs6000.c:22365 msgid "__ibm128 and long double cannot be used in the same expression" msgstr "__ibm128 y long double no pueden utilizarse en la misma expresión" -#: config/powerpcspe/powerpcspe.c:25008 config/rs6000/rs6000.c:22294 +#: config/powerpcspe/powerpcspe.c:25008 config/rs6000/rs6000.c:22371 msgid "__float128 and long double cannot be used in the same expression" msgstr "__float128 y long double no pueden utilizarse en la misma expresión" -#: config/powerpcspe/powerpcspe.c:39380 config/rs6000/rs6000.c:36572 +#: config/powerpcspe/powerpcspe.c:39380 config/rs6000/rs6000.c:36628 msgid "AltiVec argument passed to unprototyped function" msgstr "Se pasó un argumento Altivec a una función sin prototipo" -#: config/powerpcspe/powerpcspe.c:41186 config/rs6000/rs6000.c:38739 +#: config/powerpcspe/powerpcspe.c:41186 config/rs6000/rs6000.c:38795 msgid "Could not generate addis value for fusion" msgstr "No se ha podido generar valor addis para fusión" -#: config/powerpcspe/powerpcspe.c:41258 config/rs6000/rs6000.c:38809 +#: config/powerpcspe/powerpcspe.c:41258 config/rs6000/rs6000.c:38865 msgid "Unable to generate load/store offset for fusion" msgstr "No se puede generar desplazamiento de carga/almacenamiento para fusión" -#: config/powerpcspe/powerpcspe.c:41362 config/rs6000/rs6000.c:38908 +#: config/powerpcspe/powerpcspe.c:41362 config/rs6000/rs6000.c:38964 msgid "Bad GPR fusion" msgstr "Fusión GPR errónea" -#: config/powerpcspe/powerpcspe.c:41580 config/rs6000/rs6000.c:39126 +#: config/powerpcspe/powerpcspe.c:41580 config/rs6000/rs6000.c:39182 msgid "emit_fusion_p9_load, bad reg #1" msgstr "emit_fusion_p9_load, reg #1 erróneo" -#: config/powerpcspe/powerpcspe.c:41626 config/rs6000/rs6000.c:39172 +#: config/powerpcspe/powerpcspe.c:41626 config/rs6000/rs6000.c:39228 msgid "emit_fusion_p9_load, bad reg #2" msgstr "emit_fusion_p9_load, reg #2 erróneo" -#: config/powerpcspe/powerpcspe.c:41629 config/rs6000/rs6000.c:39175 +#: config/powerpcspe/powerpcspe.c:41629 config/rs6000/rs6000.c:39231 msgid "emit_fusion_p9_load not MEM" msgstr "emit_fusion_p9_load no MEM" -#: config/powerpcspe/powerpcspe.c:41667 config/rs6000/rs6000.c:39213 +#: config/powerpcspe/powerpcspe.c:41667 config/rs6000/rs6000.c:39269 msgid "emit_fusion_p9_store, bad reg #1" msgstr "emit_fusion_p9_store, reg #1 erróneo" -#: config/powerpcspe/powerpcspe.c:41713 config/rs6000/rs6000.c:39259 +#: config/powerpcspe/powerpcspe.c:41713 config/rs6000/rs6000.c:39315 msgid "emit_fusion_p9_store, bad reg #2" msgstr "emit_fusion_p9_store, reg #2 erróneo" -#: config/powerpcspe/powerpcspe.c:41716 config/rs6000/rs6000.c:39262 +#: config/powerpcspe/powerpcspe.c:41716 config/rs6000/rs6000.c:39318 msgid "emit_fusion_p9_store not MEM" msgstr "emit_fusion_p9_store no MEM" @@ -4363,14 +4363,14 @@ #: c/gimple-parser.c:188 c/gimple-parser.c:197 c/gimple-parser.c:226 #: c/gimple-parser.c:1375 c/gimple-parser.c:1404 c/gimple-parser.c:1484 #: c/gimple-parser.c:1511 c/c-parser.c:3204 c/c-parser.c:9967 -#: c/gimple-parser.c:1278 c/gimple-parser.c:1317 cp/parser.c:27841 -#: cp/parser.c:28430 +#: c/gimple-parser.c:1278 c/gimple-parser.c:1317 cp/parser.c:27838 +#: cp/parser.c:28427 #, gcc-internal-format msgid "expected %<;%>" msgstr "se esperaba %<;%>" #: c/c-parser.c:2431 c/c-parser.c:7573 c/c-parser.c:8015 c/c-parser.c:8058 -#: c/c-parser.c:8196 c/c-parser.c:12669 cp/parser.c:27839 cp/parser.c:28448 +#: c/c-parser.c:8196 c/c-parser.c:12669 cp/parser.c:27836 cp/parser.c:28445 #, gcc-internal-format msgid "expected %<,%>" msgstr "se esperaba %<,%>" @@ -4385,7 +4385,7 @@ #: c/gimple-parser.c:821 c/gimple-parser.c:837 c/gimple-parser.c:853 #: c/gimple-parser.c:880 c/gimple-parser.c:915 c/gimple-parser.c:1038 #: c/gimple-parser.c:1209 c/gimple-parser.c:1220 c/gimple-parser.c:1342 -#: c/gimple-parser.c:1441 cp/parser.c:28478 +#: c/gimple-parser.c:1441 cp/parser.c:28475 #, gcc-internal-format msgid "expected %<)%>" msgstr "se esperaba %<)%>" @@ -4393,7 +4393,7 @@ #: c/c-parser.c:3824 c/c-parser.c:4733 c/c-parser.c:4769 c/c-parser.c:6441 #: c/c-parser.c:8125 c/c-parser.c:8983 c/c-parser.c:9127 c/c-parser.c:11588 #: c/c-parser.c:18220 c/c-parser.c:18222 c/gimple-parser.c:1015 -#: cp/parser.c:28442 +#: cp/parser.c:28439 #, gcc-internal-format msgid "expected %<]%>" msgstr "se esperaba %<]%>" @@ -4407,7 +4407,7 @@ #: c/c-parser.c:17792 c/gimple-parser.c:363 c/gimple-parser.c:811 #: c/gimple-parser.c:873 c/gimple-parser.c:911 c/gimple-parser.c:1198 #: c/gimple-parser.c:1339 c/gimple-parser.c:1438 c/c-parser.c:11911 -#: cp/parser.c:28433 +#: cp/parser.c:28430 #, gcc-internal-format msgid "expected %<(%>" msgstr "se esperaba %<(%>" @@ -4414,7 +4414,7 @@ #: c/c-parser.c:4903 c/c-parser.c:10310 c/c-parser.c:16212 c/c-parser.c:18449 #: c/gimple-parser.c:141 c/gimple-parser.c:1444 c/c-parser.c:3018 -#: c/c-parser.c:3225 c/c-parser.c:9862 cp/parser.c:18155 cp/parser.c:28439 +#: c/c-parser.c:3225 c/c-parser.c:9862 cp/parser.c:18152 cp/parser.c:28436 #, gcc-internal-format msgid "expected %<{%>" msgstr "se esperaba %<{%>" @@ -4424,13 +4424,13 @@ #: c/c-parser.c:12351 c/c-parser.c:12493 c/c-parser.c:12864 c/c-parser.c:12957 #: c/c-parser.c:13566 c/c-parser.c:17636 c/c-parser.c:17695 #: c/gimple-parser.c:431 c/gimple-parser.c:1492 c/gimple-parser.c:1519 -#: c/c-parser.c:6347 c/c-parser.c:12006 cp/parser.c:28472 cp/parser.c:29597 -#: cp/parser.c:32279 +#: c/c-parser.c:6347 c/c-parser.c:12006 cp/parser.c:28469 cp/parser.c:29594 +#: cp/parser.c:32276 #, gcc-internal-format msgid "expected %<:%>" msgstr "se esperaba %<:%>" -#: c/c-parser.c:5974 cp/parser.c:28365 +#: c/c-parser.c:5974 cp/parser.c:28362 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" @@ -4439,18 +4439,18 @@ msgid "expected %<.%>" msgstr "se esperaba %<.%>" -#: c/c-parser.c:9533 c/c-parser.c:9565 c/c-parser.c:9805 cp/parser.c:30172 -#: cp/parser.c:30246 +#: c/c-parser.c:9533 c/c-parser.c:9565 c/c-parser.c:9805 cp/parser.c:30169 +#: cp/parser.c:30243 #, gcc-internal-format msgid "expected %<@end%>" msgstr "se esperaba %<@end%>" -#: c/c-parser.c:10223 c/gimple-parser.c:806 cp/parser.c:28457 +#: c/c-parser.c:10223 c/gimple-parser.c:806 cp/parser.c:28454 #, gcc-internal-format msgid "expected %<>%>" msgstr "se esperaba %<>%>" -#: c/c-parser.c:13049 c/c-parser.c:13787 cp/parser.c:28481 +#: c/c-parser.c:13049 c/c-parser.c:13787 cp/parser.c:28478 #, gcc-internal-format msgid "expected %<,%> or %<)%>" msgstr "se esperaba %<,%> o %<)%>" @@ -4458,32 +4458,32 @@ #. All following cases are statements with LHS. #: c/c-parser.c:15190 c/c-parser.c:15234 c/c-parser.c:15466 c/c-parser.c:15701 #: c/c-parser.c:17833 c/gimple-parser.c:286 c/c-parser.c:4792 -#: cp/parser.c:28460 +#: cp/parser.c:28457 #, gcc-internal-format msgid "expected %<=%>" msgstr "se esperaba %<=%>" -#: c/c-parser.c:15482 c/gimple-parser.c:1553 cp/parser.c:28436 -#: cp/parser.c:30389 +#: c/c-parser.c:15482 c/gimple-parser.c:1553 cp/parser.c:28433 +#: cp/parser.c:30386 #, gcc-internal-format msgid "expected %<}%>" msgstr "se esperaba %<}%>" -#: c/c-parser.c:16255 c/c-parser.c:16245 cp/parser.c:35674 +#: c/c-parser.c:16255 c/c-parser.c:16245 cp/parser.c:35671 #, gcc-internal-format msgid "expected %<#pragma omp section%> or %<}%>" msgstr "se esperaba %<#pragma omp section%> o %<}%>" -#: c/c-parser.c:18208 c/c-parser.c:11523 cp/parser.c:28445 cp/parser.c:31535 +#: c/c-parser.c:18208 c/c-parser.c:11523 cp/parser.c:28442 cp/parser.c:31532 #, gcc-internal-format msgid "expected %<[%>" msgstr "se esperaba %<[%>" -#: c/c-typeck.c:7847 +#: c/c-typeck.c:7852 msgid "(anonymous)" msgstr "(anónimo)" -#: c/gimple-parser.c:795 cp/parser.c:15791 cp/parser.c:28454 +#: c/gimple-parser.c:795 cp/parser.c:15788 cp/parser.c:28451 #, gcc-internal-format msgid "expected %<<%>" msgstr "se esperaba %<<%>" @@ -4739,11 +4739,11 @@ msgid "%r%s:%d:%R in % expansion of %qs" msgstr "%r%s:%d:%R en la expansión de la % de %qs" -#: cp/pt.c:1949 cp/semantics.c:5268 +#: cp/pt.c:1949 cp/semantics.c:5271 msgid "candidates are:" msgstr "los candidatos son:" -#: cp/pt.c:1951 cp/pt.c:22975 +#: cp/pt.c:1951 cp/pt.c:23053 msgid "candidate is:" msgid_plural "candidates are:" msgstr[0] "el candidato es:" @@ -4789,27 +4789,27 @@ msgid "source type is not polymorphic" msgstr "el tipo fuente no es polimórfico" -#: cp/typeck.c:6083 c/c-typeck.c:4261 +#: cp/typeck.c:6083 c/c-typeck.c:4266 #, gcc-internal-format msgid "wrong type argument to unary minus" msgstr "argumento de tipo erróneo para el decremento unario" -#: cp/typeck.c:6084 c/c-typeck.c:4248 +#: cp/typeck.c:6084 c/c-typeck.c:4253 #, gcc-internal-format msgid "wrong type argument to unary plus" msgstr "argumento de tipo erróneo para el incremento unario" -#: cp/typeck.c:6111 c/c-typeck.c:4302 +#: cp/typeck.c:6111 c/c-typeck.c:4307 #, gcc-internal-format msgid "wrong type argument to bit-complement" msgstr "argumento de tipo erróneo para complemento de bits" -#: cp/typeck.c:6128 c/c-typeck.c:4310 +#: cp/typeck.c:6128 c/c-typeck.c:4315 #, gcc-internal-format msgid "wrong type argument to abs" msgstr "argumento de tipo erróneo para abs" -#: cp/typeck.c:6140 c/c-typeck.c:4322 +#: cp/typeck.c:6140 c/c-typeck.c:4327 #, gcc-internal-format msgid "wrong type argument to conjugation" msgstr "argumento de tipo erróneo para la conjugación" @@ -5049,67 +5049,67 @@ msgid "Expected attribute bit name" msgstr "Se esperaba un nombre de atributo de bit" -#: fortran/module.c:3223 +#: fortran/module.c:3225 msgid "Expected integer string" msgstr "Se esperaba una cadena entera" -#: fortran/module.c:3227 +#: fortran/module.c:3229 msgid "Error converting integer" msgstr "Error al convertir el entero" -#: fortran/module.c:3249 +#: fortran/module.c:3251 msgid "Expected real string" msgstr "Se esperaba una cadena real" -#: fortran/module.c:3474 +#: fortran/module.c:3476 msgid "Expected expression type" msgstr "Se esperaba un tipo de expresión" -#: fortran/module.c:3554 +#: fortran/module.c:3556 msgid "Bad operator" msgstr "Operador erróneo" -#: fortran/module.c:3671 +#: fortran/module.c:3673 msgid "Bad type in constant expression" msgstr "Tipo erróneo en la expresión constante" -#: fortran/module.c:7038 +#: fortran/module.c:7040 msgid "Unexpected end of module" msgstr "Fin de módulo inesperado" -#: fortran/parse.c:1757 +#: fortran/parse.c:1761 msgid "arithmetic IF" msgstr "IF aritmético" -#: fortran/parse.c:1766 +#: fortran/parse.c:1770 msgid "attribute declaration" msgstr "declaración de atributo" -#: fortran/parse.c:1802 +#: fortran/parse.c:1806 msgid "data declaration" msgstr "declaración de datos" -#: fortran/parse.c:1820 +#: fortran/parse.c:1824 msgid "derived type declaration" msgstr "declaración de tipo derivado" -#: fortran/parse.c:1947 +#: fortran/parse.c:1951 msgid "block IF" msgstr "bloque IF" -#: fortran/parse.c:1956 +#: fortran/parse.c:1960 msgid "implied END DO" msgstr "END DO implícito" -#: fortran/parse.c:2050 fortran/resolve.c:11199 +#: fortran/parse.c:2054 fortran/resolve.c:11219 msgid "assignment" msgstr "asignación" -#: fortran/parse.c:2053 fortran/resolve.c:11250 fortran/resolve.c:11253 +#: fortran/parse.c:2057 fortran/resolve.c:11270 fortran/resolve.c:11273 msgid "pointer assignment" msgstr "asignación de puntero" -#: fortran/parse.c:2071 +#: fortran/parse.c:2075 msgid "simple IF" msgstr "IF simple" @@ -5201,106 +5201,112 @@ msgid "Operand of unary numeric operator %%<%s%%> at %%L is %s" msgstr "El operando del operador numérico unitario %%<%s%%> en %%L es %s" -#: fortran/resolve.c:3878 +#: fortran/resolve.c:3879 +#, fuzzy, c-format +#| msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s" +msgid "Unexpected derived-type entities in binary intrinsic numeric operator %%<%s%%> at %%L" +msgstr "Los operandos del operador numérico binario %%<%s%%> en %%L son %s/%s" + +#: fortran/resolve.c:3884 #, c-format msgid "Operands of binary numeric operator %%<%s%%> at %%L are %s/%s" msgstr "Los operandos del operador numérico binario %%<%s%%> en %%L son %s/%s" -#: fortran/resolve.c:3893 +#: fortran/resolve.c:3899 #, c-format msgid "Operands of string concatenation operator at %%L are %s/%s" msgstr "Los operandos del operador de concatenación de cadenas en %%L son %s/%s" -#: fortran/resolve.c:3926 +#: fortran/resolve.c:3932 #, c-format msgid "Operands of logical operator %%<%s%%> at %%L are %s/%s" msgstr "Los operandos del operador lógico %%<%s%%> en %%L son %s/%s" -#: fortran/resolve.c:3949 +#: fortran/resolve.c:3955 #, c-format msgid "Operand of .not. operator at %%L is %s" msgstr "El operando del operador .not. en %%L es %s" -#: fortran/resolve.c:3963 +#: fortran/resolve.c:3969 msgid "COMPLEX quantities cannot be compared at %L" msgstr "Las cantidades COMPLEX no se pueden comparar en %L" -#: fortran/resolve.c:4015 +#: fortran/resolve.c:4021 #, c-format msgid "Logicals at %%L must be compared with %s instead of %s" msgstr "Los lógicos en %%L se deben comparar con %s en lugar de %s" -#: fortran/resolve.c:4021 +#: fortran/resolve.c:4027 #, c-format msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s" msgstr "Los operandos del operador de comparación %%<%s%%> en %%L son %s/%s" -#: fortran/resolve.c:4034 +#: fortran/resolve.c:4040 #, c-format msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?" msgstr "Operador %%<%s%%> desconocido en %%L; ¿quiso decir '%s'?" -#: fortran/resolve.c:4037 +#: fortran/resolve.c:4043 #, c-format msgid "Unknown operator %%<%s%%> at %%L" msgstr "Operador %%<%s%%> desconocido en %%L" -#: fortran/resolve.c:4040 +#: fortran/resolve.c:4046 #, c-format msgid "Operand of user operator %%<%s%%> at %%L is %s" msgstr "El operando del operador de usuario %%<%s%%> en %%L es %s" -#: fortran/resolve.c:4044 +#: fortran/resolve.c:4050 #, c-format msgid "Operands of user operator %%<%s%%> at %%L are %s/%s" msgstr "Los operandos del operador de usuario %%<%s%%> en %%L son %s/%s" -#: fortran/resolve.c:4132 +#: fortran/resolve.c:4138 #, c-format msgid "Inconsistent ranks for operator at %%L and %%L" msgstr "Rangos inconsistentes para el operador en %%L y %%L" -#: fortran/resolve.c:6849 +#: fortran/resolve.c:6855 msgid "Loop variable" msgstr "Variable de ciclo" -#: fortran/resolve.c:6853 +#: fortran/resolve.c:6859 msgid "iterator variable" msgstr "variable de iterador" -#: fortran/resolve.c:6857 +#: fortran/resolve.c:6863 msgid "Start expression in DO loop" msgstr "Expresión de inicio en el bucle DO" -#: fortran/resolve.c:6861 +#: fortran/resolve.c:6867 msgid "End expression in DO loop" msgstr "Expresión de fin en el bucle DO" -#: fortran/resolve.c:6865 +#: fortran/resolve.c:6871 msgid "Step expression in DO loop" msgstr "Expresión de paso en el bucle DO" -#: fortran/resolve.c:7150 fortran/resolve.c:7153 +#: fortran/resolve.c:7156 fortran/resolve.c:7159 msgid "DEALLOCATE object" msgstr "objeto DEALLOCATE" -#: fortran/resolve.c:7525 fortran/resolve.c:7528 +#: fortran/resolve.c:7531 fortran/resolve.c:7534 msgid "ALLOCATE object" msgstr "objeto ALLOCATE" -#: fortran/resolve.c:7720 fortran/resolve.c:9417 +#: fortran/resolve.c:7726 fortran/resolve.c:9428 msgid "STAT variable" msgstr "variable STAT" -#: fortran/resolve.c:7764 fortran/resolve.c:9429 +#: fortran/resolve.c:7770 fortran/resolve.c:9440 msgid "ERRMSG variable" msgstr "variable ERRMSG" -#: fortran/resolve.c:9219 +#: fortran/resolve.c:9230 msgid "item in READ" msgstr "elemento en READ" -#: fortran/resolve.c:9441 +#: fortran/resolve.c:9452 msgid "ACQUIRED_LOCK variable" msgstr "variable ACQUIRED_LOCK" @@ -5333,7 +5339,7 @@ msgid "Target of rank remapping is too small (%ld < %ld)" msgstr "El objetivo del remapeo de rango es demasiado pequeño (%ld < %ld)" -#: fortran/trans-expr.c:10154 +#: fortran/trans-expr.c:10157 msgid "Assignment of scalar to unallocated array" msgstr "Asignación de escalar a un array sin espacio asignado" @@ -5342,12 +5348,12 @@ msgid "Unequal character lengths (%ld/%ld) in %s" msgstr "Longitudes de caracteres desiguales (%ld/%ld) en %s" -#: fortran/trans-intrinsic.c:8088 +#: fortran/trans-intrinsic.c:8090 #, c-format msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %ld)" msgstr "El argumento NCOPIES del intrínseco REPEAT es negativo (su valor es %ld)" -#: fortran/trans-intrinsic.c:8120 +#: fortran/trans-intrinsic.c:8122 msgid "Argument NCOPIES of REPEAT intrinsic is too large" msgstr "El argumento NCOPIES del intrínseco REPEAT es demasiado grande" @@ -5368,15 +5374,15 @@ msgid "Invalid image number %d in SYNC IMAGES" msgstr "Número de imagen %d no válido en SYNC IMAGES" -#: fortran/trans-stmt.c:2180 +#: fortran/trans-stmt.c:2177 msgid "Loop iterates infinitely" msgstr "" -#: fortran/trans-stmt.c:2200 fortran/trans-stmt.c:2456 +#: fortran/trans-stmt.c:2197 fortran/trans-stmt.c:2453 msgid "Loop variable has been modified" msgstr "Se modificó la variable de ciclo" -#: fortran/trans-stmt.c:2309 +#: fortran/trans-stmt.c:2306 msgid "DO step value is zero" msgstr "El valor de paso de DO es cero" @@ -5949,10 +5955,10 @@ msgid "Allow dollar signs in entity names." msgstr "Permite signos de dólar en nombres de entidades." -#: fortran/lang.opt:485 config/alpha/alpha.opt:31 common.opt:783 -#: common.opt:985 common.opt:989 common.opt:993 common.opt:997 common.opt:1532 -#: common.opt:1588 common.opt:1712 common.opt:1716 common.opt:1946 -#: common.opt:2116 common.opt:2792 +#: fortran/lang.opt:485 config/alpha/alpha.opt:31 common.opt:649 +#: common.opt:783 common.opt:989 common.opt:993 common.opt:997 common.opt:1001 +#: common.opt:1536 common.opt:1592 common.opt:1716 common.opt:1720 +#: common.opt:1950 common.opt:2120 common.opt:2796 msgid "Does nothing. Preserved for backward compatibility." msgstr "No hace nada. Preservado por compatibilidad hacia atrás." @@ -6171,12 +6177,12 @@ msgstr "Agrega subrayado a los nombres visibles externamente." #: fortran/lang.opt:751 c-family/c.opt:1356 c-family/c.opt:1384 -#: c-family/c.opt:1634 config/pa/pa.opt:42 config/pa/pa.opt:70 common.opt:1154 -#: common.opt:1333 common.opt:1408 common.opt:1676 common.opt:1799 -#: common.opt:2169 common.opt:2205 common.opt:2298 common.opt:2302 -#: common.opt:2407 common.opt:2498 common.opt:2506 common.opt:2514 -#: common.opt:2522 common.opt:2623 common.opt:2675 common.opt:2755 -#: common.opt:2893 common.opt:2897 common.opt:2901 common.opt:2905 +#: c-family/c.opt:1634 config/pa/pa.opt:42 config/pa/pa.opt:70 common.opt:1158 +#: common.opt:1337 common.opt:1412 common.opt:1680 common.opt:1803 +#: common.opt:2173 common.opt:2209 common.opt:2302 common.opt:2306 +#: common.opt:2411 common.opt:2502 common.opt:2510 common.opt:2518 +#: common.opt:2526 common.opt:2627 common.opt:2679 common.opt:2759 +#: common.opt:2897 common.opt:2901 common.opt:2905 common.opt:2909 msgid "Does nothing. Preserved for backward compatibility." msgstr "No hace nada. Se preserva por compatibilidad hacia atrás." @@ -6226,7 +6232,7 @@ #: c-family/c.opt:70 c-family/c.opt:73 c-family/c.opt:76 c-family/c.opt:79 #: c-family/c.opt:175 c-family/c.opt:178 c-family/c.opt:220 c-family/c.opt:224 #: c-family/c.opt:236 c-family/c.opt:1855 c-family/c.opt:1863 brig/lang.opt:39 -#: config/darwin.opt:56 common.opt:338 common.opt:341 common.opt:3046 +#: config/darwin.opt:56 common.opt:338 common.opt:341 common.opt:3050 #, c-format msgid "missing filename after %qs" msgstr "falta un nombre de fichero después de %qs" @@ -6802,7 +6808,7 @@ #: c-family/c.opt:1525 c-family/c.opt:1528 c-family/c.opt:1569 #: c-family/c.opt:1704 c-family/c.opt:1731 c-family/c.opt:1771 #: c-family/c.opt:1802 c-family/c.opt:1806 c-family/c.opt:1822 -#: config/ia64/ia64.opt:167 config/ia64/ia64.opt:170 c-family/c-opts.c:434 +#: config/ia64/ia64.opt:167 config/ia64/ia64.opt:170 c-family/c-opts.c:432 #, gcc-internal-format msgid "switch %qs is no longer supported" msgstr "la opción %qs ya no se admite" @@ -13868,10 +13874,6 @@ msgid "Warn if dereferencing a NULL pointer may lead to erroneous or undefined behavior." msgstr "Avisa si la desreferencia de un puntero NULL puede llevar a un comportamiento erróneo o indefinido." -#: common.opt:649 -msgid "Warn if the loop cannot be optimized due to nontrivial assumptions." -msgstr "Avisa si el bucle no se puede optimizar debido a presunciones no triviales." - #: common.opt:656 msgid "Warn about some C++ One Definition Rule violations during link time optimization." msgstr "Advierto de algunas violaciones de la regla de una definición de C++ durante la optimización de tiempo de enlazado." @@ -14040,1678 +14042,1678 @@ msgid "-dumpdir \tSet the directory name to be used for dumps." msgstr "-dumpdir \tEstablece el nombre del directorio a usar para los volcados." -#: common.opt:946 +#: common.opt:950 msgid "The version of the C++ ABI in use." msgstr "La versión de la ABI de C++ que se está usando." -#: common.opt:950 +#: common.opt:954 msgid "Aggressively optimize loops using language constraints." msgstr "Optimiza los bucles de forma agresiva empleando restricciones del lenguaje." -#: common.opt:954 +#: common.opt:958 msgid "Align the start of functions." msgstr "Alinea el inicio de las funciones." -#: common.opt:964 +#: common.opt:968 msgid "Align labels which are only reached by jumping." msgstr "Alinea las etiquetas que solamente se alcanzan saltando." -#: common.opt:971 +#: common.opt:975 msgid "Align all labels." msgstr "Alinea todas las etiquetas." -#: common.opt:978 +#: common.opt:982 msgid "Align the start of loops." msgstr "Alinea el inicio de los bucles." -#: common.opt:1001 +#: common.opt:1005 msgid "Select what to sanitize." msgstr "Selecciona qué sanear." -#: common.opt:1005 +#: common.opt:1009 msgid "Select type of coverage sanitization." msgstr "Selecciona el tipo de saneamiento de cobertura." -#: common.opt:1009 +#: common.opt:1013 msgid "-fasan-shadow-offset=\tUse custom shadow memory offset." msgstr "" -#: common.opt:1013 +#: common.opt:1017 msgid "-fsanitize-sections=\tSanitize global variables in user-defined sections." msgstr "-fsanitize-sections=\tSanea las variables globales en las secciones definidas por el usuario." -#: common.opt:1018 +#: common.opt:1022 msgid "After diagnosing undefined behavior attempt to continue execution." msgstr "Tras el diagnóstico de comportamiento indefinido intenta continuar la ejecución." -#: common.opt:1022 +#: common.opt:1026 msgid "This switch is deprecated; use -fsanitize-recover= instead." msgstr "Esta opción es obsoleta; utilice en su lugar -fsanitize-recover=." -#: common.opt:1029 +#: common.opt:1033 msgid "Use trap instead of a library function for undefined behavior sanitization." msgstr "Usa trap en lugar de una función de biblioteca para sanear el comportamiento indefinido." -#: common.opt:1033 +#: common.opt:1037 msgid "Generate unwind tables that are exact at each instruction boundary." msgstr "Genera tablas de desenredo que sean exactas en cada límite de instrucción." -#: common.opt:1037 +#: common.opt:1041 msgid "Generate auto-inc/dec instructions." msgstr "Genera instrucciones auto-inc/dec." -#: common.opt:1041 +#: common.opt:1045 msgid "Use sample profile information for call graph node weights. The default profile file is fbdata.afdo in 'pwd'." msgstr "Usa información de perfil de muestra para los pesos de los nodos de los grafos de llamadas. El fichero de perfil predeterminado es fbdata.afdo en 'pwd'." -#: common.opt:1046 +#: common.opt:1050 msgid "Use sample profile information for call graph node weights. The profile file is specified in the argument." msgstr "Usa la información de perfil de muestra para los pesos de los nodos de los grafos de llamadas. El fichero de perfil se especifica en el argumento." -#: common.opt:1055 +#: common.opt:1059 msgid "Generate code to check bounds before indexing arrays." msgstr "Genera código para revisar los límites antes de indexar matrices." -#: common.opt:1059 +#: common.opt:1063 msgid "Replace add, compare, branch with branch on count register." msgstr "Reemplaza add, compare, branch con branch en la cuenta de registros." -#: common.opt:1063 +#: common.opt:1067 msgid "Use profiling information for branch probabilities." msgstr "Usa la información de análisis de perfil para las probabilidades de ramificación." -#: common.opt:1067 +#: common.opt:1071 msgid "Perform branch target load optimization before prologue / epilogue threading." msgstr "Realiza optimización de carga de ramificación objetivo antes del hilo prólogo / epílogo." -#: common.opt:1071 +#: common.opt:1075 msgid "Perform branch target load optimization after prologue / epilogue threading." msgstr "Realiza optimización de carga de ramificación objetivo después del hilo prólogo / epílogo." -#: common.opt:1075 +#: common.opt:1079 msgid "Restrict target load migration not to re-use registers in any basic block." msgstr "Restringe que la migración de carga de objetivos no reuse registros en ningún bloque básico." -#: common.opt:1079 +#: common.opt:1083 msgid "-fcall-saved-\tMark as being preserved across functions." msgstr "-fcall-saved-\tMarca el como preservado entre funciones." -#: common.opt:1083 +#: common.opt:1087 msgid "-fcall-used-\tMark as being corrupted by function calls." msgstr "-fcall-used-\tMarca el como corrupto por llamadas de función." -#: common.opt:1090 +#: common.opt:1094 msgid "Save registers around function calls." msgstr "Guarda registros alrededor de llamadas de función." -#: common.opt:1094 +#: common.opt:1098 msgid "This switch is deprecated; do not use." msgstr "Esta opción es obsoleta; no lo utilice." -#: common.opt:1098 +#: common.opt:1102 msgid "Check the return value of new in C++." msgstr "Revisa el valor de devolución de new en C++." -#: common.opt:1102 common.opt:1106 +#: common.opt:1106 common.opt:1110 msgid "Perform internal consistency checkings." msgstr "Realiza comprobaciones de consistencia internas." -#: common.opt:1110 +#: common.opt:1114 msgid "Enable code hoisting." msgstr "Activa la elevación de código." -#: common.opt:1114 +#: common.opt:1118 msgid "Looks for opportunities to reduce stack adjustments and stack references." msgstr "Busca oportunidades para reducir los ajustes de pila y las referencias de pila." -#: common.opt:1118 +#: common.opt:1122 msgid "Do not put uninitialized globals in the common section." msgstr "No pone globales sin inicializar en la sección común." -#: common.opt:1126 +#: common.opt:1130 msgid "-fcompare-debug[=]\tCompile with and without e.g. -gtoggle, and compare the final-insns dump." msgstr "-fcompare-debug[=]\tCompila con y sin p.e. -gtoggle, y compara el volcado de insns finales." -#: common.opt:1130 +#: common.opt:1134 msgid "Run only the second compilation of -fcompare-debug." msgstr "Ejecuta sólo la segunda compilación de -fcompare-debug." -#: common.opt:1134 +#: common.opt:1138 msgid "Perform comparison elimination after register allocation has finished." msgstr "Realiza la eliminación de comparaciones después de terminar el alojamiento de registros." -#: common.opt:1138 +#: common.opt:1142 msgid "Do not perform optimizations increasing noticeably stack usage." msgstr "No realizar optimizaciones que incrementan notablemente el uso de la pila." -#: common.opt:1142 +#: common.opt:1146 msgid "Perform a register copy-propagation optimization pass." msgstr "Realiza el paso de optimización de copia-propagación de registros." -#: common.opt:1146 +#: common.opt:1150 msgid "Perform cross-jumping optimization." msgstr "Realiza optimizaciones de saltos cruzados." -#: common.opt:1150 +#: common.opt:1154 msgid "When running CSE, follow jumps to their targets." msgstr "Cuando se esté ejecutando CSE, sigue los saltos a sus objetivos." -#: common.opt:1158 +#: common.opt:1162 msgid "Omit range reduction step when performing complex division." msgstr "Omite el paso de reducción de rango al realizar divisiones complejas." -#: common.opt:1162 +#: common.opt:1166 msgid "Complex multiplication and division follow Fortran rules." msgstr "La multiplicación y la división complejas siguen las reglas Fortran." -#: common.opt:1166 +#: common.opt:1170 msgid "Place data items into their own section." msgstr "Coloca los elementos de datos en su propia sección." -#: common.opt:1170 +#: common.opt:1174 msgid "List all available debugging counters with their limits and counts." msgstr "Enumera todos los contadores de depuración disponibles con sus límites y cuentas." -#: common.opt:1174 +#: common.opt:1178 msgid "-fdbg-cnt=:[,:,...]\tSet the debug counter limit." msgstr "-fdbg-cnt=:[,:,...]\tEstablece el límite del contador de depuración." -#: common.opt:1178 +#: common.opt:1182 msgid "-fdebug-prefix-map== Map one directory name to another in debug information." msgstr "-fdebug-prefix-map== Asocia un nombre de directorio a otro en la información de depuración." -#: common.opt:1182 +#: common.opt:1186 msgid "-ffile-prefix-map== Map one directory name to another in compilation result." msgstr "-ffile-prefix-map== Asocia un nombre de directorio a otro en la información de depuración." -#: common.opt:1186 +#: common.opt:1190 msgid "Output .debug_types section when using DWARF v4 debuginfo." msgstr "Muestra la sección .debug_types al usar la información de depuración DWARF v4." -#: common.opt:1192 +#: common.opt:1196 msgid "Defer popping functions args from stack until later." msgstr "Posterga la extracción de argumentos de funciones de la pila hasta más tarde." -#: common.opt:1196 +#: common.opt:1200 msgid "Attempt to fill delay slots of branch instructions." msgstr "Intenta rellenar las ranuras de retraso de las instrucciones de ramificación." -#: common.opt:1200 +#: common.opt:1204 msgid "Delete dead instructions that may throw exceptions." msgstr "Borra instrucciones muertas que pueden lanzar excepciones." -#: common.opt:1204 +#: common.opt:1208 msgid "Delete useless null pointer checks." msgstr "Borra las revisiones de punteros nulos sin uso." -#: common.opt:1208 +#: common.opt:1212 msgid "Stream extra data to support more aggressive devirtualization in LTO local transformation mode." msgstr "Hace fluir datos extra para permitir desvirtualización más agresiva en el modo de transformación local LTO." -#: common.opt:1212 +#: common.opt:1216 msgid "Perform speculative devirtualization." msgstr "Realiza desvirtualización especulativa." -#: common.opt:1216 +#: common.opt:1220 msgid "Try to convert virtual calls to direct ones." msgstr "Trata de convertir las llamadas virtuales a llamadas directas." -#: common.opt:1220 +#: common.opt:1224 msgid "-fdiagnostics-show-location=[once|every-line]\tHow often to emit source location at the beginning of line-wrapped diagnostics." msgstr "-fdiagnostics-show-location=[once|every-line]\tIndica la frecuencia con que se debe emitir la ubicación del código al inicio de los diagnósticos con corte de línea." -#: common.opt:1237 +#: common.opt:1241 msgid "Show the source line with a caret indicating the column." msgstr "Muestra la línea de código con un signo de intercalación para indicar la columna." -#: common.opt:1245 +#: common.opt:1249 msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics." msgstr "-fdiagnostics-color=[never|always|auto]\tColorea los diagnósticos." -#: common.opt:1265 +#: common.opt:1269 msgid "Print fix-it hints in machine-readable form." msgstr "Imprime indicaciones fix-it (arreglar) en formato legible por una máquina." -#: common.opt:1269 +#: common.opt:1273 msgid "Print fix-it hints to stderr in unified diff format." msgstr "Imprime indicaciones fix-it (arreglar) en stder en formato diff unificado." -#: common.opt:1273 +#: common.opt:1277 msgid "Amend appropriate diagnostic messages with the command line option that controls them." msgstr "Asocia adecuadamente los mensajes de diagnóstico con la opción de línea de orden que los controla." -#: common.opt:1277 +#: common.opt:1281 msgid "-fdisable-[tree|rtl|ipa]-=range1+range2 disables an optimization pass." msgstr "-fdisable-[tree|rtl|ipa]-=rango1+rango2 desactiva un paso de optimización." -#: common.opt:1281 +#: common.opt:1285 msgid "-fenable-[tree|rtl|ipa]-=range1+range2 enables an optimization pass." msgstr "-fenable-[tree|rtl|ipa]-=rango1+rango2 activa un paso de optimización." -#: common.opt:1285 +#: common.opt:1289 msgid "-fdump-\tDump various compiler internals to a file." msgstr "-fdump-\tVuelca varios internos del compilador a un fichero." -#: common.opt:1292 +#: common.opt:1296 msgid "-fdump-final-insns=filename\tDump to filename the insns at the end of translation." msgstr "-fdump-final-insns=fichero\tVuelca al fichero las insns al final de la traducción." -#: common.opt:1296 +#: common.opt:1300 msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code." msgstr "-fdump-go-spec=fichero\tEscribe todas las declaraciones al fichero como código Go." -#: common.opt:1300 +#: common.opt:1304 msgid "Suppress output of addresses in debugging dumps." msgstr "Suprime la salida de direcciones en los volcados de depuración." -#: common.opt:1304 +#: common.opt:1308 msgid "Collect and dump debug information into temporary file if ICE in C/C++ compiler occurred." msgstr "Recoge y vuelca información de depuración en un fichero temporal si ha ocurrido ICE en el compilador de C/C++." -#: common.opt:1309 +#: common.opt:1313 msgid "Dump detailed information on GCC's internal representation of source code locations." msgstr "Vuelca información detallada de las ubicaciones de código fuente en la representación interna de GCC." -#: common.opt:1313 +#: common.opt:1317 msgid "Dump optimization passes." msgstr "Vuelca pasadas de optimización." -#: common.opt:1317 +#: common.opt:1321 msgid "Suppress output of instruction numbers, line number notes and addresses in debugging dumps." msgstr "Suprime la salida de números de instrucción, notas de números de linea y direcciones en los volcados de depuración." -#: common.opt:1321 +#: common.opt:1325 msgid "Suppress output of previous and next insn numbers in debugging dumps." msgstr "Suprime la salida de los números insn previos y siguientes en los volcados de depuración." -#: common.opt:1325 +#: common.opt:1329 msgid "Enable CFI tables via GAS assembler directives." msgstr "Activa las tablas CFI a través de directivas del ensamblador GAS." -#: common.opt:1329 +#: common.opt:1333 msgid "Perform early inlining." msgstr "Realiza la inclusión en línea temprana." -#: common.opt:1337 +#: common.opt:1341 msgid "Perform interprocedural reduction of aggregates." msgstr "Realiza la reducción interprocedural de los agregados." -#: common.opt:1341 +#: common.opt:1345 msgid "Perform unused symbol elimination in debug info." msgstr "Realiza la eliminación de símbolos sin uso en la información de depuración." -#: common.opt:1345 +#: common.opt:1349 msgid "Perform unused type elimination in debug info." msgstr "Realiza la eliminación de tipos sin uso en la información de depuración." -#: common.opt:1349 +#: common.opt:1353 msgid "Do not suppress C++ class debug information." msgstr "No suprime la información de depuración de clases C++." -#: common.opt:1353 +#: common.opt:1357 msgid "Enable exception handling." msgstr "Activa el manejo de excepciones." -#: common.opt:1357 +#: common.opt:1361 msgid "Perform a number of minor, expensive optimizations." msgstr "Realiza un número de optimizaciones menores y costosas." -#: common.opt:1361 +#: common.opt:1365 msgid "-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-point precision." msgstr "-fexcess-precision=[fast|standard]\tEspecifica el manejo del exceso de precisión de coma flotante." -#: common.opt:1364 +#: common.opt:1368 #, c-format msgid "unknown excess precision style %qs" msgstr "estilo de exceso de precisión %qs desconocido" -#: common.opt:1376 +#: common.opt:1380 msgid "-fpermitted-flt-eval-methods=[c11|ts-18661]\tSpecify which values of FLT_EVAL_METHOD are permitted." msgstr "-fpermitted-flt-eval-methods=[c11|ts--18661]\tEspecifica qué valores de FLT_EVAL_METHOD están permitidos." -#: common.opt:1379 +#: common.opt:1383 #, c-format msgid "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs" msgstr "especificación desconocida para el conjunto de valores de FLT_EVAL_METHOD a permitir %qs" -#: common.opt:1392 +#: common.opt:1396 msgid "Output lto objects containing both the intermediate language and binary output." msgstr "Muestra los objetos lto que contienen tanto el lenguaje intermedio como la salida binaria." -#: common.opt:1396 +#: common.opt:1400 msgid "Assume no NaNs or infinities are generated." msgstr "Asume que no se generan NaNs o infinitos." -#: common.opt:1400 +#: common.opt:1404 msgid "-ffixed-\tMark as being unavailable to the compiler." msgstr "-ffixed-\tMarca el como no disponible para el compilador." -#: common.opt:1404 +#: common.opt:1408 msgid "Don't allocate floats and doubles in extended-precision registers." msgstr "No aloja floats y doubles en registros de precisión extendida." -#: common.opt:1412 +#: common.opt:1416 msgid "Perform a forward propagation pass on RTL." msgstr "Realiza el paso de la propagación hacia adelante en RTL." -#: common.opt:1416 +#: common.opt:1420 msgid "-ffp-contract=[off|on|fast]\tPerform floating-point expression contraction." msgstr "-ffp-contract=[off|on|fast]\tRealiza contracción de expresión de coma flotante." -#: common.opt:1419 +#: common.opt:1423 #, c-format msgid "unknown floating point contraction style %qs" msgstr "estilo de contracción de coma flotante %qs desconocido" -#: common.opt:1433 +#: common.opt:1437 msgid "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" exceptions." msgstr "Permite a las funciones internas ceil, floor, round, trunc generar excepciones \"inexactas\"." -#: common.opt:1440 +#: common.opt:1444 msgid "Allow function addresses to be held in registers." msgstr "Permite que las direcciones de las funciones se conservern en registros." -#: common.opt:1444 +#: common.opt:1448 msgid "Place each function into its own section." msgstr "Coloca cada función en su propia sección." -#: common.opt:1448 +#: common.opt:1452 msgid "Perform global common subexpression elimination." msgstr "Realiza la eliminación de subexpresiones comunes globales." -#: common.opt:1452 +#: common.opt:1456 msgid "Perform enhanced load motion during global common subexpression elimination." msgstr "Realiza el movimiento de la carga mejorada durante la eliminación de subexpresiones comunes globales." -#: common.opt:1456 +#: common.opt:1460 msgid "Perform store motion after global common subexpression elimination." msgstr "Realiza el movimiento de guardado después de la eliminación de subexpresiones comunes globales." -#: common.opt:1460 +#: common.opt:1464 msgid "Perform redundant load after store elimination in global common subexpression elimination." msgstr "Realiza la carga redundante después de la eliminación de almacenamiento en la eliminación de subexpresiones comunes globales" -#: common.opt:1465 +#: common.opt:1469 msgid "Perform global common subexpression elimination after register allocation has finished." msgstr "Realiza la eliminación de subexpresiones comunes globales tras la finalización de la asignación de registros." -#: common.opt:1482 +#: common.opt:1486 msgid "-fgnat-encodings=[all|gdb|minimal]\tSelect the balance between GNAT encodings and standard DWARF emitted in the debug information" msgstr "-fgnat-encodings=[all|gdb|minimal]\tSelecciona el equilibrio entre codificaciones GNAT y DWARF estándar emitidos en la información de depuración." -#: common.opt:1487 +#: common.opt:1491 msgid "Enable in and out of Graphite representation." msgstr "Activa in y out de la representación Graphite." -#: common.opt:1491 +#: common.opt:1495 msgid "Enable Graphite Identity transformation." msgstr "Activa la transformación Graphite Identity." -#: common.opt:1495 +#: common.opt:1499 msgid "Enable hoisting adjacent loads to encourage generating conditional move instructions." msgstr "Activa las cargas de elevación adyacentes para fomentar la generación de instrucciones move condicionales." -#: common.opt:1504 +#: common.opt:1508 msgid "Mark all loops as parallel." msgstr "Marca todos los bucles como paralelos." -#: common.opt:1508 common.opt:1516 common.opt:2587 +#: common.opt:1512 common.opt:1520 common.opt:2591 msgid "Enable loop nest transforms. Same as -floop-nest-optimize." msgstr "Activa las transformaciones anidadas de bucle. Igual que -floop-nest-optimize." -#: common.opt:1512 +#: common.opt:1516 msgid "Enable loop interchange on trees." msgstr "Activa el intercambio de bucles en árboles." -#: common.opt:1520 +#: common.opt:1524 msgid "Perform unroll-and-jam on loops." msgstr "Realiza unroll-and-jam en los bucles." -#: common.opt:1524 +#: common.opt:1528 msgid "Enable support for GNU transactional memory." msgstr "Activa el soporte para la memoria transaccional de GNU." -#: common.opt:1528 +#: common.opt:1532 msgid "Use STB_GNU_UNIQUE if supported by the assembler." msgstr "Usa STB_GNU_UNIQUE si lo admite el ensamblador." -#: common.opt:1536 +#: common.opt:1540 msgid "Enable the loop nest optimizer." msgstr "Activa el optimizador de anidamiento de bucles." -#: common.opt:1540 +#: common.opt:1544 msgid "Force bitfield accesses to match their type width." msgstr "Fuerza que los accesos de campos de bit coincidan con su anchura de tipo." -#: common.opt:1544 +#: common.opt:1548 msgid "Merge adjacent stores." msgstr "Mezcla los almacenamientos adyacentes." -#: common.opt:1548 +#: common.opt:1552 msgid "Enable guessing of branch probabilities." msgstr "Activa la predicción de probabilidades de ramificación." -#: common.opt:1556 +#: common.opt:1560 msgid "Process #ident directives." msgstr "Procesa directivas #ident." -#: common.opt:1560 +#: common.opt:1564 msgid "Perform conversion of conditional jumps to branchless equivalents." msgstr "Realiza la conversión de saltos condicionales a equivalentes sin ramificación." -#: common.opt:1564 +#: common.opt:1568 msgid "Perform conversion of conditional jumps to conditional execution." msgstr "Realiza la conversión de saltos condicionales a ejecución condicional." -#: common.opt:1568 +#: common.opt:1572 msgid "-fstack-reuse=[all|named_vars|none]\tSet stack reuse level for local variables." msgstr "-fstack-reuse=[all|named_vars|none]\tEstablece el nivel de reúso de la pila para variables locales." -#: common.opt:1571 +#: common.opt:1575 #, c-format msgid "unknown Stack Reuse Level %qs" msgstr "nivel de reúso de la pila %qs desconocido" -#: common.opt:1584 +#: common.opt:1588 msgid "Convert conditional jumps in innermost loops to branchless equivalents." msgstr "Convierte saltos condicionales en los bucles más internos a equivalentes sin ramificación." -#: common.opt:1596 +#: common.opt:1600 msgid "Do not generate .size directives." msgstr "No genera directivas .size." -#: common.opt:1600 +#: common.opt:1604 msgid "Perform indirect inlining." msgstr "Realiza la inclusión en línea indirecta." -#: common.opt:1606 +#: common.opt:1610 msgid "Enable inlining of function declared \"inline\", disabling disables all inlining." msgstr "Activa la inclusión en línea de la la función declarada \"inline\", y desactiva todas las demás inclusiones en línea." -#: common.opt:1610 +#: common.opt:1614 msgid "Integrate functions into their callers when code size is known not to grow." msgstr "Integra las funciones en sus invocadores cuando se sabe que el tamaño del código no crece." -#: common.opt:1614 +#: common.opt:1618 msgid "Integrate functions not declared \"inline\" into their callers when profitable." msgstr "Integra las funciones que no se declaran \"inline\" en sus invocadores cuando es rentable." -#: common.opt:1618 +#: common.opt:1622 msgid "Integrate functions only required by their single caller." msgstr "Integra las funciones sólo requeridas por su invocador único." -#: common.opt:1625 +#: common.opt:1629 msgid "-finline-limit=\tLimit the size of inlined functions to ." msgstr "-finline-limit=\tLimita el tamaño de las funciones incluidas en línea a ." -#: common.opt:1629 +#: common.opt:1633 msgid "Inline __atomic operations when a lock free instruction sequence is available." msgstr "Coloca en línea las operaciones __atomic cuando una secuencia de instrucciones lock free está disponible" -#: common.opt:1636 +#: common.opt:1640 msgid "-fcf-protection=[full|branch|return|none]\tInstrument functions with checks to verify jump/call/return control-flow transfer instructions have valid targets." msgstr "-fcf-protection=[full|branch|return|none]\tInstrumenta las funciones con comprobaciones para verificar que las instrucciones de transferencia del flujo de control jump/call/return tienen objetivos válidos." -#: common.opt:1640 +#: common.opt:1644 #, c-format msgid "unknown Control-Flow Protection Level %qs" msgstr "nivel de protección del flujo de control %qs desconocido" -#: common.opt:1656 +#: common.opt:1660 msgid "Instrument function entry and exit with profiling calls." msgstr "Instrumenta funciones de entrada y salida con llamadas de análisis de perfil." -#: common.opt:1660 +#: common.opt:1664 msgid "-finstrument-functions-exclude-function-list=name,... Do not instrument listed functions." msgstr "-finstrument-functions-exclude-functions-list=nombre,... No instrumenta las funciones enlistadas." -#: common.opt:1664 +#: common.opt:1668 msgid "-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in files." msgstr "-finstrument-functions-exclude-file-list=fichero,... No instrumenta las funciones enlistadas en ficheros." -#: common.opt:1668 +#: common.opt:1672 msgid "Perform interprocedural constant propagation." msgstr "Realiza la propagación interprocedural de las constantes." -#: common.opt:1672 +#: common.opt:1676 msgid "Perform cloning to make Interprocedural constant propagation stronger." msgstr "Realiza la clonación para hacer la propagación constante Interprocedural más fuerte." -#: common.opt:1680 +#: common.opt:1684 msgid "Perform interprocedural bitwise constant propagation." msgstr "Realiza la propagación interprocedural de las constantes por bits." -#: common.opt:1684 +#: common.opt:1688 msgid "Perform interprocedural profile propagation." msgstr "Realiza la propagación de perfil interprocedural." -#: common.opt:1688 +#: common.opt:1692 msgid "Perform interprocedural points-to analysis." msgstr "Realiza el análisis interprocedural de puntero-a." -#: common.opt:1692 +#: common.opt:1696 msgid "Discover pure and const functions." msgstr "Descubre funciones pure y const." -#: common.opt:1696 +#: common.opt:1700 msgid "Perform Identical Code Folding for functions and read-only variables." msgstr "Realiza plegamiento de código idéntico en funciones y variables de solo lectura." -#: common.opt:1700 +#: common.opt:1704 msgid "Perform Identical Code Folding for functions." msgstr "Realiza plegamiento de código idéntico en funciones." -#: common.opt:1704 +#: common.opt:1708 msgid "Perform Identical Code Folding for variables." msgstr "Realiza plegamiento de código idéntico en variables." -#: common.opt:1708 +#: common.opt:1712 msgid "Discover readonly and non addressable static variables." msgstr "Descubre variables estáticas de sólo lectura y no direccionables." -#: common.opt:1720 +#: common.opt:1724 msgid "Perform IPA Value Range Propagation." msgstr "Realiza la Propagación de Rango Valor IPA." -#: common.opt:1724 +#: common.opt:1728 msgid "-fira-algorithm=[CB|priority]\tSet the used IRA algorithm." msgstr "-fira-algorithm=[CB|priority]\tEstablece el algoritmo IRA a usar." -#: common.opt:1727 +#: common.opt:1731 #, c-format msgid "unknown IRA algorithm %qs" msgstr "algoritmo IRA %qs desconocido" -#: common.opt:1737 +#: common.opt:1741 msgid "-fira-region=[one|all|mixed]\tSet regions for IRA." msgstr "-fira-region=[one|all|mixed]\tEstablece las regiones para IRA." -#: common.opt:1740 +#: common.opt:1744 #, c-format msgid "unknown IRA region %qs" msgstr "región IRA %qs desconocida" -#: common.opt:1753 +#: common.opt:1757 msgid "Use IRA based register pressure calculation in RTL hoist optimizations." msgstr "Usa el cálculo de presión de registros basado en IRA en optimizaciones de izado RTL." -#: common.opt:1758 +#: common.opt:1762 msgid "Use IRA based register pressure calculation in RTL loop optimizations." msgstr "Usa el cálculo de presión de registros basado en IRA en optimizaciones de bucle RTL." -#: common.opt:1763 +#: common.opt:1767 msgid "Share slots for saving different hard registers." msgstr "Comparte ranuras para ahorrar registros hard diferentes." -#: common.opt:1767 +#: common.opt:1771 msgid "Share stack slots for spilled pseudo-registers." msgstr "Comparte ranuras de pila para pseudo-registros derramados." -#: common.opt:1771 +#: common.opt:1775 msgid "-fira-verbose=\tControl IRA's level of diagnostic messages." msgstr "-fira-verbose=\tControla el nivel de mensajes de diagnóstico de IRA." -#: common.opt:1775 +#: common.opt:1779 msgid "Optimize induction variables on trees." msgstr "Optimiza la inducción de variables en los árboles." -#: common.opt:1779 +#: common.opt:1783 msgid "Use jump tables for sufficiently large switch statements." msgstr "Usa tablas de salto para las declaraciones switch suficientemente grandes." -#: common.opt:1783 +#: common.opt:1787 msgid "Generate code for functions even if they are fully inlined." msgstr "Genera código para las funciones aún si están completamente incluidas en línea." -#: common.opt:1787 +#: common.opt:1791 msgid "Generate code for static functions even if they are never called." msgstr "Genera código para las funciones estáticas aunque nunca se las llame." -#: common.opt:1791 +#: common.opt:1795 msgid "Emit static const variables even if they are not used." msgstr "Emite variables static const aún si no se usan." -#: common.opt:1795 +#: common.opt:1799 msgid "Give external symbols a leading underscore." msgstr "Da a los símbolos externos un subrayado inicial." -#: common.opt:1803 +#: common.opt:1807 msgid "Do CFG-sensitive rematerialization in LRA." msgstr "Hacer rematerialización sensible a CFG en LRA." -#: common.opt:1807 +#: common.opt:1811 msgid "Enable link-time optimization." msgstr "Activa las optimizaciones de tiempo de enlace." -#: common.opt:1811 +#: common.opt:1815 msgid "Link-time optimization with number of parallel jobs or jobserver." msgstr "Optimización en tiempo de enlace con el número de trabajos paralelos o el servidor de trabajos." -#: common.opt:1814 +#: common.opt:1818 #, c-format msgid "unknown LTO partitioning model %qs" msgstr "modelo de partición LTO %qs desconocido" -#: common.opt:1833 +#: common.opt:1837 msgid "Specify the algorithm to partition symbols and vars at linktime." msgstr "Espcifica el algoritmo para particionar símbolos y variables en tiempo de enlazado." -#: common.opt:1838 +#: common.opt:1842 msgid "-flto-compression-level=\tUse zlib compression level for IL." msgstr "-flto-compression-level=\tUsa el nivel de compresión de zlib para IL." -#: common.opt:1842 +#: common.opt:1846 msgid "Merge C++ types using One Definition Rule." msgstr "Mezclar tipos C++ usando la regla de una sola definición." -#: common.opt:1846 +#: common.opt:1850 msgid "Report various link-time optimization statistics." msgstr "Reporta varias estadísticas de optimización de tiempo de enlace." -#: common.opt:1850 +#: common.opt:1854 msgid "Report various link-time optimization statistics for WPA only." msgstr "Reporta varias estadísticas de optimización de tiempo de enlace solo para WPA." -#: common.opt:1854 +#: common.opt:1858 msgid "Set errno after built-in math functions." msgstr "Establece errno después de las funciones matemáticas internas." -#: common.opt:1858 +#: common.opt:1862 msgid "-fmax-errors=\tMaximum number of errors to report." msgstr "-fmax-errors=\tNúmero máximo de errores a reportar." -#: common.opt:1862 +#: common.opt:1866 msgid "Report on permanent memory allocation." msgstr "Reporta el alojamiento en memoria permanente." -#: common.opt:1866 +#: common.opt:1870 msgid "Report on permanent memory allocation in WPA only." msgstr "Reporta el alojamiento en memoria permanente solo en WPA." -#: common.opt:1873 +#: common.opt:1877 msgid "Attempt to merge identical constants and constant variables." msgstr "Intenta mezclar constantes idénticas y variables constantes." -#: common.opt:1877 +#: common.opt:1881 msgid "Attempt to merge identical constants across compilation units." msgstr "Intenta mezclar constantes idénticas a través de las unidades de compilación." -#: common.opt:1881 +#: common.opt:1885 msgid "Attempt to merge identical debug strings across compilation units." msgstr "Intenta mezclar cadenas de depuración idénticas a través de las unidades de compilación." -#: common.opt:1885 +#: common.opt:1889 msgid "-fmessage-length=\tLimit diagnostics to characters per line. 0 suppresses line-wrapping." msgstr "-fmessage-length=\tLimita los diagnósticos a caracteres por línea. 0 suprime el corte de línea." -#: common.opt:1889 +#: common.opt:1893 msgid "Perform SMS based modulo scheduling before the first scheduling pass." msgstr "Realiza la planificación SMS basada en módulo antes del primer paso de calendarización." -#: common.opt:1893 +#: common.opt:1897 msgid "Perform SMS based modulo scheduling with register moves allowed." msgstr "Realiza la planificación módulo basada en SMS con movimientos permitidos de registros." -#: common.opt:1897 +#: common.opt:1901 msgid "Move loop invariant computations out of loops." msgstr "Mueve las computaciones invariantes de bucles fuera de los bucles." -#: common.opt:1901 +#: common.opt:1905 msgid "Use the RTL dead code elimination pass." msgstr "Usa el paso de eliminación de código muerto de RTL." -#: common.opt:1905 +#: common.opt:1909 msgid "Use the RTL dead store elimination pass." msgstr "Usa la eliminación de almacenamiento muerto de RTL." -#: common.opt:1909 +#: common.opt:1913 msgid "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling." msgstr "Activa/Desactiva la planificación tradicional en bucles que ya pasaron la calendarización módulo." -#: common.opt:1913 +#: common.opt:1917 msgid "Support synchronous non-call exceptions." msgstr "Permite las excepciones síncronas que no son llamadas." -#: common.opt:1916 +#: common.opt:1920 #, c-format msgid "options or targets missing after %qs" msgstr "faltan opciones u objetivos después de %qs" -#: common.opt:1917 +#: common.opt:1921 msgid "-foffload== Specify offloading targets and options for them." msgstr "-foffload== Especifica objetivos de descarga y opciones para ellos." -#: common.opt:1921 +#: common.opt:1925 msgid "-foffload-abi=[lp64|ilp32] Set the ABI to use in an offload compiler." msgstr "-foffload-abi=[lp64|ilp32] Establece el ABI que usar en un compilador de descarga." -#: common.opt:1924 +#: common.opt:1928 #, c-format msgid "unknown offload ABI %qs" msgstr "descarga ABI %qs desconocida" -#: common.opt:1934 +#: common.opt:1938 msgid "When possible do not generate stack frames." msgstr "Cuando sea posible no genera marcos de pila." -#: common.opt:1938 +#: common.opt:1942 msgid "Enable all optimization info dumps on stderr." msgstr "Activa todos los volcados de información de optimización en stderr." -#: common.opt:1942 +#: common.opt:1946 msgid "-fopt-info[-=filename]\tDump compiler optimization details." msgstr "-fopt-info[-=filename]\tVuelca los detalles de optimización del compilador." -#: common.opt:1950 +#: common.opt:1954 msgid "Optimize sibling and tail recursive calls." msgstr "Optimiza las llamadas recursivas hermanadas y de extremo." -#: common.opt:1954 +#: common.opt:1958 msgid "Perform partial inlining." msgstr "Realiza la inclusión en línea parcial." -#: common.opt:1958 common.opt:1962 +#: common.opt:1962 common.opt:1966 msgid "Report on memory allocation before interprocedural optimization." msgstr "Reporta la ubicación de memoria antes de la optimización interprocedural." -#: common.opt:1966 +#: common.opt:1970 msgid "Pack structure members together without holes." msgstr "Empaqueta juntos a los miembros de la estructura sin agujeros." -#: common.opt:1970 +#: common.opt:1974 msgid "-fpack-struct=\tSet initial maximum structure member alignment." msgstr "-fpack-struct=\tEstablece la alineación inicial máxima de estructuras miembro." -#: common.opt:1974 +#: common.opt:1978 msgid "Return small aggregates in memory, not registers." msgstr "Devuelve los agregados small en memoria, no en registros." -#: common.opt:1978 +#: common.opt:1982 msgid "Perform loop peeling." msgstr "Realiza el pelado de bucles." -#: common.opt:1982 +#: common.opt:1986 msgid "Enable machine specific peephole optimizations." msgstr "Activa las optimizaciones de mirilla específicas de la máquina." -#: common.opt:1986 +#: common.opt:1990 msgid "Enable an RTL peephole pass before sched2." msgstr "Activa un paso de mirilla RTL antes de sched2." -#: common.opt:1990 +#: common.opt:1994 msgid "Generate position-independent code if possible (large mode)." msgstr "Genera código independiente de posición si es posible (modo large)." -#: common.opt:1994 +#: common.opt:1998 msgid "Generate position-independent code for executables if possible (large mode)." msgstr "Genera código independiente de posición para ejecutables si es posible (modo large)." -#: common.opt:1998 +#: common.opt:2002 msgid "Generate position-independent code if possible (small mode)." msgstr "Genera código independiente de posición si es posible (modo small)." -#: common.opt:2002 +#: common.opt:2006 msgid "Generate position-independent code for executables if possible (small mode)." msgstr "Genera código independiente de posición para ejecutables si es posible (modo small)." -#: common.opt:2006 +#: common.opt:2010 msgid "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site)." msgstr "Usa PLT para llamadas PIC (-fno-plt: carga la dirección desde GOT en el sitio de la llamada)." -#: common.opt:2010 +#: common.opt:2014 msgid "Specify a plugin to load." msgstr "Especifica un plugin a cargar." -#: common.opt:2014 +#: common.opt:2018 msgid "-fplugin-arg--[=]\tSpecify argument = for plugin ." msgstr "-fplugin-arg--[=]\tEspecifica el argumento = para el plugin bre." -#: common.opt:2018 +#: common.opt:2022 msgid "Run predictive commoning optimization." msgstr "Ejecuta la optimización comunizadora predictiva." -#: common.opt:2022 +#: common.opt:2026 msgid "Generate prefetch instructions, if available, for arrays in loops." msgstr "Genera instrucciones de precargado, si están disponibles, para matrices en bucles." -#: common.opt:2026 +#: common.opt:2030 msgid "Enable basic program profiling code." msgstr "Activa el código básico de análisis de perfil del programa." -#: common.opt:2030 +#: common.opt:2034 msgid "Generate absolute source path names for gcov." msgstr "Genera nombres de ruta de fuentes absolutos para gcov." -#: common.opt:2034 +#: common.opt:2038 msgid "Insert arc-based program profiling code." msgstr "Inserta el código de análisis de perfil de programa basado en arc." -#: common.opt:2038 +#: common.opt:2042 msgid "Set the top-level directory for storing the profile data. The default is 'pwd'." msgstr "Establece el directorio de nivel principal para almacenar los datos de perfilado. El predeterminado es 'pwd'." -#: common.opt:2043 +#: common.opt:2047 msgid "Enable correction of flow inconsistent profile data input." msgstr "Activa la corrección de datos de entrada de perfilado inconsistente de flujo." -#: common.opt:2047 +#: common.opt:2051 msgid "-fprofile-update=[single|atomic|prefer-atomic]\tSet the profile update method." msgstr "-fprofile-update=[single|atomic|prefer-atomic]\tEstablece el método de actualización del perfil." -#: common.opt:2050 +#: common.opt:2054 #, c-format msgid "unknown profile update method %qs" msgstr "método de actualización de perfil desconocido %qs" -#: common.opt:2063 +#: common.opt:2067 msgid "Enable common options for generating profile info for profile feedback directed optimizations." msgstr "Activa las opciones comunes para generar información de análisis de perfil para optimizaciones dirigidas por retroalimentación de perfil." -#: common.opt:2067 +#: common.opt:2071 msgid "Enable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir=." msgstr "Activa las opciones comunes para generar información de análisis de perfil para optimizaciones dirigidas por retroalimentación de perfili, y establece -fprofile-dir=." -#: common.opt:2071 +#: common.opt:2075 msgid "Enable common options for performing profile feedback directed optimizations." msgstr "Activa las opciones comunes para realizar optimizaciones dirigidas por retroalimentación de perfil." -#: common.opt:2075 +#: common.opt:2079 msgid "Enable common options for performing profile feedback directed optimizations, and set -fprofile-dir=." msgstr "Activa las opciones comunes para realizar optimizaciones dirigidas por retroalimentación de perfil, y establece -fprofile-dir=." -#: common.opt:2079 +#: common.opt:2083 msgid "Insert code to profile values of expressions." msgstr "Inserta el código para perfilar valores de expresiones." -#: common.opt:2083 +#: common.opt:2087 msgid "Report on consistency of profile." msgstr "Informa sobre la coherencia del perfil." -#: common.opt:2087 +#: common.opt:2091 msgid "Enable function reordering that improves code placement." msgstr "Activa reordenación de funciones que mejora ubicación de código." -#: common.opt:2091 +#: common.opt:2095 msgid "Insert NOP instructions at each function entry." msgstr "Inserta instrucciones NOP en cada entrada de función." -#: common.opt:2098 +#: common.opt:2102 msgid "-frandom-seed=\tMake compile reproducible using ." msgstr "-frandom-seed=\tHace que se pueda reproducir la compilación utilizando la ." -#: common.opt:2108 +#: common.opt:2112 msgid "Record gcc command line switches in the object file." msgstr "Guarda las opciones de la línea de órdenes de gcc en el fichero objeto." -#: common.opt:2112 +#: common.opt:2116 msgid "Return small aggregates in registers." msgstr "Devuelve agregados small en registros." -#: common.opt:2120 +#: common.opt:2124 msgid "Tell DSE that the storage for a C++ object is dead when the constructor starts and when the destructor finishes." msgstr "Le dice al DSE que el almacenamiento para un objeto C++ está muerto cuando el constructor comienza y cuando el destructor termina." -#: common.opt:2128 +#: common.opt:2132 msgid "Relief of register pressure through live range shrinkage." msgstr "Alivio de la presión de registro a través del encogimiento de rango en vivo." -#: common.opt:2132 +#: common.opt:2136 msgid "Perform a register renaming optimization pass." msgstr "Realiza el paso de optimización de renombrado de registros." -#: common.opt:2136 +#: common.opt:2140 msgid "Perform a target dependent instruction fusion optimization pass." msgstr "Realiza paso de optimización por fusión de instrucciones dependiente de objetivo." -#: common.opt:2140 +#: common.opt:2144 msgid "Reorder basic blocks to improve code placement." msgstr "Reordena los bloques básicos para mejorar la ubicación del código." -#: common.opt:2144 +#: common.opt:2148 msgid "-freorder-blocks-algorithm=[simple|stc]\tSet the used basic block reordering algorithm." msgstr "-freorder-blocks-algorithm=[simple|stc]\tEstablece el algoritmo de ordenación de bloque básico usado." -#: common.opt:2147 +#: common.opt:2151 #, c-format msgid "unknown basic block reordering algorithm %qs" msgstr "algoritmo %qs de reordenación de bloque básico desconocido" -#: common.opt:2157 +#: common.opt:2161 msgid "Reorder basic blocks and partition into hot and cold sections." msgstr "Reordena los bloques básicos y particionar en secciones caliente y fría." -#: common.opt:2161 +#: common.opt:2165 msgid "Reorder functions to improve code placement." msgstr "Reordena las funciones para mejorar la ubicación del código." -#: common.opt:2165 +#: common.opt:2169 msgid "Add a common subexpression elimination pass after loop optimizations." msgstr "Ejecuta un paso de eliminación de subexpresión común después de las optimizaciones de bucles." -#: common.opt:2173 +#: common.opt:2177 msgid "Disable optimizations that assume default FP rounding behavior." msgstr "Desactiva las optimizaciones que asumen la conducta de un FP que redondea por defecto." -#: common.opt:2177 +#: common.opt:2181 msgid "Enable scheduling across basic blocks." msgstr "Activa la planificación entre bloques básicos." -#: common.opt:2181 +#: common.opt:2185 msgid "Enable register pressure sensitive insn scheduling." msgstr "Activa la planificación de insn sensible a la presión de registros." -#: common.opt:2185 +#: common.opt:2189 msgid "Allow speculative motion of non-loads." msgstr "Permite el movimiento especulativo de insn que no son load." -#: common.opt:2189 +#: common.opt:2193 msgid "Allow speculative motion of some loads." msgstr "Permite el movimiento especulativo de algunas loads." -#: common.opt:2193 +#: common.opt:2197 msgid "Allow speculative motion of more loads." msgstr "Permite el movimiento especulativo de más loads." -#: common.opt:2197 +#: common.opt:2201 msgid "-fsched-verbose=\tSet the verbosity level of the scheduler." msgstr "-fsched-verbose=\tEstablece el nivel de detalle del planificador." -#: common.opt:2201 +#: common.opt:2205 msgid "If scheduling post reload, do superblock scheduling." msgstr "Si se calendariza después de la recarga, hace la planificación de superbloque." -#: common.opt:2209 +#: common.opt:2213 msgid "Reschedule instructions before register allocation." msgstr "Recalendariza las instrucciones antes del alojamiento de registros." -#: common.opt:2213 +#: common.opt:2217 msgid "Reschedule instructions after register allocation." msgstr "Recalendariza las instrucciones después del alojamiento de registros." -#: common.opt:2220 +#: common.opt:2224 msgid "Schedule instructions using selective scheduling algorithm." msgstr "Calendariza instrucciones usando el algoritmo de planificación selectivo." -#: common.opt:2224 +#: common.opt:2228 msgid "Run selective scheduling after reload." msgstr "Ejecuta la planificación selectiva después de recargar." -#: common.opt:2228 +#: common.opt:2232 msgid "Run self-tests, using the given path to locate test files." msgstr "Corre autotests usando la ruta dada para localizar los ficheros de test." -#: common.opt:2232 +#: common.opt:2236 msgid "Perform software pipelining of inner loops during selective scheduling." msgstr "Realiza el `pipelining' de software de los bucles internos durante la planificación selectiva." -#: common.opt:2236 +#: common.opt:2240 msgid "Perform software pipelining of outer loops during selective scheduling." msgstr "Realiza el `pipelining' de software de los bucles externos durante la planificación selectiva." -#: common.opt:2240 +#: common.opt:2244 msgid "Reschedule pipelined regions without pipelining." msgstr "Recalendariza las regiones `pipelined' sin `pipelining'." -#: common.opt:2244 +#: common.opt:2248 msgid "Allow interposing function (or variables) by ones with different semantics (or initializer) respectively by dynamic linker." msgstr "Permite interponer función (o variables) por otras con semántica diferente (o inicializador) respectivamente por enlazador dinámico." -#: common.opt:2250 +#: common.opt:2254 msgid "Allow premature scheduling of queued insns." msgstr "Permite la planificación prematura de insns encoladas." -#: common.opt:2254 +#: common.opt:2258 msgid "-fsched-stalled-insns=\tSet number of queued insns that can be prematurely scheduled." msgstr "-fsched-stalled-insns=\tEstablece el número de insns encoladas que se pueden calendarizar prematuramente." -#: common.opt:2262 +#: common.opt:2266 msgid "Set dependence distance checking in premature scheduling of queued insns." msgstr "Establece la revisión de distancia de dependencias en la planificación prematura de insns encoladas." -#: common.opt:2266 +#: common.opt:2270 msgid "-fsched-stalled-insns-dep=\tSet dependence distance checking in premature scheduling of queued insns." msgstr "-fsched-stalled-insns-dep=\tEstablece la revisión de distancia de dependencias en la planificación prematura de insns encoladas." -#: common.opt:2270 +#: common.opt:2274 msgid "Enable the group heuristic in the scheduler." msgstr "Activa la heurística de grupo en el planificador." -#: common.opt:2274 +#: common.opt:2278 msgid "Enable the critical path heuristic in the scheduler." msgstr "Activa la heurística de ruta crítica en el planificador." -#: common.opt:2278 +#: common.opt:2282 msgid "Enable the speculative instruction heuristic in the scheduler." msgstr "Activa la heurística de instrucción especulativa en el planificador." -#: common.opt:2282 +#: common.opt:2286 msgid "Enable the rank heuristic in the scheduler." msgstr "Activa la heurística de rango en el planificador." -#: common.opt:2286 +#: common.opt:2290 msgid "Enable the last instruction heuristic in the scheduler." msgstr "Activa la heurística de última instrucción en el planificador." -#: common.opt:2290 +#: common.opt:2294 msgid "Enable the dependent count heuristic in the scheduler." msgstr "Activa la heurística de cuenta dependiente en el planificador." -#: common.opt:2294 +#: common.opt:2298 msgid "Access data in the same section from shared anchor points." msgstr "Accede datos en la misma sección que los puntos de anclaje compartidos." -#: common.opt:2306 +#: common.opt:2310 msgid "Turn on Redundant Extensions Elimination pass." msgstr "Activa el paso de Eliminación de Extensiones Redundantes." -#: common.opt:2310 +#: common.opt:2314 msgid "Show column numbers in diagnostics, when available. Default on." msgstr "Muestra los números de columna en los diagnósticos, cuando estén disponible. Activado por defecto." -#: common.opt:2314 +#: common.opt:2318 msgid "Emit function prologues only before parts of the function that need it, rather than at the top of the function." msgstr "Emite prólogos de función sólo después de que las partes de la función que los necesitan, en vez de al principio de la función." -#: common.opt:2319 +#: common.opt:2323 msgid "Shrink-wrap parts of the prologue and epilogue separately." msgstr "Estrecha-envuelve partes del prólogo y epílogo por separado." -#: common.opt:2323 +#: common.opt:2327 msgid "Disable optimizations observable by IEEE signaling NaNs." msgstr "Desactiva las optimizaciones observables con IEEE señalando NaNs." -#: common.opt:2327 +#: common.opt:2331 msgid "Disable floating point optimizations that ignore the IEEE signedness of zero." msgstr "Desactiva las optimizaciones de coma flotante que ignoran el signo de IEEE para cero." -#: common.opt:2331 +#: common.opt:2335 msgid "Convert floating point constants to single precision constants." msgstr "Convierte las constantes de coma flotante a constantes de precisión simple." -#: common.opt:2335 +#: common.opt:2339 msgid "Split lifetimes of induction variables when loops are unrolled." msgstr "Divide los tiempos de vida de las variables de inducción cuando se desenrollen los bucles." -#: common.opt:2339 +#: common.opt:2343 msgid "Generate discontiguous stack frames." msgstr "Genera marcos de pila discontiguos." -#: common.opt:2343 +#: common.opt:2347 msgid "Split wide types into independent registers." msgstr "Divide los tipos anchos en registros independientes." -#: common.opt:2347 +#: common.opt:2351 msgid "Enable backward propagation of use properties at the SSA level." msgstr "Activa la propagación hacia atrás de propiedades en uso a nivel SSA." -#: common.opt:2351 +#: common.opt:2355 msgid "Optimize conditional patterns using SSA PHI nodes." msgstr "Optimiza patrones condicionales usando nodos SSA PHI." -#: common.opt:2355 +#: common.opt:2359 msgid "Optimize amount of stdarg registers saved to stack at start of function." msgstr "Optimiza la cantidad de registros stdarg guardados en pila al principio de la función." -#: common.opt:2359 +#: common.opt:2363 msgid "Apply variable expansion when loops are unrolled." msgstr "Aplica la expansión de variables cuando se desenrollan los bucles." -#: common.opt:2363 +#: common.opt:2367 msgid "-fstack-check=[no|generic|specific]\tInsert stack checking code into the program." msgstr "-fstack-check=[no|generic|specific]\tInserta código de revisión de la pila en el programa." -#: common.opt:2367 +#: common.opt:2371 msgid "Insert stack checking code into the program. Same as -fstack-check=specific." msgstr "Inserta código de revisión de la pila en el programai. Igual que -fstach-check=specific." -#: common.opt:2371 +#: common.opt:2375 msgid "Insert code to probe each page of stack space as it is allocated to protect from stack-clash style attacks." msgstr "" -#: common.opt:2379 +#: common.opt:2383 msgid "-fstack-limit-register=\tTrap if the stack goes past ." msgstr "-fstack-limit-register=\tCaptura si la pila pasa del ." -#: common.opt:2383 +#: common.opt:2387 msgid "-fstack-limit-symbol=\tTrap if the stack goes past symbol ." msgstr "-fstack-limit-symbol=\tCaptura si la pila pasa del símbolo ." -#: common.opt:2387 +#: common.opt:2391 msgid "Use propolice as a stack protection method." msgstr "Usa propolice como un método de protección de pila." -#: common.opt:2391 +#: common.opt:2395 msgid "Use a stack protection method for every function." msgstr "Usa un método de protección de pila para cada función." -#: common.opt:2395 +#: common.opt:2399 msgid "Use a smart stack protection method for certain functions." msgstr "Usa un método de protección de pila inteligente para ciertas funciones." -#: common.opt:2399 +#: common.opt:2403 msgid "Use stack protection method only for functions with the stack_protect attribute." msgstr "Usa método de protección de pila solo para funciones con el atributo stack_protect." -#: common.opt:2403 +#: common.opt:2407 msgid "Output stack usage information on a per-function basis." msgstr "Información de uso de pila de salida basada por función." -#: common.opt:2415 +#: common.opt:2419 msgid "Assume strict aliasing rules apply." msgstr "Asume que se aplican las reglas estrictas de alias." -#: common.opt:2419 +#: common.opt:2423 msgid "Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer." msgstr "Trata el desbordamiento con signo como indefinido. Negado como -fwrapv -fwrapv-pointer." -#: common.opt:2423 +#: common.opt:2427 msgid "Implement __atomic operations via libcalls to legacy __sync functions." msgstr "Implementa operaciones __atomic mediante llamadas de biblioteca a funciones __sync antiguas." -#: common.opt:2427 +#: common.opt:2431 msgid "Check for syntax errors, then stop." msgstr "Busca errores de sintaxis, y termina." -#: common.opt:2431 +#: common.opt:2435 msgid "Create data files needed by \"gcov\"." msgstr "Crea ficheros de datos necesarios para \"gcov\"." -#: common.opt:2435 +#: common.opt:2439 msgid "Perform jump threading optimizations." msgstr "Realiza optimizaciones de hilado de saltos." -#: common.opt:2439 +#: common.opt:2443 msgid "Report the time taken by each compiler pass." msgstr "Reporta el tiempo tomado por cada paso del compilador." -#: common.opt:2443 +#: common.opt:2447 msgid "Record times taken by sub-phases separately." msgstr "Registra los tiempos tomados por subfases por separado." -#: common.opt:2447 +#: common.opt:2451 msgid "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the default thread-local storage code generation model." msgstr "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tEstablece el modelo de generación de código por defecto para almacenamiento thread-local." -#: common.opt:2450 +#: common.opt:2454 #, c-format msgid "unknown TLS model %qs" msgstr "modelo TLS %qs desconocido" -#: common.opt:2466 +#: common.opt:2470 msgid "Reorder top level functions, variables, and asms." msgstr "Reordena las funciones de nivel superior, variables y asms." -#: common.opt:2470 +#: common.opt:2474 msgid "Perform superblock formation via tail duplication." msgstr "Realiza la formación de superbloques a través de la duplicación de colas." -#: common.opt:2474 +#: common.opt:2478 msgid "For targets that normally need trampolines for nested functions, always generate them instead of using descriptors." msgstr "Para objetivos que normalmente necesitan trampolines para las funciones anidadas, siempre los genera en lugar de usar descriptores." -#: common.opt:2482 +#: common.opt:2486 msgid "Assume floating-point operations can trap." msgstr "Asume que las operaciones de coma flotante pueden atrapar." -#: common.opt:2486 +#: common.opt:2490 msgid "Trap for signed overflow in addition, subtraction and multiplication." msgstr "Atrapar desbordamientos signed en adición, sustracción y multiplicación." -#: common.opt:2490 +#: common.opt:2494 msgid "Enable SSA-CCP optimization on trees." msgstr "Activa la optimización SSA-CCP en árboles." -#: common.opt:2494 +#: common.opt:2498 msgid "Enable SSA-BIT-CCP optimization on trees." msgstr "Activa la optimización SSA-BIT-CCP en árboles." -#: common.opt:2502 +#: common.opt:2506 msgid "Enable loop header copying on trees." msgstr "Activa la copia de encabezado de bucles en árboles." -#: common.opt:2510 +#: common.opt:2514 msgid "Enable SSA coalescing of user variables." msgstr "Activa coalescencia SSA de variables de usuario." -#: common.opt:2518 +#: common.opt:2522 msgid "Enable copy propagation on trees." msgstr "Activa la propagación de copia en árboles." -#: common.opt:2526 +#: common.opt:2530 msgid "Transform condition stores into unconditional ones." msgstr "Transforma los almacenamientos condicionales a incondicionales." -#: common.opt:2530 +#: common.opt:2534 msgid "Perform conversions of switch initializations." msgstr "Realiza la conversión de las inicializaciones de switch." -#: common.opt:2534 +#: common.opt:2538 msgid "Enable SSA dead code elimination optimization on trees." msgstr "Activa la optimización de eliminación de código muerto SSA en árboles." -#: common.opt:2538 +#: common.opt:2542 msgid "Enable dominator optimizations." msgstr "Activa las optimizaciones dominadoras." -#: common.opt:2542 +#: common.opt:2546 msgid "Enable tail merging on trees." msgstr "Activa la mezcla de colas en árboles." -#: common.opt:2546 +#: common.opt:2550 msgid "Enable dead store elimination." msgstr "Activa la eliminación de almacenamiento muerto." -#: common.opt:2550 +#: common.opt:2554 msgid "Enable forward propagation on trees." msgstr "Activa la propagación hacia adelante en árboles." -#: common.opt:2554 +#: common.opt:2558 msgid "Enable Full Redundancy Elimination (FRE) on trees." msgstr "Activa la Eliminación de Redundancia Completa en árboles." -#: common.opt:2558 +#: common.opt:2562 msgid "Enable string length optimizations on trees." msgstr "Activa la optimizaciones de longitud de cadenas en árboles." -#: common.opt:2562 +#: common.opt:2566 msgid "Detect paths that trigger erroneous or undefined behavior due to dereferencing a null pointer. Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap." msgstr "Detecta rutas que disparan comportamiento erróneo o indefinido debido a desreferencia de puntero nulo. Aisla esas rutas del flujo de control principal y convierte la sentencia con comportamiento erróneo o indefinido en una trampa." -#: common.opt:2568 +#: common.opt:2572 msgid "Detect paths that trigger erroneous or undefined behavior due to a null value being used in a way forbidden by a returns_nonnull or nonnull attribute. Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap." msgstr "Detecta rutas que disparan comportamiento erróneo o indefinido debido a un uso indebido de un valor nuloen un atributo returns_nonnull o nonnull. Aisla esas rutas del flujo de control principal y convierte la sentencia con comportamiento erróneo o indefinido en una trampa." -#: common.opt:2575 +#: common.opt:2579 msgid "Enable loop distribution on trees." msgstr "Activa la distribución de bucles en árboles." -#: common.opt:2579 +#: common.opt:2583 msgid "Enable loop distribution for patterns transformed into a library call." msgstr "Activa la distribución de bucles por patrones transformados en una llamada a biblioteca." -#: common.opt:2583 +#: common.opt:2587 msgid "Enable loop invariant motion on trees." msgstr "Permite el movimiento invariante de bucles en árboles." -#: common.opt:2591 +#: common.opt:2595 msgid "Create canonical induction variables in loops." msgstr "Crea variables de inducción canónica en los bucles." -#: common.opt:2595 +#: common.opt:2599 msgid "Enable loop optimizations on tree level." msgstr "Activa las optimizaciones de bucles a nivel de árbol." -#: common.opt:2599 +#: common.opt:2603 msgid "-ftree-parallelize-loops=\tEnable automatic parallelization of loops." msgstr "-ftree-parallelize-loops=\tActiva la paralelización automática de bucles." -#: common.opt:2603 +#: common.opt:2607 msgid "Enable hoisting loads from conditional pointers." msgstr "Activa las cargas de elevación de punteros condicionales." -#: common.opt:2607 +#: common.opt:2611 msgid "Enable SSA-PRE optimization on trees." msgstr "Activa las optimizaciones SSA-PRE en árboles." -#: common.opt:2611 +#: common.opt:2615 msgid "In SSA-PRE optimization on trees, enable partial-partial redundancy elimination." msgstr "En optimización SSA-PRE en árboles, activa eliminación de redundancia parcial-parcial." -#: common.opt:2615 +#: common.opt:2619 msgid "Perform function-local points-to analysis on trees." msgstr "Realiza el análisis puntero-a función-local en árboles." -#: common.opt:2619 +#: common.opt:2623 msgid "Enable reassociation on tree level." msgstr "Activa la reasociación a nivel de árbol." -#: common.opt:2627 +#: common.opt:2631 msgid "Enable SSA code sinking on trees." msgstr "Activa el hundimiento de código SSA en árboles." -#: common.opt:2631 +#: common.opt:2635 msgid "Perform straight-line strength reduction." msgstr "Realiza reducción de fuerza de línea directa." -#: common.opt:2635 +#: common.opt:2639 msgid "Perform scalar replacement of aggregates." msgstr "Realiza el reemplazo escalar de agregados." -#: common.opt:2639 +#: common.opt:2643 msgid "Replace temporary expressions in the SSA->normal pass." msgstr "Reemplaza expresiones temporales en el paso SSA->normal." -#: common.opt:2643 +#: common.opt:2647 msgid "Perform live range splitting during the SSA->normal pass." msgstr "Realizar la división de rango vivo durante el paso SSA->normal." -#: common.opt:2647 +#: common.opt:2651 msgid "Perform Value Range Propagation on trees." msgstr "Realiza la Propagación de Rango Valor en árboles." -#: common.opt:2651 +#: common.opt:2655 msgid "Split paths leading to loop backedges." msgstr "Divide las rutas que llevan a bordes traseros de bucle." -#: common.opt:2655 +#: common.opt:2659 msgid "Assume common declarations may be overridden with ones with a larger trailing array." msgstr "Asume que las declaraciones comunes pueden sustituirse por las que tienen un array postrero mayor." -#: common.opt:2660 +#: common.opt:2664 msgid "Compile whole compilation unit at a time." msgstr "Compila la unidad de compilación completa a la vez." -#: common.opt:2664 +#: common.opt:2668 msgid "Perform loop unrolling when iteration count is known." msgstr "Realiza el desenrollamiento del bucle cuando se conoce la cuenta de iteración." -#: common.opt:2668 +#: common.opt:2672 msgid "Perform loop unrolling for all loops." msgstr "Realiza el desenrollamiento del bucle para todos los bucles." -#: common.opt:2679 +#: common.opt:2683 msgid "Allow optimization for floating-point arithmetic which may change the result of the operation due to rounding." msgstr "Permite la optimización para la aritmética de coma flotante la cual puede cambiar el resultado de la operación debido a redondeo." -#: common.opt:2684 +#: common.opt:2688 msgid "Same as -fassociative-math for expressions which include division." msgstr "Igual que -fassociative-math para las expresiones que incluyen división." -#: common.opt:2692 +#: common.opt:2696 msgid "Allow math optimizations that may violate IEEE or ISO standards." msgstr "Permite optimizaciones matemáticas que pueden violar los estándares IEEE ó ISO." -#: common.opt:2696 +#: common.opt:2700 msgid "Perform loop unswitching." msgstr "Realiza la eliminación de opciones de bucle." -#: common.opt:2700 +#: common.opt:2704 msgid "Perform loop splitting." msgstr "Realiza la división de bucles." -#: common.opt:2704 +#: common.opt:2708 msgid "Just generate unwind tables for exception handling." msgstr "Sólo genera tablas de desenredo para manejo de excepciones." -#: common.opt:2708 +#: common.opt:2712 msgid "Use the bfd linker instead of the default linker." msgstr "Usa el enlazador bfd eb lugar del predeterminado." -#: common.opt:2712 +#: common.opt:2716 msgid "Use the gold linker instead of the default linker." msgstr "Usa el enlazador de oro eb lugar del predeterminado." -#: common.opt:2724 +#: common.opt:2728 msgid "Perform variable tracking." msgstr "Realiza seguimiento de variables." -#: common.opt:2732 +#: common.opt:2736 msgid "Perform variable tracking by annotating assignments." msgstr "Realiza seguimiento de variables con asignación de anotaciones." -#: common.opt:2738 +#: common.opt:2742 msgid "Toggle -fvar-tracking-assignments." msgstr "Cambia -fvar-tracking-assignments." -#: common.opt:2746 +#: common.opt:2750 msgid "Perform variable tracking and also tag variables that are uninitialized." msgstr "Realiza el seguimiento de variables y también marca las variables que no se inicializaron." -#: common.opt:2751 +#: common.opt:2755 msgid "Enable vectorization on trees." msgstr "Activa la vectorización en árboles." -#: common.opt:2759 +#: common.opt:2763 msgid "Enable loop vectorization on trees." msgstr "Activa la vectorización de bucles en árboles." -#: common.opt:2763 +#: common.opt:2767 msgid "Enable basic block vectorization (SLP) on trees." msgstr "Activa la vectorización de bloque básico (SLP) en árboles." -#: common.opt:2767 +#: common.opt:2771 msgid "Specifies the cost model for vectorization. -fvect-cost-model=[unlimited|dynamic|cheap]\tSpecifies the cost model for vectorization." msgstr "Especifica el modelo de coste para vectorización. -fvect-cost-model=[unlimited|dynamic|cheap]\tEspecifica el modelo de coste para vectorización." -#: common.opt:2772 +#: common.opt:2776 msgid "-fsimd-cost-model=[unlimited|dynamic|cheap]\tSpecifies the vectorization cost model for code marked with a simd directive." msgstr "-fsimd-cost-model=[unlimited|dynamic|cheap]\tEspecifica el modelo de coste de la vectorización para código marcado con directiva simd." -#: common.opt:2775 +#: common.opt:2779 #, c-format msgid "unknown vectorizer cost model %qs" msgstr "modelo %qs de coste de vectorizador desconocido" -#: common.opt:2788 +#: common.opt:2792 msgid "Enables the dynamic vectorizer cost model. Preserved for backward compatibility." msgstr "Activa el modelo de coste de vectorizador dinámico. Se preserva por compatibilidad hacia atrás." -#: common.opt:2796 +#: common.opt:2800 msgid "Enable copy propagation of scalar-evolution information." msgstr "Activa la propagación de copia de la información escalar-evolución." -#: common.opt:2806 +#: common.opt:2810 msgid "Add extra commentary to assembler output." msgstr "Agrega comentarios extra a la salida de ensamblador." -#: common.opt:2810 +#: common.opt:2814 msgid "-fvisibility=[default|internal|hidden|protected]\tSet the default symbol visibility." msgstr "-fvisibility=[default|internal|hidden|protected]\tEstablece la visibilidad de símbolos por defecto." -#: common.opt:2813 +#: common.opt:2817 #, c-format msgid "unrecognized visibility value %qs" msgstr "no se reconoce el valor de visibilidad %qs" -#: common.opt:2829 +#: common.opt:2833 msgid "Validate vtable pointers before using them." msgstr "Valida los punteros vtable antes de usarlos." -#: common.opt:2832 +#: common.opt:2836 #, c-format msgid "unknown vtable verify initialization priority %qs" msgstr "prioridad %qs de inicialización de verificación de vtable desconocida." -#: common.opt:2845 +#: common.opt:2849 msgid "Output vtable verification counters." msgstr "Contadores de verificación de vtable de salida." -#: common.opt:2849 +#: common.opt:2853 msgid "Output vtable verification pointer sets information." msgstr "Información sobre los conjuntos de vectores de verificación de vtable de salida." -#: common.opt:2853 +#: common.opt:2857 msgid "Use expression value profiles in optimizations." msgstr "Usa perfiles de valor de expresión en las optimizaciones." -#: common.opt:2857 +#: common.opt:2861 msgid "Construct webs and split unrelated uses of single variable." msgstr "Construye redes y divide usos no relacionados de una sola variable." -#: common.opt:2861 +#: common.opt:2865 msgid "Enable conditional dead code elimination for builtin calls." msgstr "Activa la eliminación de código muerto condicional para llamadas internas." -#: common.opt:2865 +#: common.opt:2869 msgid "Perform whole program optimizations." msgstr "Realiza optimizaciones del programa completo." # wraps around? No entiendo bien. cfuga -#: common.opt:2869 +#: common.opt:2873 msgid "Assume pointer overflow wraps around." msgstr "Asume que el desbordamiento de punteros se envuelve." # wraps around? No entiendo bien. cfuga -#: common.opt:2873 +#: common.opt:2877 msgid "Assume signed arithmetic overflow wraps around." msgstr "Asume que el desbordamiento aritmético con signo se envuelve." -#: common.opt:2877 +#: common.opt:2881 msgid "Put zero initialized data in the bss section." msgstr "Pone los datos inicializados a cero en la sección bss." -#: common.opt:2881 +#: common.opt:2885 msgid "Generate debug information in default format." msgstr "Genera información de depuración en el formato por defecto." -#: common.opt:2885 +#: common.opt:2889 msgid "Assume assembler support for (DWARF2+) .loc directives" msgstr "Asume soporte del ensamblador para las directivas .loc (DWARF2+)" -#: common.opt:2889 +#: common.opt:2893 msgid "Assume assembler support for view in (DWARF2+) .loc directives" msgstr "Asume soporte del ensamblador para visualización en las directivas .loc (DWARF2+)" -#: common.opt:2892 common.opt:2896 common.opt:2900 common.opt:2904 +#: common.opt:2896 common.opt:2900 common.opt:2904 common.opt:2908 #, c-format msgid "switch %qs no longer supported" msgstr "la opción %qs ya no se admite" -#: common.opt:2909 +#: common.opt:2913 msgid "Record DW_AT_decl_column and DW_AT_call_column in DWARF." msgstr "Registro DW_AT_decl_column y DW_AT_call_column en DWARF." -#: common.opt:2913 +#: common.opt:2917 msgid "Generate debug information in default version of DWARF format." msgstr "Genera información de depuración en la versión predeterminada del formato DWARF." -#: common.opt:2917 +#: common.opt:2921 msgid "Generate debug information in DWARF v2 (or later) format." msgstr "Genera información de depuración en el formato DWARF v2 (o posterior)." -#: common.opt:2921 +#: common.opt:2925 msgid "Generate debug information in default extended format." msgstr "Genera información de depuración en el formato extendido por defecto." -#: common.opt:2925 +#: common.opt:2929 msgid "Generate extended entry point information for inlined functions" msgstr "Genera información extendida sobre el punto de entrada para funciones en línea" -#: common.opt:2929 +#: common.opt:2933 msgid "Compute locview reset points based on insn length estimates" msgstr "" -#: common.opt:2937 +#: common.opt:2941 msgid "Don't generate DWARF pubnames and pubtypes sections." msgstr "No genera nombres públicos DWARF y secciones de tipos públicos." -#: common.opt:2941 +#: common.opt:2945 msgid "Generate DWARF pubnames and pubtypes sections." msgstr "Genera nombres públicos DWARF y secciones de tipos públicos." -#: common.opt:2945 +#: common.opt:2949 msgid "Generate DWARF pubnames and pubtypes sections with GNU extensions." msgstr "Genera nombres públicos DWARF y secciones de tipos públicos con extensiones GNU." -#: common.opt:2949 +#: common.opt:2953 msgid "Record gcc command line switches in DWARF DW_AT_producer." msgstr "Guarda las opciones de la línea de órdenes de gcc en DW_AT_producer de DWARF." -#: common.opt:2953 +#: common.opt:2957 msgid "Generate debug information in separate .dwo files." msgstr "Genera información de depuración en ficheros .dwo separados." -#: common.opt:2957 +#: common.opt:2961 msgid "Generate debug information in STABS format." msgstr "Genera información de depuración en el formato STABS." -#: common.opt:2961 +#: common.opt:2965 msgid "Generate debug information in extended STABS format." msgstr "Genera información de depuración en el formato STABS extendido." -#: common.opt:2965 +#: common.opt:2969 msgid "Emit progressive recommended breakpoint locations." msgstr "" -#: common.opt:2969 +#: common.opt:2973 msgid "Don't emit DWARF additions beyond selected version." msgstr "No emite adiciones DWARF más allá de la versión seleccionada." -#: common.opt:2973 +#: common.opt:2977 msgid "Toggle debug information generation." msgstr "Cambia la generación de información de depuración." -#: common.opt:2977 +#: common.opt:2981 msgid "Augment variable location lists with progressive views." msgstr "" -#: common.opt:2984 +#: common.opt:2988 msgid "Generate debug information in VMS format." msgstr "Genera información de depuración en el formato VMS." -#: common.opt:2988 +#: common.opt:2992 msgid "Generate debug information in XCOFF format." msgstr "Genera información de depuración en el formato XCOFF." -#: common.opt:2992 +#: common.opt:2996 msgid "Generate debug information in extended XCOFF format." msgstr "Genera información de depuración en el formato XCOFF extendido." -#: common.opt:3010 +#: common.opt:3014 msgid "Generate compressed debug sections." msgstr "Genera secciones de depuración comprimidas." -#: common.opt:3014 +#: common.opt:3018 msgid "-gz=\tGenerate compressed debug sections in format ." msgstr "-gz=\tGenera secciones de depuración comprimidas en formato ." -#: common.opt:3021 +#: common.opt:3025 msgid "-iplugindir=\tSet to be the default plugin directory." msgstr "-iplugindir=\tDefine como el directorio de plugins por defecto." -#: common.opt:3025 +#: common.opt:3029 msgid "-imultiarch \tSet to be the multiarch include subdirectory." msgstr "-imultilib \tDefine como el subdirectorio de inclusión de multilib." -#: common.opt:3047 +#: common.opt:3051 msgid "-o \tPlace output into ." msgstr "-o \tColoca la salida en el ." -#: common.opt:3051 +#: common.opt:3055 msgid "Enable function profiling." msgstr "Activa el análisis de perfil de las funciones." -#: common.opt:3061 +#: common.opt:3065 msgid "Like -pedantic but issue them as errors." msgstr "Como -pedantic pero los muestra como errores." -#: common.opt:3101 +#: common.opt:3105 msgid "Do not display functions compiled or elapsed time." msgstr "No muestra las funciones compiladas o el tiempo transcurrido." -#: common.opt:3133 +#: common.opt:3137 msgid "Enable verbose output." msgstr "Activa la salida detallada." -#: common.opt:3137 +#: common.opt:3141 msgid "Display the compiler's version." msgstr "Muestra la versión del compilador." -#: common.opt:3141 +#: common.opt:3145 msgid "Suppress warnings." msgstr "Suprime avisos." -#: common.opt:3151 +#: common.opt:3155 msgid "Create a shared library." msgstr "Crea una biblioteca compartida." -#: common.opt:3196 +#: common.opt:3200 msgid "Don't create a dynamically linked position independent executable." msgstr "No genera un ejecutable independiente de posición enlazado dinámicamente." -#: common.opt:3200 +#: common.opt:3204 msgid "Create a dynamically linked position independent executable." msgstr "Genera un ejecutable independiente de posición enlazado dinámicamente." -#: common.opt:3204 +#: common.opt:3208 msgid "Create a static position independent executable." msgstr "Genera un ejecutable independiente de posición estático." -#: common.opt:3211 +#: common.opt:3215 msgid "Use caller save register across calls if possible." msgstr "Usa registro de guarda de invocador entre llamadas si es posible." -#: go/gofrontend/expressions.cc:95 c-family/c-warn.c:598 cp/cvt.c:1308 +#: go/gofrontend/expressions.cc:95 c-family/c-warn.c:599 cp/cvt.c:1308 #: cp/cvt.c:1561 #, gcc-internal-format msgid "value computed is not used" @@ -15738,7 +15740,7 @@ msgstr "se esperaba un tipo booleano" #: go/gofrontend/expressions.cc:4331 c/c-parser.c:13477 c/c-parser.c:13484 -#: cp/parser.c:33264 cp/parser.c:33271 +#: cp/parser.c:33261 cp/parser.c:33268 #, gcc-internal-format msgid "expected integer" msgstr "se esperaba un entero" @@ -16155,14 +16157,14 @@ msgid "ignoring attribute %qE because it conflicts with attribute %qs" msgstr "Se hace caso omiso del atributo %qE debido a un conflicto con el atributo %qs" -#: attribs.c:449 c-family/c-attribs.c:1894 cp/decl.c:13690 cp/friend.c:302 -#: cp/tree.c:4559 +#: attribs.c:449 c-family/c-attribs.c:1905 cp/decl.c:13714 cp/friend.c:302 +#: cp/tree.c:4607 #, gcc-internal-format msgid "previous declaration here" msgstr "declaración previa aquí" #. Warn about and ignore all others for now, but store them. -#: attribs.c:564 c-family/c-attribs.c:2717 objc/objc-act.c:4963 +#: attribs.c:564 c-family/c-attribs.c:2728 objc/objc-act.c:4963 #: objc/objc-act.c:6932 objc/objc-act.c:8119 objc/objc-act.c:8170 #, gcc-internal-format msgid "%qE attribute directive ignored" @@ -16181,17 +16183,17 @@ #. This is a c++11 attribute that appertains to a #. type-specifier, outside of the definition of, a class #. type. Ignore it. -#: attribs.c:590 cp/decl.c:10999 +#: attribs.c:590 cp/decl.c:11023 #, gcc-internal-format msgid "attribute ignored" msgstr "se descarta el atributo" -#: attribs.c:592 cp/decl.c:11000 +#: attribs.c:592 cp/decl.c:11024 #, gcc-internal-format msgid "an attribute that appertains to a type-specifier is ignored" msgstr "un atributo que atañe a un especificador de tipo se descarta" -#: attribs.c:610 c-family/c-attribs.c:3219 +#: attribs.c:610 c-family/c-attribs.c:3230 #, gcc-internal-format msgid "%qE attribute does not apply to types" msgstr "el atributo %qE no se aplica a tipos" @@ -16207,40 +16209,40 @@ msgstr "se descartan los atributos de tipo después de que el tipo ya se definió" #: attribs.c:691 attribs.c:1622 attribs.c:1632 attribs.c:1642 -#: c-family/c-attribs.c:540 c-family/c-attribs.c:559 c-family/c-attribs.c:577 -#: c-family/c-attribs.c:607 c-family/c-attribs.c:628 c-family/c-attribs.c:649 -#: c-family/c-attribs.c:690 c-family/c-attribs.c:717 c-family/c-attribs.c:733 -#: c-family/c-attribs.c:750 c-family/c-attribs.c:766 c-family/c-attribs.c:792 -#: c-family/c-attribs.c:807 c-family/c-attribs.c:835 c-family/c-attribs.c:852 -#: c-family/c-attribs.c:870 c-family/c-attribs.c:893 c-family/c-attribs.c:931 -#: c-family/c-attribs.c:954 c-family/c-attribs.c:971 c-family/c-attribs.c:1000 -#: c-family/c-attribs.c:1021 c-family/c-attribs.c:1042 -#: c-family/c-attribs.c:1069 c-family/c-attribs.c:1099 -#: c-family/c-attribs.c:1136 c-family/c-attribs.c:1189 -#: c-family/c-attribs.c:1255 c-family/c-attribs.c:1313 -#: c-family/c-attribs.c:1402 c-family/c-attribs.c:1432 -#: c-family/c-attribs.c:1483 c-family/c-attribs.c:1998 -#: c-family/c-attribs.c:2035 c-family/c-attribs.c:2096 -#: c-family/c-attribs.c:2152 c-family/c-attribs.c:2230 -#: c-family/c-attribs.c:2312 c-family/c-attribs.c:2371 -#: c-family/c-attribs.c:2390 c-family/c-attribs.c:2498 -#: c-family/c-attribs.c:2514 c-family/c-attribs.c:2530 -#: c-family/c-attribs.c:2551 c-family/c-attribs.c:2608 -#: c-family/c-attribs.c:2635 c-family/c-attribs.c:2690 -#: c-family/c-attribs.c:2870 c-family/c-attribs.c:2891 -#: c-family/c-attribs.c:3004 c-family/c-attribs.c:3031 -#: c-family/c-attribs.c:3221 c-family/c-attribs.c:3239 -#: c-family/c-attribs.c:3262 c-family/c-attribs.c:3301 -#: c-family/c-attribs.c:3383 c-family/c-attribs.c:3439 -#: c-family/c-attribs.c:3455 c-family/c-attribs.c:3549 -#: c-family/c-common.c:5600 config/darwin.c:2072 config/arm/arm.c:6868 +#: c-family/c-attribs.c:547 c-family/c-attribs.c:566 c-family/c-attribs.c:584 +#: c-family/c-attribs.c:614 c-family/c-attribs.c:635 c-family/c-attribs.c:656 +#: c-family/c-attribs.c:697 c-family/c-attribs.c:728 c-family/c-attribs.c:744 +#: c-family/c-attribs.c:761 c-family/c-attribs.c:777 c-family/c-attribs.c:803 +#: c-family/c-attribs.c:818 c-family/c-attribs.c:846 c-family/c-attribs.c:863 +#: c-family/c-attribs.c:881 c-family/c-attribs.c:904 c-family/c-attribs.c:942 +#: c-family/c-attribs.c:965 c-family/c-attribs.c:982 c-family/c-attribs.c:1011 +#: c-family/c-attribs.c:1032 c-family/c-attribs.c:1053 +#: c-family/c-attribs.c:1080 c-family/c-attribs.c:1110 +#: c-family/c-attribs.c:1147 c-family/c-attribs.c:1200 +#: c-family/c-attribs.c:1266 c-family/c-attribs.c:1324 +#: c-family/c-attribs.c:1413 c-family/c-attribs.c:1443 +#: c-family/c-attribs.c:1494 c-family/c-attribs.c:2009 +#: c-family/c-attribs.c:2046 c-family/c-attribs.c:2107 +#: c-family/c-attribs.c:2163 c-family/c-attribs.c:2241 +#: c-family/c-attribs.c:2323 c-family/c-attribs.c:2382 +#: c-family/c-attribs.c:2401 c-family/c-attribs.c:2509 +#: c-family/c-attribs.c:2525 c-family/c-attribs.c:2541 +#: c-family/c-attribs.c:2562 c-family/c-attribs.c:2619 +#: c-family/c-attribs.c:2646 c-family/c-attribs.c:2701 +#: c-family/c-attribs.c:2881 c-family/c-attribs.c:2902 +#: c-family/c-attribs.c:3015 c-family/c-attribs.c:3042 +#: c-family/c-attribs.c:3232 c-family/c-attribs.c:3250 +#: c-family/c-attribs.c:3273 c-family/c-attribs.c:3312 +#: c-family/c-attribs.c:3394 c-family/c-attribs.c:3450 +#: c-family/c-attribs.c:3466 c-family/c-attribs.c:3560 +#: c-family/c-common.c:5598 config/darwin.c:2072 config/arm/arm.c:6868 #: config/arm/arm.c:6896 config/arm/arm.c:6913 config/avr/avr.c:9698 -#: config/h8300/h8300.c:5483 config/h8300/h8300.c:5507 config/i386/i386.c:6497 -#: config/i386/i386.c:41520 config/ia64/ia64.c:788 -#: config/powerpcspe/powerpcspe.c:35859 config/rs6000/rs6000.c:33056 -#: config/spu/spu.c:3743 ada/gcc-interface/utils.c:6244 -#: ada/gcc-interface/utils.c:6261 ada/gcc-interface/utils.c:6277 -#: ada/gcc-interface/utils.c:6303 brig/brig-lang.c:476 lto/lto-lang.c:283 +#: config/h8300/h8300.c:5483 config/h8300/h8300.c:5507 config/i386/i386.c:6500 +#: config/i386/i386.c:41514 config/ia64/ia64.c:788 +#: config/powerpcspe/powerpcspe.c:35859 config/rs6000/rs6000.c:33112 +#: config/spu/spu.c:3743 ada/gcc-interface/utils.c:6249 +#: ada/gcc-interface/utils.c:6266 ada/gcc-interface/utils.c:6282 +#: ada/gcc-interface/utils.c:6308 brig/brig-lang.c:476 lto/lto-lang.c:283 #, gcc-internal-format msgid "%qE attribute ignored" msgstr "se descarta el atributo %qE" @@ -16608,88 +16610,106 @@ msgid "%Kattempt to free a non-heap object" msgstr "%Kse intenta liberar un objeto que no es de pila" -#: calls.c:1434 +#: calls.c:1291 file-prefix-map.c:50 #, gcc-internal-format +msgid "invalid argument %qs to %qs" +msgstr "argumento %qs no válido para %qs" + +#: calls.c:1452 +#, gcc-internal-format msgid "%Kargument %i value %qE is negative" msgstr "%Kargumento %i, valor %qE, negativo" -#: calls.c:1452 +#: calls.c:1470 #, gcc-internal-format msgid "%Kargument %i value is zero" msgstr "el valor del %Kargumento %i es cero" -#: calls.c:1469 +#: calls.c:1487 #, gcc-internal-format msgid "%Kargument %i value %qE exceeds maximum object size %E" msgstr "%Kargumento %i, valor %qE, supera el tamaño máximo %E del objeto" -#: calls.c:1483 +#: calls.c:1501 #, gcc-internal-format msgid "%Kargument %i range [%E, %E] is negative" msgstr "el %Kargumento %i, rango [%E, %E], es negativo" -#: calls.c:1490 +#: calls.c:1508 #, gcc-internal-format msgid "%Kargument %i range [%E, %E] exceeds maximum object size %E" msgstr "%Kargumento %i, rango [%E, %E], supera el tamaño máximo %E del objeto" -#: calls.c:1520 +#: calls.c:1538 #, gcc-internal-format msgid "%Kproduct %<%E * %E%> of arguments %i and %i exceeds %" msgstr "el %Kproducto %<%E * %E%> de los argumentos %i y %i supera %" -#: calls.c:1526 +#: calls.c:1544 #, gcc-internal-format msgid "%Kproduct %<%E * %E%> of arguments %i and %i exceeds maximum object size %E" msgstr "el %Kproducto %<%E * %E%> de los argumentos %i y %i supera el tamaño máximo %E del objeto" -#: calls.c:1537 calls.c:1540 +#: calls.c:1555 calls.c:1558 #, gcc-internal-format msgid "argument %i in the range [%E, %E]" msgstr "el argumento %i está dentro del rango [%E, %E]" -#: calls.c:1551 +#: calls.c:1569 #, gcc-internal-format msgid "in a call to built-in allocation function %qD" msgstr "en una llamada a la función de reserva interna %qD" -#: calls.c:1554 +#: calls.c:1572 #, gcc-internal-format msgid "in a call to allocation function %qD declared here" msgstr "en una llamada a la función de reserva %qD declarada aquí" -#: calls.c:1711 -#, gcc-internal-format -msgid "%qD argument %i declared attribute % is smaller than the specified bound %E" -msgstr "" +#: calls.c:1835 +#, fuzzy, gcc-internal-format +#| msgid "%qD was not declared %" +msgid "%qD argument %i declared attribute % is smaller than the specified bound %wu" +msgstr "%qD no se declaró %" -#: calls.c:1716 +#: calls.c:1841 #, fuzzy, gcc-internal-format #| msgid "%qD was not declared %" +msgid "%qD argument %i declared attribute % is smaller than the specified bound [%E, %E]" +msgstr "%qD no se declaró %" + +#: calls.c:1847 +#, fuzzy, gcc-internal-format +#| msgid "%qD was not declared %" +msgid "%qD argument %i declared attribute % may be smaller than the specified bound [%E, %E]" +msgstr "%qD no se declaró %" + +#: calls.c:1857 +#, fuzzy, gcc-internal-format +#| msgid "%qD was not declared %" msgid "%qD argument %i declared attribute %" msgstr "%qD no se declaró %" -#: calls.c:1721 +#: calls.c:1862 #, gcc-internal-format msgid "argument %qD declared here" msgstr "el argumento %qD se declara aquí" -#: calls.c:1735 +#: calls.c:1876 #, gcc-internal-format, gfc-internal-format msgid "cannot tail-call: %s" msgstr "llamada al extremo imposible: %s" -#: calls.c:3365 +#: calls.c:3506 #, gcc-internal-format msgid "function call has aggregate value" msgstr "la llamada a la función tiene valor agregado" -#: calls.c:4059 +#: calls.c:4200 #, gcc-internal-format msgid "passing too large argument on stack" msgstr "pasando argumento demasiado grande a la pila" -#: cfgexpand.c:1665 function.c:1002 varasm.c:2231 +#: cfgexpand.c:1665 function.c:1002 varasm.c:2242 #, gcc-internal-format msgid "size of variable %q+D is too large" msgstr "el tamaño de la variable %q+D es demasiado grande" @@ -17261,237 +17281,237 @@ msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)" msgstr "el número de notas bb en la cadena insn (%d) != n_basic_blocks (%d)" -#: cgraph.c:3051 +#: cgraph.c:3056 #, gcc-internal-format msgid "caller edge count invalid" msgstr "la cuenta de borde llamador no es válida" -#: cgraph.c:3135 +#: cgraph.c:3140 #, gcc-internal-format, gfc-internal-format msgid "aux field set for edge %s->%s" msgstr "campo aux establecido para el borde %s->%s" -#: cgraph.c:3142 +#: cgraph.c:3147 #, gcc-internal-format msgid "cgraph count invalid" msgstr "cuenta de cgraph no válida" -#: cgraph.c:3147 +#: cgraph.c:3152 #, gcc-internal-format msgid "inline clone in same comdat group list" msgstr "clon en línea en el mismo grupo comdat" -#: cgraph.c:3152 +#: cgraph.c:3157 #, gcc-internal-format msgid "local symbols must be defined" msgstr "los símbolos locales deben definirse" -#: cgraph.c:3157 +#: cgraph.c:3162 #, gcc-internal-format msgid "externally visible inline clone" msgstr "clon incluido en línea visible externamente" -#: cgraph.c:3162 +#: cgraph.c:3167 #, gcc-internal-format msgid "inline clone with address taken" msgstr "clon incluido en línea con dirección tomada" -#: cgraph.c:3167 +#: cgraph.c:3172 #, gcc-internal-format msgid "inline clone is forced to output" msgstr "se fuerza en la salida un clon incluido en línea" -#: cgraph.c:3174 +#: cgraph.c:3179 #, gcc-internal-format, gfc-internal-format msgid "aux field set for indirect edge from %s" msgstr "se define el campo aux para el borde indirecto desde %s" -#: cgraph.c:3181 +#: cgraph.c:3186 #, gcc-internal-format, gfc-internal-format msgid "An indirect edge from %s is not marked as indirect or has associated indirect_info, the corresponding statement is: " msgstr "Un borde indirecto de %s no está marcado como indirecto o tiene indirect_info asociado, la declaración correspondiente es: " -#: cgraph.c:3196 +#: cgraph.c:3201 #, gcc-internal-format, gfc-internal-format msgid "comdat-local function called by %s outside its comdat" msgstr "función comdat-local llamada por %s fuera de su comdat" -#: cgraph.c:3206 +#: cgraph.c:3211 #, gcc-internal-format msgid "inlined_to pointer is wrong" msgstr "el puntero inlined_to está mal" -#: cgraph.c:3211 +#: cgraph.c:3216 #, gcc-internal-format msgid "multiple inline callers" msgstr "múltiples llamantes inline" -#: cgraph.c:3218 +#: cgraph.c:3223 #, gcc-internal-format msgid "inlined_to pointer set for noninline callers" msgstr "se estableció el puntero inlined_to para llamantes no-inline" -#: cgraph.c:3239 +#: cgraph.c:3244 #, gcc-internal-format msgid "caller edge count does not match BB count" msgstr "la cuenta de borde llamador no coincide con la cuenta BB" -#: cgraph.c:3261 +#: cgraph.c:3266 #, gcc-internal-format msgid "indirect call count does not match BB count" msgstr "la cuenta de llamadas indirectas no coincide con la cuenta BB" -#: cgraph.c:3272 +#: cgraph.c:3277 #, gcc-internal-format msgid "inlined_to pointer is set but no predecessors found" msgstr "se estableció el puntero inlined_to, pero no se encontraron predecesores" -#: cgraph.c:3277 +#: cgraph.c:3282 #, gcc-internal-format msgid "inlined_to pointer refers to itself" msgstr "el puntero inlined_to se refiere a sí mismo" -#: cgraph.c:3289 +#: cgraph.c:3294 #, gcc-internal-format msgid "cgraph_node has wrong clone_of" msgstr "el cgraph_node tiene un clone_of erróneo" -#: cgraph.c:3301 +#: cgraph.c:3306 #, gcc-internal-format msgid "cgraph_node has wrong clone list" msgstr "el cgraph_node tiene una lista de clones errónea" -#: cgraph.c:3307 +#: cgraph.c:3312 #, gcc-internal-format msgid "cgraph_node is in clone list but it is not clone" msgstr "el cgraph_node está en la lista de clones pero no es clon" -#: cgraph.c:3312 +#: cgraph.c:3317 #, gcc-internal-format msgid "cgraph_node has wrong prev_clone pointer" msgstr "el cgraph_node tiene un puntero prev_clone erróneo" -#: cgraph.c:3317 +#: cgraph.c:3322 #, gcc-internal-format msgid "double linked list of clones corrupted" msgstr "lista de clones doblemente ligada corrrupta" -#: cgraph.c:3329 +#: cgraph.c:3334 #, gcc-internal-format msgid "Alias has call edges" msgstr "Alias tiene bordes de llamada" -#: cgraph.c:3337 +#: cgraph.c:3342 #, gcc-internal-format msgid "Alias has non-alias reference" msgstr "Alias tiene una referencia que no es alias" -#: cgraph.c:3342 +#: cgraph.c:3347 #, gcc-internal-format msgid "Alias has more than one alias reference" msgstr "Alias tiene más de una referencia alias" -#: cgraph.c:3349 +#: cgraph.c:3354 #, gcc-internal-format msgid "Analyzed alias has no reference" msgstr "El alias analizado no tiene referencia" -#: cgraph.c:3358 +#: cgraph.c:3363 #, gcc-internal-format msgid "Instrumentation clone does not reference original node" msgstr "El clon de instrumentación no hace referencia al nodo original" -#: cgraph.c:3365 +#: cgraph.c:3370 #, gcc-internal-format msgid "Not instrumented node has non-NULL original declaration" msgstr "Nodo no instrumentado tiene declaración original no NULL" -#: cgraph.c:3375 +#: cgraph.c:3380 #, gcc-internal-format msgid "Instrumented node has wrong original declaration" msgstr "Nodo instrumentado tiene declaración original incorrecta" -#: cgraph.c:3393 +#: cgraph.c:3398 #, gcc-internal-format msgid "Node has more than one chkp reference" msgstr "El nodo tiene más de una referencia chkp" -#: cgraph.c:3398 +#: cgraph.c:3403 #, gcc-internal-format msgid "Wrong node is referenced with chkp reference" msgstr "Nodo incorrecto referenciado con referencia chkp" -#: cgraph.c:3406 +#: cgraph.c:3411 #, gcc-internal-format msgid "Analyzed node has no reference to instrumented version" msgstr "El nodo analizado no tiene referencia a versión instrumentada" -#: cgraph.c:3420 +#: cgraph.c:3425 #, gcc-internal-format msgid "Alias chain for instrumented node is broken" msgstr "La cadena alias para el nodo instrumentado está rota" -#: cgraph.c:3429 +#: cgraph.c:3434 #, gcc-internal-format msgid "No edge out of thunk node" msgstr "No hay un borde fuera de un nodo thunk" -#: cgraph.c:3434 +#: cgraph.c:3439 #, gcc-internal-format msgid "More than one edge out of thunk node" msgstr "Más de un borde fuera de un nodo thunk" -#: cgraph.c:3439 +#: cgraph.c:3444 #, gcc-internal-format msgid "Thunk is not supposed to have body" msgstr "No se supone que thunk tenga cuerpo" -#: cgraph.c:3445 +#: cgraph.c:3450 #, gcc-internal-format msgid "Instrumentation thunk has wrong edge callee" msgstr "El thunk de instrumentación tiene elemento invocado de borde incorrecto" -#: cgraph.c:3481 +#: cgraph.c:3486 #, gcc-internal-format msgid "shared call_stmt:" msgstr "call_stmt compartida:" -#: cgraph.c:3489 +#: cgraph.c:3494 #, gcc-internal-format msgid "edge points to wrong declaration:" msgstr "puntos de borde para una declaración errónea:" -#: cgraph.c:3498 +#: cgraph.c:3503 #, gcc-internal-format msgid "an indirect edge with unknown callee corresponding to a call_stmt with a known declaration:" msgstr "un borde indirecto con un llamante desconocido que corresponde a call_stmt con una declaración conocida:" -#: cgraph.c:3508 +#: cgraph.c:3513 #, gcc-internal-format msgid "missing callgraph edge for call stmt:" msgstr "falta el borde de callgraph para la llamada stmt:" -#: cgraph.c:3518 +#: cgraph.c:3523 #, gcc-internal-format msgid "reference to dead statement" msgstr "referencia a sentencia muerta" -#: cgraph.c:3531 +#: cgraph.c:3536 #, gcc-internal-format, gfc-internal-format msgid "edge %s->%s has no corresponding call_stmt" msgstr "el borde %s->%s no tiene un call_stmt correspondiente" -#: cgraph.c:3543 +#: cgraph.c:3548 #, gcc-internal-format, gfc-internal-format msgid "an indirect edge from %s has no corresponding call_stmt" msgstr "un borde indirecto desde %s no tiene un call_stmt correspondiente" -#: cgraph.c:3554 +#: cgraph.c:3559 #, gcc-internal-format msgid "verify_cgraph_node failed" msgstr "falló verify_cgraph_node" -#: cgraph.c:3661 varpool.c:306 +#: cgraph.c:3666 varpool.c:306 #, gcc-internal-format, gfc-internal-format msgid "%s: section %s is missing" msgstr "%s: falta la sección %s" @@ -17522,12 +17542,12 @@ msgstr "se descarta el atributo % porque ya se inicializó la variable" #. include_self= -#: cgraphunit.c:981 c/c-decl.c:11282 +#: cgraphunit.c:981 c/c-decl.c:11302 #, gcc-internal-format msgid "%q+F used but never defined" msgstr "se usa %q+F pero nunca se define" -#: cgraphunit.c:983 c/c-decl.c:11291 +#: cgraphunit.c:983 c/c-decl.c:11311 #, gcc-internal-format msgid "%q+F declared % but never defined" msgstr "%q+F se declaró % pero nunca se define" @@ -17648,12 +17668,12 @@ msgid "cannot find '%s'" msgstr "no se puede encontrar '%s'" -#: collect-utils.c:183 collect2.c:2361 collect2.c:2560 gcc.c:3080 gcc.c:6856 +#: collect-utils.c:183 collect2.c:2387 collect2.c:2586 gcc.c:3080 gcc.c:6856 #, gcc-internal-format msgid "pex_init failed: %m" msgstr "falló pex_init: %m" -#: collect-utils.c:192 collect2.c:2370 collect2.c:2568 gcc.c:8498 +#: collect-utils.c:192 collect2.c:2396 collect2.c:2594 gcc.c:8498 #, gcc-internal-format msgid "%s: %m" msgstr "%s: %m" @@ -17663,93 +17683,93 @@ msgid "COLLECT_LTO_WRAPPER must be set" msgstr "se debe definir COLLECT_LTO_WRAPPER" -#: collect2.c:966 gcc.c:7382 lto-wrapper.c:1666 +#: collect2.c:969 gcc.c:7382 lto-wrapper.c:1692 #: config/i386/intelmic-mkoffload.c:556 config/nvptx/mkoffload.c:405 #, gcc-internal-format msgid "atexit failed" msgstr "falló atexit" -#: collect2.c:1064 +#: collect2.c:1067 #, gcc-internal-format msgid "no arguments" msgstr "sin argumentos" -#: collect2.c:1303 opts.c:904 +#: collect2.c:1311 opts.c:904 #, gcc-internal-format msgid "LTO support has not been enabled in this configuration" msgstr "el soporte para LTO no se activó en esta configuración" -#: collect2.c:1344 +#: collect2.c:1352 #, gcc-internal-format msgid "can't open %s: %m" msgstr "no se puede abrir %s: %m" -#: collect2.c:1450 +#: collect2.c:1472 #, gcc-internal-format, gfc-internal-format msgid "unknown demangling style '%s'" msgstr "se desconoce el estilo de desenredado '%s'" -#: collect2.c:1546 collect2.c:1729 collect2.c:1769 +#: collect2.c:1574 collect2.c:1757 collect2.c:1797 #, gcc-internal-format msgid "fopen %s: %m" msgstr "fopen %s: %m" -#: collect2.c:1549 collect2.c:1734 collect2.c:1772 +#: collect2.c:1577 collect2.c:1762 collect2.c:1800 #, gcc-internal-format msgid "fclose %s: %m" msgstr "fclose %s: %m" -#: collect2.c:2335 +#: collect2.c:2361 #, gcc-internal-format msgid "cannot find 'nm'" msgstr "no se puede encontrar 'nm'" -#: collect2.c:2383 +#: collect2.c:2409 #, gcc-internal-format msgid "can't open nm output: %m" msgstr "no se puede abrir la salida de nm: %m" -#: collect2.c:2467 +#: collect2.c:2493 #, gcc-internal-format, gfc-internal-format msgid "init function found in object %s" msgstr "se encontró la función init en el objeto %s" -#: collect2.c:2478 +#: collect2.c:2504 #, gcc-internal-format, gfc-internal-format msgid "fini function found in object %s" msgstr "se encontró la función fini en el objeto %s" -#: collect2.c:2535 +#: collect2.c:2561 #, gcc-internal-format msgid "cannot find 'ldd'" msgstr "no se puede encontrar 'ldd'" -#: collect2.c:2581 +#: collect2.c:2607 #, gcc-internal-format msgid "can't open ldd output: %m" msgstr "no se puede abrir la salida de ldd: %m" -#: collect2.c:2599 +#: collect2.c:2625 #, gcc-internal-format, gfc-internal-format msgid "dynamic dependency %s not found" msgstr "no se encontró la dependencia dinámica %s" -#: collect2.c:2611 +#: collect2.c:2637 #, gcc-internal-format, gfc-internal-format msgid "unable to open dynamic dependency '%s'" msgstr "no se puede abrir la dependencia dinámica '%s'" -#: collect2.c:2765 +#: collect2.c:2791 #, gcc-internal-format, gfc-internal-format msgid "%s: not a COFF file" msgstr "%s: no es un fichero COFF" -#: collect2.c:2930 +#: collect2.c:2961 #, gcc-internal-format, gfc-internal-format msgid "%s: cannot open as COFF file" msgstr "%s: no se puede abrir como un fichero COFF" -#: collect2.c:2989 +#: collect2.c:3020 #, gcc-internal-format, gfc-internal-format msgid "library lib%s not found" msgstr "no se encontró la biblioteca lib%s" @@ -17959,12 +17979,12 @@ msgid "multiple EH personalities are supported only with assemblers supporting .cfi_personality directive" msgstr "sólo se admiten múltiples personalidades EH con ensambladores que admiten la directiva cfi.personality" -#: dwarf2out.c:10901 +#: dwarf2out.c:10909 #, gcc-internal-format msgid "-gdwarf-6 is output as version 5 with incompatibilities" msgstr "" -#: dwarf2out.c:14415 +#: dwarf2out.c:14423 #, gcc-internal-format, gfc-internal-format msgid "non-delegitimized UNSPEC %s (%d) found in variable location" msgstr "se encontró UNSPEC %s (%d) que no está delegitimado la ubicación de variable" @@ -18084,11 +18104,6 @@ msgid "%Kcall to %qs declared with attribute warning: %s" msgstr "%Kla llamada a %qs se redecló con aviso de atributo: %s" -#: file-prefix-map.c:50 -#, gcc-internal-format -msgid "invalid argument %qs to %qs" -msgstr "argumento %qs no válido para %qs" - #: final.c:1868 #, gcc-internal-format msgid "the frame size of %wd bytes is larger than %wd bytes" @@ -18109,42 +18124,42 @@ msgid "large fixed-point constant implicitly truncated to fixed-point type" msgstr "se truncó la constante de coma fija grande implícitamente al tipo de coma fija" -#: fold-const.c:4151 fold-const.c:4161 +#: fold-const.c:4157 fold-const.c:4167 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d due to width of bit-field" msgstr "la comparación siempre es %d debido a la anchura del campo de bit" -#: fold-const.c:5478 tree-ssa-reassoc.c:2374 tree-ssa-reassoc.c:3214 +#: fold-const.c:5484 tree-ssa-reassoc.c:2379 tree-ssa-reassoc.c:3219 #, gcc-internal-format msgid "assuming signed overflow does not occur when simplifying range test" msgstr "se asume que el desbordamiento con signo no sucede al simplificar la prueba de rango" -#: fold-const.c:5928 fold-const.c:5942 +#: fold-const.c:5934 fold-const.c:5948 #, gcc-internal-format, gfc-internal-format msgid "comparison is always %d" msgstr "la comparación siempre es %d" -#: fold-const.c:6085 +#: fold-const.c:6091 #, gcc-internal-format msgid "% of unmatched not-equal tests is always 1" msgstr "un % de pruebas no equivalentes sin coincidencia siempre es 1" -#: fold-const.c:6090 +#: fold-const.c:6096 #, gcc-internal-format msgid "% of mutually exclusive equal-tests is always 0" msgstr "un % de pruebas equivalentes mutuamente exclusivas siempre es 0" -#: fold-const.c:8310 +#: fold-const.c:8316 #, gcc-internal-format msgid "assuming signed overflow does not occur when reducing constant in comparison" msgstr "se asume que el desbordamiento con signo no sucede cuando se reduce la constante en comparación" -#: fold-const.c:8710 +#: fold-const.c:8716 #, gcc-internal-format msgid "assuming signed overflow does not occur when combining constants around a comparison" msgstr "se asume que el desbordamiento con signo no sucede cuando se combinan constantes alrededor de una comparación" -#: fold-const.c:12063 +#: fold-const.c:12069 #, gcc-internal-format msgid "fold check: original tree changed by fold" msgstr "fold check: el árbol original cambió por un pliegue" @@ -18154,7 +18169,7 @@ msgid "total size of local objects too large" msgstr "el tamaño total de los objetos locales es demasiado grande" -#: function.c:1776 gimplify.c:6270 +#: function.c:1776 gimplify.c:6273 #, gcc-internal-format msgid "impossible constraint in %" msgstr "restricción imposible en %" @@ -18459,7 +18474,7 @@ msgid "%s: linker input file unused because linking not done" msgstr "%s: no se usó el fichero de entrada del enlazador porque no se hizo enlace" -#: gcc.c:8420 c-family/c-opts.c:770 +#: gcc.c:8420 c-family/c-opts.c:768 #, gcc-internal-format msgid "cannot use %<-%> as input filename for a precompiled header" msgstr "" @@ -18694,7 +18709,7 @@ msgid "%G%qD destination unchanged after copying no bytes" msgstr "destino %G%qD intacto tras no copiar ningún byte" -#: gimple-fold.c:2052 tree-ssa-strlen.c:2050 +#: gimple-fold.c:2052 tree-ssa-strlen.c:2074 msgid "%G%qD specified bound %E equals destination size" msgstr "el límite de %G%qD especificado %E es igual al tamaño del destino" @@ -18716,12 +18731,12 @@ msgid "null pointer dereference" msgstr "desreferencia a puntero nulo" -#: gimple-ssa-isolate-paths.c:429 gimple-ssa-isolate-paths.c:549 tree.c:12451 -#: tree.c:12488 c/c-typeck.c:2908 c/c-typeck.c:2994 c/c-typeck.c:10147 -#: c/c-typeck.c:10164 c/gimple-parser.c:1616 c/gimple-parser.c:1624 +#: gimple-ssa-isolate-paths.c:429 gimple-ssa-isolate-paths.c:549 tree.c:12455 +#: tree.c:12492 c/c-typeck.c:2908 c/c-typeck.c:2994 c/c-typeck.c:10152 +#: c/c-typeck.c:10169 c/gimple-parser.c:1616 c/gimple-parser.c:1624 #: cp/call.c:6493 cp/call.c:8098 cp/constexpr.c:820 cp/constexpr.c:2309 -#: cp/cvt.c:1015 cp/cvt.c:1042 cp/decl.c:7334 cp/decl2.c:5256 cp/pt.c:8334 -#: cp/semantics.c:1836 cp/semantics.c:4053 cp/typeck.c:1700 cp/typeck.c:1895 +#: cp/cvt.c:1015 cp/cvt.c:1042 cp/decl.c:7355 cp/decl2.c:5246 cp/pt.c:8348 +#: cp/semantics.c:1836 cp/semantics.c:4056 cp/typeck.c:1700 cp/typeck.c:1895 #: cp/typeck.c:3837 #, gcc-internal-format msgid "declared here" @@ -18732,27 +18747,27 @@ msgid "nonnull argument %qD compared to NULL" msgstr "argumento %qD no nulo comparado con NULL" -#: gimple-ssa-sprintf.c:2517 gimple-ssa-sprintf.c:2637 +#: gimple-ssa-sprintf.c:2555 gimple-ssa-sprintf.c:2675 #, gcc-internal-format msgid "%qE output may be truncated before the last format character" msgstr "la salida %qE podría truncarse antes del último carácter de formato" -#: gimple-ssa-sprintf.c:2519 gimple-ssa-sprintf.c:2639 +#: gimple-ssa-sprintf.c:2557 gimple-ssa-sprintf.c:2677 #, gcc-internal-format msgid "%qE output truncated before the last format character" msgstr "la salida %qE podría truncarse antes del último carácter de formato" -#: gimple-ssa-sprintf.c:2522 gimple-ssa-sprintf.c:2642 +#: gimple-ssa-sprintf.c:2560 gimple-ssa-sprintf.c:2680 #, gcc-internal-format msgid "%qE may write a terminating nul past the end of the destination" msgstr "%qE podría escribir un nul al final del destino" -#: gimple-ssa-sprintf.c:2524 gimple-ssa-sprintf.c:2644 +#: gimple-ssa-sprintf.c:2562 gimple-ssa-sprintf.c:2682 #, gcc-internal-format msgid "%qE writing a terminating nul past the end of the destination" msgstr "%qE se escribe un nul al final del destino" -#: gimple-ssa-sprintf.c:2534 +#: gimple-ssa-sprintf.c:2572 #, gcc-internal-format msgid "%<%.*s%> directive writing %wu byte into a region of size %wu" msgid_plural "%<%.*s%> directive writing %wu bytes into a region of size %wu" @@ -18759,7 +18774,7 @@ msgstr[0] "directiva %<%.*s%> escribiendo %wu byte en una región de tamaño %wu" msgstr[1] "directiva %<%.*s%> escribiendo %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2541 +#: gimple-ssa-sprintf.c:2579 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing %wu byte into a region of size %wu" msgid_plural "%<%.*s%> directive output may be truncated writing %wu bytes into a region of size %wu" @@ -18766,7 +18781,7 @@ msgstr[0] "salida de la directiva %<%.*s%> podría truncarse escribiendo %wu byte en una región de tamaño %wu" msgstr[1] "salida de la directiva %<%.*s%> podría truncarse escribiendo %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2548 +#: gimple-ssa-sprintf.c:2586 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing %wu byte into a region of size %wu" msgid_plural "%<%.*s%> directive output truncated writing %wu bytes into a region of size %wu" @@ -18773,67 +18788,67 @@ msgstr[0] "salida de la directiva %<%.*s%> truncada escribiendo %wu byte en una región de tamaño %wu" msgstr[1] "salida de la directiva %<%.*s%> truncada escribiendo %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2559 +#: gimple-ssa-sprintf.c:2597 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing up to %wu bytes into a region of size %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse al escribir hasta %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2562 +#: gimple-ssa-sprintf.c:2600 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing up to %wu bytes into a region of size %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo hasta %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2564 +#: gimple-ssa-sprintf.c:2602 #, gcc-internal-format msgid "%<%.*s%> directive writing up to %wu bytes into a region of size %wu" msgstr "directiva %<%.*s%> escribiendo hasta %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2576 +#: gimple-ssa-sprintf.c:2614 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing likely %wu or more bytes into a region of size %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo probablemente %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2579 +#: gimple-ssa-sprintf.c:2617 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing likely %wu or more bytes into a region of size %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo probablemente %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2582 +#: gimple-ssa-sprintf.c:2620 #, gcc-internal-format msgid "%<%.*s%> directive writing likely %wu or more bytes into a region of size %wu" msgstr "directiva %<%.*s%> escribiendo probablemente %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2591 +#: gimple-ssa-sprintf.c:2629 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing between %wu and %wu bytes into a region of size %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo entre %wu y %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2594 +#: gimple-ssa-sprintf.c:2632 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing between %wu and %wu bytes into a region of size %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo entre %wu y %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2597 +#: gimple-ssa-sprintf.c:2635 #, gcc-internal-format msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size %wu" msgstr "directiva %<%.*s%> escribiendo entre %wu y %wu bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2606 +#: gimple-ssa-sprintf.c:2644 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing %wu or more bytes into a region of size %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2609 +#: gimple-ssa-sprintf.c:2647 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing %wu or more bytes into a region of size %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2611 +#: gimple-ssa-sprintf.c:2649 #, gcc-internal-format msgid "%<%.*s%> directive writing %wu or more bytes into a region of size %wu" msgstr "directiva %<%.*s%> escribiendo %wu o más bytes en una región de tamaño %wu" -#: gimple-ssa-sprintf.c:2653 +#: gimple-ssa-sprintf.c:2691 #, gcc-internal-format msgid "%<%.*s%> directive writing %wu byte into a region of size between %wu and %wu" msgid_plural "%<%.*s%> directive writing %wu bytes into a region of size between %wu and %wu" @@ -18840,7 +18855,7 @@ msgstr[0] "directiva %<%.*s%> escribiendo %wu byte en una región de un tamaño entre %wu y %wu" msgstr[1] "directiva %<%.*s%> escribiendo %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2660 +#: gimple-ssa-sprintf.c:2698 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing %wu byte into a region of size between %wu and %wu" msgid_plural "%<%.*s%> directive output may be truncated writing %wu bytes into a region of size between %wu and %wu" @@ -18847,7 +18862,7 @@ msgstr[0] "la salida de la directiva %<%.*s%> podría truncarse al escribir %wu byte en una región de un tamaño entre %wu y %wu" msgstr[1] "la salida de la directiva %<%.*s%> podría truncarse al escribir %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2668 +#: gimple-ssa-sprintf.c:2706 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing %wu byte into a region of size between %wu and %wu" msgid_plural "%<%.*s%> directive output truncated writing %wu bytes into a region of size between %wu and %wu" @@ -18854,102 +18869,102 @@ msgstr[0] "salida de la directiva %<%.*s%> truncada escribiendo %wu byte en una región de un tamaño entre %wu y %wu" msgstr[1] "salida de la directiva %<%.*s%> truncada escribiendo %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2680 +#: gimple-ssa-sprintf.c:2718 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing up to %wu bytes into a region of size between %wu and %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo hasta %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2683 +#: gimple-ssa-sprintf.c:2721 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing up to %wu bytes into a region of size between %wu and %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo hasta %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2686 +#: gimple-ssa-sprintf.c:2724 #, gcc-internal-format msgid "%<%.*s%> directive writing up to %wu bytes into a region of size between %wu and %wu" msgstr "directiva %<%.*s%> escribiendo hasta %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2699 +#: gimple-ssa-sprintf.c:2737 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing likely %wu or more bytes into a region of size between %wu and %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo probablemente %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2702 +#: gimple-ssa-sprintf.c:2740 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing likely %wu or more bytes into a region of size between %wu and %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo probablemente %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2705 +#: gimple-ssa-sprintf.c:2743 #, gcc-internal-format msgid "%<%.*s%> directive writing likely %wu or more bytes into a region of size between %wu and %wu" msgstr "directiva %<%.*s%> escribiendo probablemente %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2715 +#: gimple-ssa-sprintf.c:2753 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing between %wu and %wu bytes into a region of size between %wu and %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo entre %wu y %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2718 +#: gimple-ssa-sprintf.c:2756 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing between %wu and %wu bytes into a region of size between %wu and %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo entre %wu y %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2721 +#: gimple-ssa-sprintf.c:2759 #, gcc-internal-format msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size between %wu and %wu" msgstr "directiva %<%.*s%> escribiendo entre %wu y %wu bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2730 +#: gimple-ssa-sprintf.c:2768 #, gcc-internal-format msgid "%<%.*s%> directive output may be truncated writing %wu or more bytes into a region of size between %wu and %wu" msgstr "la salida de la directiva %<%.*s%> podría truncarse escribiendo %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2733 +#: gimple-ssa-sprintf.c:2771 #, gcc-internal-format msgid "%<%.*s%> directive output truncated writing %wu or more bytes into a region of size between %wu and %wu" msgstr "salida de la directiva %<%.*s%> truncada escribiendo %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2736 +#: gimple-ssa-sprintf.c:2774 #, gcc-internal-format msgid "%<%.*s%> directive writing %wu or more bytes into a region of size between %wu and %wu" msgstr "directiva %<%.*s%> escribiendo %wu o más bytes en una región de un tamaño entre %wu y %wu" -#: gimple-ssa-sprintf.c:2825 +#: gimple-ssa-sprintf.c:2863 #, gcc-internal-format msgid "%<%.*s%> directive argument is null" msgstr "el argumento de la directiva %<%.*s%> es nulo" -#: gimple-ssa-sprintf.c:2890 +#: gimple-ssa-sprintf.c:2928 #, gcc-internal-format msgid "%<%.*s%> directive output of %wu bytes exceeds minimum required size of 4095" msgstr "la salida de la directiva %<%.*s%> de %wu bytes supera el tamaño mínimo requerido de 4095" -#: gimple-ssa-sprintf.c:2897 +#: gimple-ssa-sprintf.c:2935 #, gcc-internal-format msgid "%<%.*s%> directive output between %wu and %wu bytes may exceed minimum required size of 4095" msgstr "la salida de la directiva %<%.*s%> entre %wu y %wu bytes podría superar el tamaño mínimo requerido de 4095" -#: gimple-ssa-sprintf.c:2900 +#: gimple-ssa-sprintf.c:2938 #, gcc-internal-format msgid "%<%.*s%> directive output between %wu and %wu bytes exceeds minimum required size of 4095" msgstr "la salida de la directiva %<%.*s%> entre %wu y %wu bytes supera el tamaño mínimo requerido de 4095" -#: gimple-ssa-sprintf.c:2929 +#: gimple-ssa-sprintf.c:2967 #, gcc-internal-format msgid "%<%.*s%> directive output of %wu bytes causes result to exceed %" msgstr "la salida de la directiva %<%.*s%> de %wu bytes provoca que el resultado supere %" -#: gimple-ssa-sprintf.c:2936 +#: gimple-ssa-sprintf.c:2974 #, gcc-internal-format msgid "%<%.*s%> directive output between %wu and %wu bytes causes result to exceed %" msgstr "la salida de la directiva %<%.*s%> entre %wu y %wu bytes provoca que el resultado supere %" -#: gimple-ssa-sprintf.c:2939 +#: gimple-ssa-sprintf.c:2977 #, gcc-internal-format msgid "%<%.*s%> directive output between %wu and %wu bytes may cause result to exceed %" msgstr "la salida de la directiva %<%.*s%> entre %wu y %wu bytes podría provocar que el resultado supere %" -#: gimple-ssa-sprintf.c:2949 +#: gimple-ssa-sprintf.c:2987 #, gcc-internal-format msgid "assuming directive output of %wu byte" msgid_plural "assuming directive output of %wu bytes" @@ -18956,77 +18971,77 @@ msgstr[0] "se asume salida de directiva de %wu byte" msgstr[1] "se asume salida de directiva de %wu bytes" -#: gimple-ssa-sprintf.c:2956 +#: gimple-ssa-sprintf.c:2994 #, gcc-internal-format msgid "directive argument %qE" msgstr "argumento de la directiva %qE" -#: gimple-ssa-sprintf.c:2958 +#: gimple-ssa-sprintf.c:2996 #, gcc-internal-format msgid "directive argument in the range [%E, %E]" msgstr "argumento de la directiva en el rango de [%E, %E]" -#: gimple-ssa-sprintf.c:2962 +#: gimple-ssa-sprintf.c:3000 #, gcc-internal-format msgid "using the range [%E, %E] for directive argument" msgstr "se utiliza el rango [%E, %E] para el argumento de la directiva" -#: gimple-ssa-sprintf.c:2982 +#: gimple-ssa-sprintf.c:3020 #, gcc-internal-format msgid "%qE output %wu byte into a destination of size %wu" msgstr "%qE manda %wu byte a un destino de tamaño %wu" -#: gimple-ssa-sprintf.c:2983 +#: gimple-ssa-sprintf.c:3021 #, gcc-internal-format msgid "%qE output %wu bytes into a destination of size %wu" msgstr "%qE manda %wu bytes a un destino de tamaño %wu" -#: gimple-ssa-sprintf.c:2987 +#: gimple-ssa-sprintf.c:3025 #, gcc-internal-format msgid "%qE output between %wu and %wu bytes into a destination of size %wu" msgstr "%qE manda entre %wu y %wu bytes a un destino de tamaño %wu" -#: gimple-ssa-sprintf.c:2992 +#: gimple-ssa-sprintf.c:3030 #, gcc-internal-format msgid "%qE output %wu or more bytes (assuming %wu) into a destination of size %wu" msgstr "%qE manda %wu o más bytes (se asume %wu) a un destino de tamaño %wu" -#: gimple-ssa-sprintf.c:2997 +#: gimple-ssa-sprintf.c:3035 #, gcc-internal-format msgid "%qE output %wu or more bytes into a destination of size %wu" msgstr "%qE manda %wu o más bytes a un destino de tamaño %wu" -#: gimple-ssa-sprintf.c:3368 +#: gimple-ssa-sprintf.c:3406 #, gcc-internal-format msgid "%<%.*s%> directive width out of range" msgstr "anchura de la directiva %<%.*s%> fuera de rango" -#: gimple-ssa-sprintf.c:3402 +#: gimple-ssa-sprintf.c:3440 #, gcc-internal-format msgid "%<%.*s%> directive precision out of range" msgstr "precisión de la directiva %<%.*s%> fuera de rango" -#: gimple-ssa-sprintf.c:3893 +#: gimple-ssa-sprintf.c:3931 #, gcc-internal-format msgid "specified bound %wu exceeds maximum object size %wu" msgstr "el límite especificado %wu supera el tamaño máximo del objeto %wu" -#: gimple-ssa-sprintf.c:3899 +#: gimple-ssa-sprintf.c:3937 #, gcc-internal-format msgid "specified bound %wu exceeds %" msgstr "el límite especificado %wu supera %" -#: gimple-ssa-sprintf.c:3949 +#: gimple-ssa-sprintf.c:3987 #, gcc-internal-format msgid "null destination pointer" msgstr "puntero de destino nulo" -#: gimple-ssa-sprintf.c:3966 +#: gimple-ssa-sprintf.c:4004 #, gcc-internal-format msgid "specified bound %wu exceeds the size %wu of the destination object" msgstr "el límite especificado %wu supera el tamaño %wu del objeto de destino" -#: gimple-ssa-sprintf.c:3978 +#: gimple-ssa-sprintf.c:4016 #, gcc-internal-format msgid "null format string" msgstr "cadena de formato nula" @@ -19239,10 +19254,10 @@ msgstr "el desplazamiento de %G%qD %s está fuera de los límites ] del objeto %qD con tipo %qT" #: gimple-ssa-warn-restrict.c:1678 c/c-decl.c:3603 c/c-decl.c:3874 -#: c/c-typeck.c:8345 cp/class.c:1346 cp/class.c:3098 cp/decl.c:3979 -#: cp/decl.c:10753 cp/decl.c:11151 cp/decl.c:11160 cp/friend.c:384 +#: c/c-typeck.c:8350 cp/class.c:1346 cp/class.c:3102 cp/decl.c:3979 +#: cp/decl.c:10777 cp/decl.c:11175 cp/decl.c:11184 cp/friend.c:384 #: cp/friend.c:393 cp/parser.c:3275 cp/parser.c:3372 cp/parser.c:3422 -#: cp/parser.c:6327 cp/parser.c:21027 +#: cp/parser.c:6330 cp/parser.c:21024 #, gcc-internal-format msgid "%qD declared here" msgstr "%qD se declara aquí" @@ -19314,217 +19329,217 @@ msgid "using result of function returning %" msgstr "se usa el resultado de una función que devuelve %" -#: gimplify.c:6128 +#: gimplify.c:6131 #, gcc-internal-format, gfc-internal-format msgid "invalid lvalue in asm output %d" msgstr "l-valor no válido en la salida asm %d" -#: gimplify.c:6271 +#: gimplify.c:6274 #, gcc-internal-format, gfc-internal-format msgid "non-memory input %d must stay in memory" msgstr "la entrada que no es de memoria %d debe permanecer en memoria" -#: gimplify.c:6311 gimplify.c:6320 +#: gimplify.c:6314 gimplify.c:6323 #, gcc-internal-format, gfc-internal-format msgid "memory input %d is not directly addressable" msgstr "la entrada de memoria %d no es directamente direccionable" -#: gimplify.c:6928 +#: gimplify.c:6931 #, gcc-internal-format msgid "threadprivate variable %qE used in target region" msgstr "se usó la variable threadprivate %qE en una región objetivo" -#: gimplify.c:6930 +#: gimplify.c:6933 #, gcc-internal-format msgid "enclosing target region" msgstr "región objetivo contenedora" -#: gimplify.c:6942 +#: gimplify.c:6945 #, gcc-internal-format msgid "threadprivate variable %qE used in untied task" msgstr "se usó la variable threadprivate %qE en una tarea sin atar" -#: gimplify.c:6944 +#: gimplify.c:6947 #, gcc-internal-format msgid "enclosing task" msgstr "tarea contenedora" -#: gimplify.c:7016 +#: gimplify.c:7019 #, gcc-internal-format msgid "%qE not specified in enclosing %qs" msgstr "no se especificó %qE en el %qs que lo contiene" -#: gimplify.c:7018 +#: gimplify.c:7021 #, gcc-internal-format msgid "enclosing %qs" msgstr "%qs contenedora" -#: gimplify.c:7143 +#: gimplify.c:7146 #, gcc-internal-format msgid "%qE not specified in enclosing OpenACC %qs construct" msgstr "no se especificó %qE en la construcción OpenACC %qs que lo contiene" -#: gimplify.c:7145 +#: gimplify.c:7148 #, gcc-internal-format msgid "enclosing OpenACC %qs construct" msgstr "construcción OpenACC %qs que lo contiene" -#: gimplify.c:7198 +#: gimplify.c:7201 #, gcc-internal-format msgid "%qE with % clause used in % function" msgstr "%qE con cláusula % usada en la función %" -#: gimplify.c:7206 +#: gimplify.c:7209 #, gcc-internal-format msgid "%qE requires a % directive for use in a % function" msgstr "%qE requiere una directiva % para poder usarse en una función%" -#: gimplify.c:7272 gimplify.c:7872 +#: gimplify.c:7275 gimplify.c:7875 #, gcc-internal-format msgid "variable %qE declared in enclosing % region" msgstr "la variable %qE se declaró en la región % que la contiene" -#: gimplify.c:7293 +#: gimplify.c:7296 #, gcc-internal-format msgid "%qD referenced in target region does not have a mappable type" msgstr "%qD referenciada en la región de destino no tiene un tipo al que asociarla" -#: gimplify.c:7411 gimplify.c:7443 +#: gimplify.c:7414 gimplify.c:7446 #, gcc-internal-format msgid "iteration variable %qE is predetermined linear" msgstr "la variable de iteración %qE se predetermina lineal" -#: gimplify.c:7414 +#: gimplify.c:7417 #, gcc-internal-format msgid "iteration variable %qE should be private" msgstr "la variable de iteración %qE debe ser private" -#: gimplify.c:7428 +#: gimplify.c:7431 #, gcc-internal-format msgid "iteration variable %qE should not be firstprivate" msgstr "la variable de iteración %qE no debe ser firstprivate" -#: gimplify.c:7431 +#: gimplify.c:7434 #, gcc-internal-format msgid "iteration variable %qE should not be reduction" msgstr "la variable de iteración %qE no debe ser reduction" -#: gimplify.c:7434 +#: gimplify.c:7437 #, gcc-internal-format msgid "iteration variable %qE should not be linear" msgstr "la variable de iteración %qE no debe ser lineal" -#: gimplify.c:7437 +#: gimplify.c:7440 #, gcc-internal-format msgid "iteration variable %qE should not be lastprivate" msgstr "la variable de iteración %qE no debe ser lastprivate" -#: gimplify.c:7440 +#: gimplify.c:7443 #, gcc-internal-format msgid "iteration variable %qE should not be private" msgstr "la variable de iteración %qE no debe ser private" -#: gimplify.c:7742 +#: gimplify.c:7745 #, gcc-internal-format msgid "% clause for variable other than loop iterator specified on construct combined with %" msgstr "cláusula % para una variable que no es iterador de bucle especificada en una construcción combinada con %" -#: gimplify.c:7949 +#: gimplify.c:7952 #, gcc-internal-format msgid "mapping field %qE of variable length structure" msgstr "se asocia el campo %qE de una estructura de longitud variable" -#: gimplify.c:8160 +#: gimplify.c:8163 #, gcc-internal-format msgid "%qE appears more than once in map clauses" msgstr "%qE aparece más de una vez en las cláusulas map" -#: gimplify.c:8464 +#: gimplify.c:8467 #, gcc-internal-format msgid "copyprivate variable %qE is not threadprivate or private in outer context" msgstr "la variable copyprivate %qE no es threadprivate o private en el contexto externo" -#: gimplify.c:8484 +#: gimplify.c:8487 #, gcc-internal-format msgid "%s variable %qE is private in outer context" msgstr "la variable %s %qE es private en el contexto externo" -#: gimplify.c:8510 +#: gimplify.c:8513 #, gcc-internal-format msgid "expected %qs % clause modifier rather than %qs" msgstr "se esperaba el modificador de cláusula %qs % en vez de %qs" -#: gimplify.c:8775 +#: gimplify.c:8778 #, gcc-internal-format msgid "%<_Atomic%> %qD in implicit % clause" msgstr "%<_Atomic%> %qD en cláusula % implícita" -#: gimplify.c:8808 +#: gimplify.c:8811 #, gcc-internal-format msgid "%<_Atomic%> %qD in implicit % clause on % construct" msgstr "%<_Atomic%> %qD en cláusula % implícita en una construcción %" -#: gimplify.c:9000 +#: gimplify.c:9003 #, gcc-internal-format msgid "%<_Atomic%> %qD in % clause on % construct" msgstr "%<_Atomic%> %qD en cláusula % en una construcción %" -#: gimplify.c:9051 +#: gimplify.c:9054 #, gcc-internal-format msgid "same variable used in % and % clauses on % construct" msgstr "se ha usado la misma variable en cláusulas % y % en una construcción %" -#: gimplify.c:9133 +#: gimplify.c:9136 #, gcc-internal-format msgid "incompatible data clause with reduction on %qE; promoting to present_or_copy" msgstr "cláusula de datos incompatible con reducción en %qE; se promociona a present_or_copy" -#: gimplify.c:9278 +#: gimplify.c:9281 #, gcc-internal-format msgid "invalid private reduction on %qE" msgstr "reducción privada no válida en %qE" -#: gimplify.c:11103 omp-low.c:2791 +#: gimplify.c:11106 omp-low.c:2791 #, gcc-internal-format msgid "% construct with % clause must be closely nested inside a loop with % clause with a parameter" msgstr "la construcción % con cláusula % debe estar bien anidada dentro de un bucle con una cláusula % con un parámetro" -#: gimplify.c:11121 +#: gimplify.c:11124 #, gcc-internal-format msgid "variable %qE is not an iteration of outermost loop %d, expected %qE" msgstr "la variable %qE no es una iteración del bucle más externo %d; se esperaba %qE" -#: gimplify.c:11134 +#: gimplify.c:11137 #, gcc-internal-format msgid "number of variables in % clause does not match number of iteration variables" msgstr "el número de variables en la cláusula % no coincide con el número de variables de iteración" -#: gimplify.c:11147 +#: gimplify.c:11150 #, gcc-internal-format msgid "more than one % clause on an % construct" msgstr "más de una cláusula % en una construcción %" -#: gimplify.c:11158 +#: gimplify.c:11161 #, gcc-internal-format msgid "% clause specified together with % clauses on the same construct" msgstr "cláusula % especificada junto con cláusulas % en la misma construcción" -#: gimplify.c:12393 +#: gimplify.c:12396 #, gcc-internal-format msgid "gimplification failed" msgstr "falló la gimplificación" -#: gimplify.c:12936 +#: gimplify.c:12939 #, gcc-internal-format msgid "%qT is promoted to %qT when passed through %<...%>" msgstr "%qT se promueve a %qT cuando pasa a través de %<...%>" -#: gimplify.c:12941 +#: gimplify.c:12944 #, gcc-internal-format msgid "(so you should pass %qT not %qT to %)" msgstr "(así que debe pasar %qT y no %qT a %)" -#: gimplify.c:12948 +#: gimplify.c:12951 #, gcc-internal-format msgid "if this code is reached, the program will abort" msgstr "si se alcanza este código, el programa abortará" @@ -19997,47 +20012,47 @@ msgid "Max. number of generated reload insns per insn is achieved (%d)\n" msgstr "Se ha alcanzado el número máximo de insns de recarga generadas (%d)\n" -#: lto-cgraph.c:1294 +#: lto-cgraph.c:1296 #, gcc-internal-format, gfc-internal-format msgid "bytecode stream: found multiple instances of cgraph node with uid %d" msgstr "flujo de bytecode: se encontraron instancias múltiples del nodo cgraph con uid %d" -#: lto-cgraph.c:1472 +#: lto-cgraph.c:1474 #, gcc-internal-format msgid "bytecode stream: no caller found while reading edge" msgstr "flujo de bytecode: no se encontró un llamante al leer el borde" -#: lto-cgraph.c:1478 +#: lto-cgraph.c:1480 #, gcc-internal-format msgid "bytecode stream: no callee found while reading edge" msgstr "flujo de bytecode: no se encontró un llamado al leer el borde" -#: lto-cgraph.c:1552 +#: lto-cgraph.c:1554 #, gcc-internal-format msgid "bytecode stream: found empty cgraph node" msgstr "flujo de bytecode: se encontró un nodo cgraph vacío" -#: lto-cgraph.c:1730 +#: lto-cgraph.c:1732 #, gcc-internal-format, gfc-internal-format msgid "At most %i profile runs is supported. Perhaps corrupted profile?" msgstr "Por lo menos se admiten %i corridas de perfil. ¿Tal vez se corrompió el perfil?" -#: lto-cgraph.c:1817 +#: lto-cgraph.c:1819 #, gcc-internal-format, gfc-internal-format msgid "Profile information in %s corrupted" msgstr "La información de análisis de perfil en %s está corrupta" -#: lto-cgraph.c:1855 +#: lto-cgraph.c:1857 #, gcc-internal-format, gfc-internal-format msgid "cannot find LTO cgraph in %s" msgstr "no se puede encontrar cgraph de LTO en %s" -#: lto-cgraph.c:1865 +#: lto-cgraph.c:1867 #, gcc-internal-format, gfc-internal-format msgid "cannot find LTO section refs in %s" msgstr "no se pueden encontrar las referencias de sección LTO en %s" -#: lto-cgraph.c:1946 +#: lto-cgraph.c:1948 #, gcc-internal-format, gfc-internal-format msgid "invalid offload table in %s" msgstr "tabla de descarga no válida en %s" @@ -20108,81 +20123,87 @@ msgid "bytecode stream in file %qs generated with LTO version %d.%d instead of the expected %d.%d" msgstr "flujo de bytecode en el fichero %qs generado con LTO versión %d.%d en lugar de la versión esperada %d.%d" -#: lto-wrapper.c:117 +#: lto-wrapper.c:118 #, gcc-internal-format msgid "deleting LTRANS file %s: %m" msgstr "se borra el fichero LTRANS %s: %m" -#: lto-wrapper.c:154 +#: lto-wrapper.c:155 #, gcc-internal-format msgid "malformed COLLECT_GCC_OPTIONS" msgstr "COLLECT_GCC_OPTIONS malformado" -#: lto-wrapper.c:308 +#: lto-wrapper.c:309 #, gcc-internal-format, gfc-internal-format msgid "Option %s with different values" msgstr "Opción %s con valores diferentes" -#: lto-wrapper.c:392 +#: lto-wrapper.c:393 #, gcc-internal-format, gfc-internal-format msgid "Option %s not used consistently in all LTO input files" msgstr "Opción %s no usada con coherencia en todos los ficheros de entrada LTO" -#: lto-wrapper.c:832 +#: lto-wrapper.c:833 #, gcc-internal-format, gfc-internal-format msgid "problem with building target image for %s\n" msgstr "problema al construir la imagen de destino para %s\n" -#: lto-wrapper.c:852 +#: lto-wrapper.c:853 #, gcc-internal-format msgid "reading input file" msgstr "leyendo fichero de entrada" -#: lto-wrapper.c:857 +#: lto-wrapper.c:858 #, gcc-internal-format msgid "writing output file" msgstr "escribiendo fichero de salida" -#: lto-wrapper.c:889 +#: lto-wrapper.c:890 #, gcc-internal-format msgid "installation error, can't find crtoffloadtable.o" msgstr "error de instalación, no se puede encontrar crtoffloadtable.o" -#: lto-wrapper.c:1000 lto-wrapper.c:1012 +#: lto-wrapper.c:1001 lto-wrapper.c:1013 #, gcc-internal-format, gfc-internal-format msgid "%s: %s\n" msgstr "%s: %s\n" -#: lto-wrapper.c:1056 +#: lto-wrapper.c:1064 #, gcc-internal-format msgid "environment variable COLLECT_GCC must be set" msgstr "se debe establecer la variable de entorno COLLECT_GCC" -#: lto-wrapper.c:1060 config/nvptx/mkoffload.c:363 +#: lto-wrapper.c:1068 config/nvptx/mkoffload.c:363 #, gcc-internal-format msgid "environment variable COLLECT_GCC_OPTIONS must be set" msgstr "se debe establecer la variable de entorno COLLECT_GCC_OPTIONS" -#: lto-wrapper.c:1229 lto-wrapper.c:1285 +#: lto-wrapper.c:1237 lto-wrapper.c:1293 #, gcc-internal-format msgid "cannot open %s: %m" msgstr "no se puede abrir %s: %m" -#: lto-wrapper.c:1232 lto-wrapper.c:1291 +#: lto-wrapper.c:1240 lto-wrapper.c:1299 #, gcc-internal-format msgid "cannot read %s: %m" msgstr "no se puede leer %s: %m" -#: lto-wrapper.c:1259 +#: lto-wrapper.c:1267 #, gcc-internal-format, gfc-internal-format msgid "invalid format of %s" msgstr "formato no válido de %s" -#: lto-wrapper.c:1482 +#: lto-wrapper.c:1491 #, gcc-internal-format msgid "fopen: %s: %m" msgstr "fopen: %s: %m" +#: lto-wrapper.c:1508 +#, fuzzy, gcc-internal-format, gfc-internal-format +#| msgid "Could not open output file '%s'\n" +msgid "Corrupted ltrans output file %s" +msgstr "No se puede abrir el fichero de salida '%s'\n" + #: multiple_target.c:76 #, gcc-internal-format msgid "the call requires ifunc, which is not supported by this target" @@ -20535,12 +20556,12 @@ msgid "unrecognized argument in option %qs" msgstr "no se reconoce el argumento en la opción %qs" -#: opts-common.c:1198 config/i386/i386.c:3206 +#: opts-common.c:1198 config/i386/i386.c:3209 #, gcc-internal-format msgid "valid arguments to %qs are: %s; did you mean %qs?" msgstr "los argumentos válidos para %qs son: %s; ¿quiso decir %qs?" -#: opts-common.c:1201 config/i386/i386.c:3209 +#: opts-common.c:1201 config/i386/i386.c:3212 #, gcc-internal-format msgid "valid arguments to %qs are: %s" msgstr "los argumentos válidos para %qs son: %s" @@ -21135,22 +21156,22 @@ msgid "output operand %d must use %<&%> constraint" msgstr "el operando de salida %d debe usar la restricción %<&%>" -#: regcprop.c:1187 +#: regcprop.c:1193 #, gcc-internal-format, gfc-internal-format msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)" msgstr "validate_value_data: [%u] next_regno erróneo para la cadena vacía (%u)" -#: regcprop.c:1199 +#: regcprop.c:1205 #, gcc-internal-format, gfc-internal-format msgid "validate_value_data: Loop in regno chain (%u)" msgstr "validate_value_data: Ciclo en la cadena regno (%u)" -#: regcprop.c:1202 +#: regcprop.c:1208 #, gcc-internal-format, gfc-internal-format msgid "validate_value_data: [%u] Bad oldest_regno (%u)" msgstr "validate_value_data: [%u] oldest_regno erróneo (%u)" -#: regcprop.c:1214 +#: regcprop.c:1220 #, gcc-internal-format, gfc-internal-format msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)" msgstr "validate_value_data: [%u] Registro no vacío en la cadena (%s %u %i)" @@ -21194,7 +21215,7 @@ msgstr "se usó el registro de %qD para múltiples variables de registro globales" #: reginfo.c:789 config/powerpcspe/powerpcspe.c:32259 -#: config/rs6000/rs6000.c:29453 +#: config/rs6000/rs6000.c:29530 #, gcc-internal-format msgid "conflicts with %qD" msgstr "genera un conflicto con %qD" @@ -21439,153 +21460,159 @@ msgid "function symbol is not function" msgstr "el símbolo de función no es una función" -#: symtab.c:1006 +#: symtab.c:1005 +#, fuzzy, gcc-internal-format +#| msgid "inconsistent file architecture detected" +msgid "inconsistent `ifunc' attribute" +msgstr "se detectó una arquitectura de fichero inconsistente" + +#: symtab.c:1013 #, gcc-internal-format msgid "variable symbol is not variable" msgstr "el símbolo de variable no es una variable" -#: symtab.c:1012 +#: symtab.c:1019 #, gcc-internal-format msgid "node has unknown type" msgstr "el nodo tiene un tipo desconocido" -#: symtab.c:1021 +#: symtab.c:1028 #, gcc-internal-format msgid "node not found node->decl->decl_with_vis.symtab_node" msgstr "nodo no encontrado node->decl->decl_with_vis.symtab_node" -#: symtab.c:1029 +#: symtab.c:1036 #, gcc-internal-format msgid "node differs from node->decl->decl_with_vis.symtab_node" msgstr "el nodo difiere de node->decl->decl_with_vis.symtab_node" -#: symtab.c:1038 +#: symtab.c:1045 #, gcc-internal-format msgid "assembler name hash list corrupted" msgstr "lista hash de nombres del ensamblador corrupta" -#: symtab.c:1051 +#: symtab.c:1058 #, fuzzy, gcc-internal-format #| msgid "node not found in cgraph_hash" msgid "node not found in symtab assembler name hash" msgstr "no se encontró un nodo en cgraph_hash" -#: symtab.c:1058 +#: symtab.c:1065 #, gcc-internal-format msgid "double linked list of assembler names corrupted" msgstr "lista doblemente enlazada de nombres del ensamblador corrrupta" -#: symtab.c:1063 +#: symtab.c:1070 #, gcc-internal-format msgid "node has body_removed but is definition" msgstr "el nodo tiene body_removed y sin embargo es una definición" -#: symtab.c:1068 +#: symtab.c:1075 #, gcc-internal-format msgid "node is analyzed but it is not a definition" msgstr "el nodo está analizado pero no es una definición" -#: symtab.c:1073 +#: symtab.c:1080 #, gcc-internal-format msgid "node is alias but not implicit alias" msgstr "el nodo es un alias pero no un alias implícito" -#: symtab.c:1078 +#: symtab.c:1085 #, gcc-internal-format msgid "node is alias but not definition" msgstr "el nodo es un alias pero no una definición" -#: symtab.c:1083 +#: symtab.c:1090 #, gcc-internal-format msgid "node is weakref but not an transparent_alias" msgstr "el nodo es una weakref pero no un transparent_alias" -#: symtab.c:1088 +#: symtab.c:1095 #, gcc-internal-format msgid "node is transparent_alias but not an alias" msgstr "el nodo es un transparent_alias pero no un alias" -#: symtab.c:1097 +#: symtab.c:1104 #, gcc-internal-format msgid "node is in same_comdat_group list but has no comdat_group" msgstr "el nodo está en la lista same_comdat_group no tiene comdat_group" -#: symtab.c:1102 +#: symtab.c:1109 #, gcc-internal-format msgid "same_comdat_group list across different groups" msgstr "list same_comdat_group con grupos diferentes" -#: symtab.c:1107 +#: symtab.c:1114 #, gcc-internal-format msgid "mixing different types of symbol in same comdat groups is not supported" msgstr "no se permite mezclar diferentes símbolos de tipos en los mismos grupos comdat" -#: symtab.c:1112 +#: symtab.c:1119 #, gcc-internal-format msgid "node is alone in a comdat group" msgstr "el nodo está solo en un grupo comdat" -#: symtab.c:1119 +#: symtab.c:1126 #, gcc-internal-format msgid "same_comdat_group is not a circular list" msgstr "same_comdat_group no es una lista circular" -#: symtab.c:1134 +#: symtab.c:1141 #, gcc-internal-format, gfc-internal-format msgid "comdat-local symbol referred to by %s outside its comdat" msgstr "el símbolo comdat-local referenciado en %s fuera de su comdat" -#: symtab.c:1144 +#: symtab.c:1151 #, gcc-internal-format msgid "implicit_section flag is set but section isn't" msgstr "el indicador implicit_section está puesto pero la sección on lo es" -#: symtab.c:1151 +#: symtab.c:1158 #, gcc-internal-format msgid "Both section and comdat group is set" msgstr "Tanto la sección como el grupo comdat están puestos" -#: symtab.c:1163 +#: symtab.c:1170 #, gcc-internal-format msgid "Alias and target's section differs" msgstr "Alias y sección del objetivo difieren" -#: symtab.c:1170 +#: symtab.c:1177 #, gcc-internal-format msgid "Alias and target's comdat groups differs" msgstr "El alias y los grupos comdat del objetivo difieren" -#: symtab.c:1185 +#: symtab.c:1192 #, gcc-internal-format msgid "Transparent alias and target's assembler names differs" msgstr "El alias transparente y los nombres de ensamblador del objetivo difieren" -#: symtab.c:1193 +#: symtab.c:1200 #, gcc-internal-format msgid "Chained transparent aliases" msgstr "Alias transparentes encadenados" -#: symtab.c:1216 symtab.c:1253 +#: symtab.c:1223 symtab.c:1260 #, gcc-internal-format msgid "symtab_node::verify failed" msgstr "symtab_node::falló verify" -#: symtab.c:1249 +#: symtab.c:1256 #, gcc-internal-format msgid "Two symbols with same comdat_group are not linked by the same_comdat_group list." msgstr "Hay dos símbolos con el mismo comdat_group que no están vinculados a la lista same_comdat_group." -#: symtab.c:1658 +#: symtab.c:1665 #, gcc-internal-format msgid "function %q+D part of alias cycle" msgstr "la función %q+D es parte de un ciclo de alias" -#: symtab.c:1660 +#: symtab.c:1667 #, gcc-internal-format msgid "variable %q+D part of alias cycle" msgstr "la variable %q+D es parte de un ciclo de alias" -#: symtab.c:1688 +#: symtab.c:1695 #, gcc-internal-format msgid "section of alias %q+D must match section of its target" msgstr "la sección del alias %q+D debe cuadrar con la sección de su objetivo" @@ -22390,7 +22417,7 @@ msgid "the first argument of a VEC_COND_EXPR must be of a boolean vector type of the same number of elements as the result" msgstr "el primer argumento de una VEC_COND_EXPR debe ser de tipo vector de booleanos del mismo número de elementos que el resultado" -#: tree-cfg.c:4395 c/c-typeck.c:5212 +#: tree-cfg.c:4395 c/c-typeck.c:5217 #, gcc-internal-format msgid "type mismatch in conditional expression" msgstr "los tipos de datos no coinciden en la expresión condicional" @@ -22740,22 +22767,22 @@ msgid "missing edge %i->%i" msgstr "falta el borde %i->%i" -#: tree-cfg.c:9379 +#: tree-cfg.c:9388 #, gcc-internal-format msgid "% function does return" msgstr "la función % devuelve" -#: tree-cfg.c:9400 tree-cfg.c:9432 +#: tree-cfg.c:9409 tree-cfg.c:9441 #, gcc-internal-format msgid "control reaches end of non-void function" msgstr "el control alcanza el final de una función que no es void" -#: tree-cfg.c:9498 cp/cvt.c:1039 +#: tree-cfg.c:9507 cp/cvt.c:1039 #, gcc-internal-format msgid "ignoring return value of %qD, declared with attribute warn_unused_result" msgstr "se descarta el valor de devolución de %qD, se declaró con el atributo warn_unused_result" -#: tree-cfg.c:9503 cp/cvt.c:1046 +#: tree-cfg.c:9512 cp/cvt.c:1046 #, gcc-internal-format msgid "ignoring return value of function declared with attribute warn_unused_result" msgstr "se descarta el valor de devolución de la función declarada con atributo warn_unused_result" @@ -23022,48 +23049,48 @@ msgid "stmt volatile flag not up-to-date" msgstr "la opción volatile de stmt no está actualizada" -#: tree-ssa-strlen.c:1975 +#: tree-ssa-strlen.c:1999 msgid "%G%qD output truncated before terminating nul copying %E byte from a string of the same length" msgid_plural "%G%qD output truncated before terminating nul copying %E bytes from a string of the same length" msgstr[0] "" msgstr[1] "" -#: tree-ssa-strlen.c:1989 +#: tree-ssa-strlen.c:2013 msgid "%G%qD output truncated copying %E byte from a string of length %wu" msgid_plural "%G%qD output truncated copying %E bytes from a string of length %wu" msgstr[0] "salida de %G%qD truncada copiando %E byte desde una cadena de longitud %wu" msgstr[1] "salida de %G%qD truncada copiando %E bytes desde una cadena de longitud %wu" -#: tree-ssa-strlen.c:1996 +#: tree-ssa-strlen.c:2020 msgid "%G%qD output truncated copying between %wu and %wu bytes from a string of length %wu" msgstr "salida de %G%qD truncada copiando entre %wu y %wu bytes desde una cadena de longitud %wu" -#: tree-ssa-strlen.c:2008 +#: tree-ssa-strlen.c:2032 msgid "%G%qD output may be truncated copying %E byte from a string of length %wu" msgid_plural "%G%qD output may be truncated copying %E bytes from a string of length %wu" msgstr[0] "la salida de %G%qD puede truncarse copiando %E byte desde una cadena de longitud %wu" msgstr[1] "la salida de %G%qD puede truncarse copiando %E bytes desde una cadena de longitud %wu" -#: tree-ssa-strlen.c:2015 tree-ssa-strlen.c:2029 +#: tree-ssa-strlen.c:2039 tree-ssa-strlen.c:2053 msgid "%G%qD output may be truncated copying between %wu and %wu bytes from a string of length %wu" msgstr "la salida de %G%qD puede truncarse copiando entre %wu y %wu bytes desde una cadena de longitud %wu" -#: tree-ssa-strlen.c:2150 +#: tree-ssa-strlen.c:2174 #, fuzzy #| msgid "%qE output truncated before the last format character" msgid "%G%qD output truncated before terminating nul copying as many bytes from a string as its length" msgstr "la salida %qE podría truncarse antes del último carácter de formato" -#: tree-ssa-strlen.c:2156 +#: tree-ssa-strlen.c:2180 msgid "%G%qD specified bound depends on the length of the source argument" msgstr "%G%qD: el límite especificado depende de la longitud del argumento origen" -#: tree-ssa-strlen.c:2163 +#: tree-ssa-strlen.c:2187 #, gcc-internal-format msgid "length computed here" msgstr "la longitud se calcula aquí" -#: tree-ssa-uninit.c:191 varasm.c:331 +#: tree-ssa-uninit.c:191 varasm.c:342 #, gcc-internal-format msgid "%qD was declared here" msgstr "%qD se declaró aquí" @@ -23238,27 +23265,27 @@ msgid "target specific builtin not available" msgstr "no está disponible la orden interna específica del objetivo" -#: tree-vect-generic.c:287 +#: tree-vect-generic.c:283 #, gcc-internal-format msgid "vector operation will be expanded piecewise" msgstr "la operación vectorial se expandirá por piezas" -#: tree-vect-generic.c:290 +#: tree-vect-generic.c:286 #, gcc-internal-format msgid "vector operation will be expanded in parallel" msgstr "la operación vectorial se expandirá en paralelo" -#: tree-vect-generic.c:341 +#: tree-vect-generic.c:337 #, gcc-internal-format msgid "vector operation will be expanded with a single scalar operation" msgstr "la operación vectorial se expandirá con una sola operación escalar" -#: tree-vect-generic.c:941 +#: tree-vect-generic.c:937 #, gcc-internal-format msgid "vector condition will be expanded piecewise" msgstr "la condición vectorial se expandirá por piezas" -#: tree-vect-generic.c:1373 +#: tree-vect-generic.c:1369 #, gcc-internal-format msgid "vector shuffling operation will be expanded piecewise" msgstr "la operación de ordenamiento vectorial se expandirá por piezas" @@ -23268,27 +23295,27 @@ msgid "vectorization did not happen for a simd loop" msgstr "no se ha producido vectorización para un bucle simd" -#: tree-vrp.c:4930 tree-vrp.c:4974 +#: tree-vrp.c:4931 tree-vrp.c:4975 #, gcc-internal-format msgid "array subscript %E is above array bounds of %qT" msgstr "el subíndice %E de la matriz está por encima de los límites de matriz de %qT" -#: tree-vrp.c:4956 +#: tree-vrp.c:4957 #, gcc-internal-format msgid "array subscript [%E, %E] is outside array bounds of %qT" msgstr "el subíndice [%E, %E] de la matriz está fuera de los límites de matriz de %qT" -#: tree-vrp.c:4988 +#: tree-vrp.c:4989 #, gcc-internal-format msgid "array subscript %E is below array bounds of %qT" msgstr "el subíndice %E de la matriz está por debajo de los límites de matriz de %qT" -#: tree-vrp.c:5046 +#: tree-vrp.c:5047 #, gcc-internal-format msgid "array subscript %wi is below array bounds of %qT" msgstr "el subíndice %wi de la matriz está por debajo de los límites de matriz de %qT" -#: tree-vrp.c:5060 +#: tree-vrp.c:5061 #, gcc-internal-format msgid "array subscript %wu is above array bounds of %qT" msgstr "el subíndice %wu de la matriz está por encima de los límites de matriz de %qT" @@ -23303,92 +23330,92 @@ msgid "side-effects element in no-side-effects CONSTRUCTOR" msgstr "elemento con efectos colaterales en CONSTRUCTOR sin efectos colaterales" -#: tree.c:7852 +#: tree.c:7856 #, gcc-internal-format msgid "arrays of functions are not meaningful" msgstr "las matrices de funciones no tienen significado" -#: tree.c:8019 +#: tree.c:8023 #, gcc-internal-format msgid "function return type cannot be function" msgstr "el tipo de devolución de función no puede ser función" -#: tree.c:9327 tree.c:9412 tree.c:9473 +#: tree.c:9331 tree.c:9416 tree.c:9477 #, gcc-internal-format, gfc-internal-format msgid "tree check: %s, have %s in %s, at %s:%d" msgstr "revisión de árbol: %s, se tiene %s en %s, en %s:%d" -#: tree.c:9364 +#: tree.c:9368 #, gcc-internal-format, gfc-internal-format msgid "tree check: expected none of %s, have %s in %s, at %s:%d" msgstr "revisión de árbol: no se esperaba ninguno de %s, se tiene %s en %s, en %s:%d" -#: tree.c:9377 +#: tree.c:9381 #, gcc-internal-format msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d" msgstr "revisión de árbol: se esperaba la clase %qs, se tiene %qs (%s) en %s, en %s:%d" -#: tree.c:9426 +#: tree.c:9430 #, gcc-internal-format msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d" msgstr "revisión de árbol: no se esperaba la clase %qs, se tiene %qs (%s) en %s, en %s:%d" -#: tree.c:9439 +#: tree.c:9443 #, gcc-internal-format, gfc-internal-format msgid "tree check: expected omp_clause %s, have %s in %s, at %s:%d" msgstr "revisión de árbol: se esperaba omp_clause %s, se tiene %s en %s, en %s:%d" -#: tree.c:9499 +#: tree.c:9503 #, gcc-internal-format msgid "tree check: expected tree that contains %qs structure, have %qs in %s, at %s:%d" msgstr "revisión de árbol: se esperaba un árbol que contenga la estructura %qs, se tiene %qs en %s, en %s:%d" -#: tree.c:9513 +#: tree.c:9517 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed elt %d of tree_int_cst with %d elts in %s, at %s:%d" msgstr "revisión de árbol: acceso de elt %d de tree_int_cst con %d elts en %s, en %s:%d" -#: tree.c:9525 +#: tree.c:9529 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d" msgstr "revisión de árbol: acceso de elt %d de tree_vec con %d elts en %s, en %s:%d" -#: tree.c:9538 +#: tree.c:9542 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d" msgstr "revisión de árbol: acceso del operando %d de %s con %d operandos en %s, en %s:%d" -#: tree.c:9551 +#: tree.c:9555 #, gcc-internal-format, gfc-internal-format msgid "tree check: accessed operand %d of omp_clause %s with %d operands in %s, at %s:%d" msgstr "revisión de árbol: acceso del operando %d de omp_clause %s con %d operandos en %s, en %s:%d" -#: tree.c:12446 +#: tree.c:12450 #, gcc-internal-format msgid "%qD is deprecated: %s" msgstr "%qD es obsoleto: %s" -#: tree.c:12449 +#: tree.c:12453 #, gcc-internal-format msgid "%qD is deprecated" msgstr "%qD es obsoleto" -#: tree.c:12473 tree.c:12495 +#: tree.c:12477 tree.c:12499 #, gcc-internal-format msgid "%qE is deprecated: %s" msgstr "%qE es obsoleto: %s" -#: tree.c:12476 tree.c:12498 +#: tree.c:12480 tree.c:12502 #, gcc-internal-format msgid "%qE is deprecated" msgstr "%qE es obsoleto" -#: tree.c:12482 tree.c:12503 +#: tree.c:12486 tree.c:12507 #, gcc-internal-format, gfc-internal-format msgid "type is deprecated: %s" msgstr "el tipo es obsoleto: %s" -#: tree.c:12485 tree.c:12506 +#: tree.c:12489 tree.c:12510 #, gcc-internal-format msgid "type is deprecated" msgstr "el tipo es obsoleto" @@ -23413,242 +23440,242 @@ #. - vector types may differ by TYPE_VECTOR_OPAQUE #. #. Convenience macro for matching individual fields. -#: tree.c:13043 +#: tree.c:13047 #, gcc-internal-format, gfc-internal-format msgid "type variant differs by %s" msgstr "tipo variante difiere en %s" -#: tree.c:13084 +#: tree.c:13088 #, gcc-internal-format msgid "type variant has different TYPE_SIZE_UNIT" msgstr "tipos variantes difieren en TYPE_SIZE_UNIT" -#: tree.c:13086 +#: tree.c:13090 #, gcc-internal-format msgid "type variant's TYPE_SIZE_UNIT" msgstr "TYPE_SIZE_UNIT del tipo variante" -#: tree.c:13088 +#: tree.c:13092 #, gcc-internal-format msgid "type's TYPE_SIZE_UNIT" msgstr "TYPE_SIZE_UNIT del tipo" -#: tree.c:13108 +#: tree.c:13112 #, gcc-internal-format msgid "type variant with TYPE_ALIAS_SET_KNOWN_P" msgstr "tipo variante con TYPE_ALIAS_SET_KNOWN_P" -#: tree.c:13121 +#: tree.c:13125 #, gcc-internal-format msgid "type variant has different TYPE_VFIELD" msgstr "tipo variante con diferente TYPE_VFIELD" -#: tree.c:13157 +#: tree.c:13161 #, gcc-internal-format msgid "type variant has different TYPE_BINFO" msgstr "tipo variante con diferente TYPE_BINFO" -#: tree.c:13159 +#: tree.c:13163 #, gcc-internal-format msgid "type variant's TYPE_BINFO" msgstr "TYPE_BINFO del tipo variante" -#: tree.c:13161 +#: tree.c:13165 #, gcc-internal-format msgid "type's TYPE_BINFO" msgstr "TYPE_BINFO del tipo" -#: tree.c:13199 +#: tree.c:13203 #, gcc-internal-format msgid "type variant has different TYPE_FIELDS" msgstr "tipo variante con diferente TYPE_FIELDS" -#: tree.c:13201 +#: tree.c:13205 #, gcc-internal-format msgid "first mismatch is field" msgstr "el primer descuadre es campo" -#: tree.c:13203 +#: tree.c:13207 #, gcc-internal-format msgid "and field" msgstr "y campo" -#: tree.c:13220 +#: tree.c:13224 #, gcc-internal-format msgid "type variant has different TREE_TYPE" msgstr "tipo variante con diferente TREE_TYPE" -#: tree.c:13222 tree.c:13233 +#: tree.c:13226 tree.c:13237 #, gcc-internal-format msgid "type variant's TREE_TYPE" msgstr "TREE_TYPE del tipo variante" -#: tree.c:13224 tree.c:13235 +#: tree.c:13228 tree.c:13239 #, gcc-internal-format msgid "type's TREE_TYPE" msgstr "TREE_TYPE del tipo" -#: tree.c:13231 +#: tree.c:13235 #, gcc-internal-format msgid "type is not compatible with its variant" msgstr "el tipo no es compatible con su variante" -#: tree.c:13534 +#: tree.c:13538 #, gcc-internal-format msgid "Main variant is not defined" msgstr "La variante principal no está definida" -#: tree.c:13539 +#: tree.c:13543 #, gcc-internal-format msgid "TYPE_MAIN_VARIANT has different TYPE_MAIN_VARIANT" msgstr "TYPE_MAIN_VARIANT tiene diferente TYPE_MAIN_VARIANT" -#: tree.c:13551 +#: tree.c:13555 #, gcc-internal-format msgid "TYPE_CANONICAL has different TYPE_CANONICAL" msgstr "TYPE_CANONICAL tiene diferente TYPE_CANONICAL" -#: tree.c:13569 +#: tree.c:13573 #, gcc-internal-format msgid "TYPE_CANONICAL is not compatible" msgstr "TYPE_CANONICAL no es compatible" -#: tree.c:13577 +#: tree.c:13581 #, gcc-internal-format msgid "TYPE_MODE of TYPE_CANONICAL is not compatible" msgstr "TYPE_MODE de TYPE_CANONICAL no es compatible" -#: tree.c:13583 +#: tree.c:13587 #, gcc-internal-format msgid "TYPE_CANONICAL of main variant is not main variant" msgstr "" -#: tree.c:13599 +#: tree.c:13603 #, gcc-internal-format msgid "TYPE_VFIELD is not FIELD_DECL nor TREE_LIST" msgstr "TYPE_VFIELD no es FIELD_DECL ni TREE_LIST" -#: tree.c:13609 +#: tree.c:13613 #, gcc-internal-format msgid "TYPE_NEXT_PTR_TO is not POINTER_TYPE" msgstr "TYPE_NEXT_PTR_TO no es POINTER_TYPE" -#: tree.c:13619 +#: tree.c:13623 #, gcc-internal-format msgid "TYPE_NEXT_REF_TO is not REFERENCE_TYPE" msgstr "TYPE_NEXT_REF_TO no es REFERENCE_TYPE" -#: tree.c:13640 +#: tree.c:13644 #, gcc-internal-format msgid "TYPE_BINFO is not TREE_BINFO" msgstr "TYPE_BINFO no es TREE_BINFO" -#: tree.c:13646 +#: tree.c:13650 #, gcc-internal-format msgid "TYPE_BINFO type is not TYPE_MAIN_VARIANT" msgstr "El tipo TYPE_BINFO no es TYPE_MAIN_VARIANT" -#: tree.c:13657 +#: tree.c:13661 #, gcc-internal-format msgid "TYPE_METHOD_BASETYPE is not record nor union" msgstr "TYPE_METHOD_BASETYPE no es registro ni unión" -#: tree.c:13668 +#: tree.c:13672 #, gcc-internal-format msgid "TYPE_OFFSET_BASETYPE is not record nor union" msgstr "TYPE_OFFSET_BASETYPE no es registro ni unión" -#: tree.c:13686 +#: tree.c:13690 #, gcc-internal-format msgid "TYPE_ARRAY_MAX_SIZE not INTEGER_CST" msgstr "TYPE_ARRAY_MAX_SIZE no es INTEGER_CST" -#: tree.c:13693 +#: tree.c:13697 #, gcc-internal-format msgid "TYPE_MAX_VALUE_RAW non-NULL" msgstr "TYPE_MAX_VALUE_RAW no NULL" -#: tree.c:13700 +#: tree.c:13704 #, gcc-internal-format msgid "TYPE_LANG_SLOT_1 (binfo) field is non-NULL" msgstr "El campo TYPE_LANG_SLOT_1 (binfo) es no NULL" -#: tree.c:13716 +#: tree.c:13720 #, gcc-internal-format msgid "Enum value is not CONST_DECL or INTEGER_CST" msgstr "El valor enumerado no es CONST_DECL ni INTEGER_CST" -#: tree.c:13724 +#: tree.c:13728 #, gcc-internal-format msgid "Enum value type is not INTEGER_TYPE nor convertible to the enum" msgstr "El tipo de valor enumerado no es INTEGER_TYPE ni puede convertirse al enumerado" -#: tree.c:13731 +#: tree.c:13735 #, gcc-internal-format msgid "Enum value name is not IDENTIFIER_NODE" msgstr "El nombre de valor enumerado no es IDENTIFIER_NODE" -#: tree.c:13741 +#: tree.c:13745 #, gcc-internal-format msgid "Array TYPE_DOMAIN is not integer type" msgstr "El array TYPE_DOMAIN no es de un tipo entero" -#: tree.c:13750 +#: tree.c:13754 #, gcc-internal-format msgid "TYPE_FIELDS defined in incomplete type" msgstr "TYPE_FIELDS definidos en un tipo incompleto" -#: tree.c:13772 +#: tree.c:13776 #, gcc-internal-format msgid "Wrong tree in TYPE_FIELDS list" msgstr "Árbol incorrecto en una lista TYPE_FIELDS" -#: tree.c:13787 +#: tree.c:13791 #, gcc-internal-format msgid "TYPE_CACHED_VALUES_P is %i while TYPE_CACHED_VALUES is %p" msgstr "TYPE_CACHED_VALUES_P es %i mientras que TYPE_CACHED_VALUES es %p" -#: tree.c:13793 +#: tree.c:13797 #, gcc-internal-format msgid "TYPE_CACHED_VALUES is not TREE_VEC" msgstr "TYPE_CACHED_VALUES no es TREE_VEC" -#: tree.c:13806 +#: tree.c:13810 #, gcc-internal-format msgid "wrong TYPE_CACHED_VALUES entry" msgstr "entrada TYPE_CACHED_VALUES incorrecta" -#: tree.c:13819 +#: tree.c:13823 #, gcc-internal-format msgid "TREE_PURPOSE is non-NULL in TYPE_ARG_TYPES list" msgstr "TREE_PURPOSE es no NULL en una lista TYPE_ARG_TYPES" -#: tree.c:13825 +#: tree.c:13829 #, gcc-internal-format msgid "Wrong entry in TYPE_ARG_TYPES list" msgstr "Entrada incorrecta en una lista TYPE_ARG_TYPES" -#: tree.c:13832 +#: tree.c:13836 #, gcc-internal-format msgid "TYPE_VALUES_RAW field is non-NULL" msgstr "El campo TYPE_VALUES_RAW es no NULL" -#: tree.c:13844 +#: tree.c:13848 #, gcc-internal-format msgid "TYPE_CACHED_VALUES_P is set while it should not" msgstr "TYPE_CACHED_VALUES_P está activado y no debería" -#: tree.c:13850 +#: tree.c:13854 #, gcc-internal-format msgid "TYPE_STRING_FLAG is set on wrong type code" msgstr "TYPE_STRING_FLAG está activado en un código de tipo incorrecto" -#: tree.c:13860 +#: tree.c:13864 #, gcc-internal-format msgid "TYPE_METHOD_BASETYPE is not main variant" msgstr "TYPE_METHOD_BASETYPE no es una variante de main" -#: tree.c:13867 +#: tree.c:13871 #, gcc-internal-format msgid "verify_type failed" msgstr "falló verify_type" @@ -23673,183 +23700,183 @@ msgid "corrupted value profile: %s profile counter (%d out of %d) inconsistent with basic-block count (%d)" msgstr "valor de perfil corrupto: la cuenta del perfilador %s (%d de %d) es inconsistente con la cuenta bloque-básico (%d)" -#: var-tracking.c:7166 +#: var-tracking.c:7184 #, gcc-internal-format msgid "variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without" msgstr "se excedió el límite de tamaño de rastreo de variable con -fvar-tracking-assignments, se reintenta sin esa opción" -#: var-tracking.c:7170 +#: var-tracking.c:7188 #, gcc-internal-format msgid "variable tracking size limit exceeded" msgstr "se excedió el límite de tamaño de rastreo de variable" -#: varasm.c:326 +#: varasm.c:337 #, gcc-internal-format msgid "%+qD causes a section type conflict with %qD" msgstr "%+qD causa un conflicto de tipo de sección con %qD" -#: varasm.c:329 +#: varasm.c:340 #, gcc-internal-format msgid "section type conflict with %qD" msgstr "conflicto de tipo de sección con %qD" -#: varasm.c:334 +#: varasm.c:345 #, gcc-internal-format msgid "%+qD causes a section type conflict" msgstr "%+qD causa un conflicto de tipo de sección" -#: varasm.c:336 +#: varasm.c:347 #, gcc-internal-format msgid "section type conflict" msgstr "conflicto de tipo de sección" -#: varasm.c:1019 +#: varasm.c:1030 #, gcc-internal-format msgid "alignment of %q+D is greater than maximum object file alignment %d" msgstr "la alineación de %q+D es mayor que la alineación máxima del fichero objeto %d" -#: varasm.c:1172 +#: varasm.c:1183 #, gcc-internal-format msgid "only zero initializers are allowed in section %qs" msgstr "solo se permiten inicializadores a cero en la sección %qs" -#: varasm.c:1378 varasm.c:1387 +#: varasm.c:1389 varasm.c:1398 #, gcc-internal-format msgid "register name not specified for %q+D" msgstr "no se especifica un nombre de registro para %q+D" -#: varasm.c:1389 +#: varasm.c:1400 #, gcc-internal-format msgid "invalid register name for %q+D" msgstr "nombre de registro no válido para %q+D" -#: varasm.c:1391 +#: varasm.c:1402 #, gcc-internal-format msgid "data type of %q+D isn%'t suitable for a register" msgstr "el tipo de datos de %q+D no es adecuado para un registro" -#: varasm.c:1394 +#: varasm.c:1405 #, gcc-internal-format msgid "the register specified for %q+D cannot be accessed by the current target" msgstr "no se puede acceder al registro especificado por %q+D en el objetivo actual" -#: varasm.c:1397 +#: varasm.c:1408 #, gcc-internal-format msgid "the register specified for %q+D is not general enough to be used as a register variable" msgstr "el registro especificado para %q+D no es lo suficientemente general para usarse como variable de registro" -#: varasm.c:1400 +#: varasm.c:1411 #, gcc-internal-format msgid "register specified for %q+D isn%'t suitable for data type" msgstr "el registro especificado por %q+D no es adecuado para el tipo de datos" -#: varasm.c:1410 +#: varasm.c:1421 #, gcc-internal-format msgid "global register variable has initial value" msgstr "la variable de registro global tiene valor inicial" -#: varasm.c:1414 +#: varasm.c:1425 #, gcc-internal-format msgid "optimization may eliminate reads and/or writes to register variables" msgstr "la optimización puede eliminar lecturas y/o escrituras a variables de registro" -#: varasm.c:1460 +#: varasm.c:1471 #, gcc-internal-format msgid "register name given for non-register variable %q+D" msgstr "nombre de registro dado para la variable %q+D que no es registro" -#: varasm.c:1870 +#: varasm.c:1881 #, fuzzy, gcc-internal-format #| msgid "Use alternate leaf function entries" msgid "Patchable function entry > size" msgstr "Usar entradas de función hojas alternadas" -#: varasm.c:2069 +#: varasm.c:2080 #, gcc-internal-format msgid "thread-local COMMON data not implemented" msgstr "los datos COMMON thread-local no están implementados" -#: varasm.c:2102 +#: varasm.c:2113 #, gcc-internal-format msgid "requested alignment for %q+D is greater than implemented alignment of %wu" msgstr "la alineación solicitada para %q+D es mayor que la alineación implementada de %wu" -#: varasm.c:2205 c/c-decl.c:5027 c/c-parser.c:1534 +#: varasm.c:2216 c/c-decl.c:5027 c/c-parser.c:1534 #, gcc-internal-format msgid "storage size of %q+D isn%'t known" msgstr "no se conoce el tamaño de almacenamiento de %q+D" -#: varasm.c:4910 +#: varasm.c:4921 #, gcc-internal-format msgid "initializer for integer/fixed-point value is too complicated" msgstr "el inicializador para un valor entero/coma fija es demasiado complicado" -#: varasm.c:4915 +#: varasm.c:4926 #, gcc-internal-format msgid "initializer for floating value is not a floating constant" msgstr "el inicializador para un valor de coma flotante no es una constante de coma flotante" -#: varasm.c:5227 +#: varasm.c:5238 #, gcc-internal-format msgid "invalid initial value for member %qE" msgstr "valor inicial no válido para el miembro %qE" -#: varasm.c:5487 +#: varasm.c:5498 #, gcc-internal-format msgid "%+qD declared weak after being used" msgstr "%+qD se declaró débil después de usarse" -#: varasm.c:5539 +#: varasm.c:5550 #, gcc-internal-format msgid "weak declaration of %q+D being applied to a already existing, static definition" msgstr "la declaración débil de %q+D se está aplicando a una definición estática que ya existe" -#: varasm.c:5575 +#: varasm.c:5586 #, gcc-internal-format msgid "weak declaration of %q+D must be public" msgstr "la declaración weak de %q+D debe ser public" -#: varasm.c:5579 +#: varasm.c:5590 #, gcc-internal-format msgid "weak declaration of %q+D not supported" msgstr "no se admite la declaración weak de %q+D" -#: varasm.c:5608 varasm.c:5912 +#: varasm.c:5619 varasm.c:5926 #, gcc-internal-format msgid "only weak aliases are supported in this configuration" msgstr "sólo se admiten los aliases weak en esta configuración" -#: varasm.c:5802 +#: varasm.c:5813 #, gcc-internal-format msgid "weakref is not supported in this configuration" msgstr "weakref no se admite en esta configuración" -#: varasm.c:5834 +#: varasm.c:5846 #, gcc-internal-format msgid "ifunc is not supported on this target" msgstr "no se admiten ifunc en este objetivo" -#: varasm.c:5892 +#: varasm.c:5904 #, gcc-internal-format msgid "weakref %q+D ultimately targets itself" msgstr "la referencia débil %q+D finalmente apunta a sí misma" -#: varasm.c:5894 +#: varasm.c:5906 #, gcc-internal-format msgid "weakref %q+D must have static linkage" msgstr "la referencia débil %q+D debe tener enlace estático" -#: varasm.c:5901 +#: varasm.c:5913 #, gcc-internal-format msgid "alias definitions not supported in this configuration" msgstr "no se admiten las definiciones de alias en esta configuración" -#: varasm.c:5909 +#: varasm.c:5923 #, gcc-internal-format msgid "ifunc is not supported in this configuration" msgstr "ifunc no se admite en esta configuración" -#: varasm.c:6127 config/sol2.c:159 config/i386/winnt.c:265 +#: varasm.c:6141 config/sol2.c:159 config/i386/winnt.c:265 #, gcc-internal-format msgid "visibility attribute not supported in this configuration; ignored" msgstr "no se admiten los atributos de visibilidad en esta configuración; descartados" @@ -23925,467 +23952,473 @@ msgid "bytecode stream: tag %s is not in the expected range [%s, %s]" msgstr "flujo de bytecode: la etiqueta %s no está en el rango esperado [%s, %s]" -#: c-family/c-attribs.c:529 +#: c-family/c-attribs.c:524 +#, fuzzy, gcc-internal-format +#| msgid "%qE attribute ignored for %qE" +msgid "%qE attribute ignored for type %qT" +msgstr "se descarta el atributo %qE para %qE" + +#: c-family/c-attribs.c:536 #, gcc-internal-format msgid "%qE attribute ignored for field of type %qT" msgstr "se descarta el atributo %qE para el campo de tipo %qT" -#: c-family/c-attribs.c:696 +#: c-family/c-attribs.c:706 #, fuzzy, gcc-internal-format #| msgid "alias argument not a string" msgid "no_sanitize argument not a string" msgstr "el argumento de alias no es una cadena" -#: c-family/c-attribs.c:826 ada/gcc-interface/utils.c:6235 +#: c-family/c-attribs.c:837 ada/gcc-interface/utils.c:6240 #, gcc-internal-format msgid "%qE attribute ignored due to conflict with attribute %qs" msgstr "Se hace caso omiso del atributo %qE debido a un conflicto con el atributo %qs" -#: c-family/c-attribs.c:875 +#: c-family/c-attribs.c:886 #, gcc-internal-format msgid "%qE attribute ignored. Use -fcf-protection option to enable it" msgstr "Se descarta el atributo %qE. Utilice la opción -fcf-protection para activarlo" -#: c-family/c-attribs.c:914 c-family/c-attribs.c:920 c-family/c-attribs.c:3388 -#: c-family/c-attribs.c:3423 c-family/c-attribs.c:3429 +#: c-family/c-attribs.c:925 c-family/c-attribs.c:931 c-family/c-attribs.c:3399 +#: c-family/c-attribs.c:3434 c-family/c-attribs.c:3440 #, gcc-internal-format msgid "%qE attribute ignored due to conflict with %qs attribute" msgstr "Se hace caso omiso del atributo %qE debido a un conflicto con el atributo %qs" -#: c-family/c-attribs.c:976 brig/brig-lang.c:482 lto/lto-lang.c:288 +#: c-family/c-attribs.c:987 brig/brig-lang.c:482 lto/lto-lang.c:288 #, gcc-internal-format msgid "%qE attribute has no effect on unit local functions" msgstr "el atributo %qE no tiene efecto en funciones locales de unidad" -#: c-family/c-attribs.c:1130 +#: c-family/c-attribs.c:1141 #, gcc-internal-format msgid "%qE attribute have effect only on public objects" msgstr "el atributo %qE sólo tiene efecto en objetos públicos" -#: c-family/c-attribs.c:1159 +#: c-family/c-attribs.c:1170 #, gcc-internal-format msgid "%qE attribute only affects top level objects" msgstr "el atributo %qE solamente afecta a objetos de alto nivel" -#: c-family/c-attribs.c:1198 c-family/c-attribs.c:2682 +#: c-family/c-attribs.c:1209 c-family/c-attribs.c:2693 #, gcc-internal-format msgid "%qE attribute on function returning %" msgstr "atributo %qE en una función que devuelve %" -#: c-family/c-attribs.c:1221 c-family/c-pragma.c:419 +#: c-family/c-attribs.c:1232 c-family/c-pragma.c:419 #, gcc-internal-format msgid "scalar_storage_order is not supported because endianness is not uniform" msgstr "scalar_storage_order no se admite porque el endianess no es uniforme" -#: c-family/c-attribs.c:1238 +#: c-family/c-attribs.c:1249 #, gcc-internal-format msgid "scalar_storage_order argument must be one of \"big-endian\" or \"little-endian\"" msgstr "el argumento scalar_storage_order solo puede ser \"big-endian\" o \"little-endian\"" -#: c-family/c-attribs.c:1334 +#: c-family/c-attribs.c:1345 #, gcc-internal-format msgid "destructor priorities are not supported" msgstr "no se admiten las prioridades de destructor" -#: c-family/c-attribs.c:1336 +#: c-family/c-attribs.c:1347 #, gcc-internal-format msgid "constructor priorities are not supported" msgstr "no se admiten las prioridades de constructor" -#: c-family/c-attribs.c:1358 +#: c-family/c-attribs.c:1369 #, gcc-internal-format, gfc-internal-format msgid "destructor priorities from 0 to %d are reserved for the implementation" msgstr "las prioridades de destructor desde 0 hasta %d están reservadas para la implementación" -#: c-family/c-attribs.c:1363 +#: c-family/c-attribs.c:1374 #, gcc-internal-format, gfc-internal-format msgid "constructor priorities from 0 to %d are reserved for the implementation" msgstr "las prioridades de constructor desde 0 hasta %d están reservadas para la implementación" -#: c-family/c-attribs.c:1371 +#: c-family/c-attribs.c:1382 #, gcc-internal-format, gfc-internal-format msgid "destructor priorities must be integers from 0 to %d inclusive" msgstr "las prioridades de destructor deben ser enteros desde 0 hasta %d inclusive" -#: c-family/c-attribs.c:1374 +#: c-family/c-attribs.c:1385 #, gcc-internal-format, gfc-internal-format msgid "constructor priorities must be integers from 0 to %d inclusive" msgstr "las prioridades de constructor deben ser enteros desde 0 hasta %d inclusive" -#: c-family/c-attribs.c:1527 +#: c-family/c-attribs.c:1538 #, gcc-internal-format msgid "unknown machine mode %qE" msgstr "se desconoce el modo de máquina %qE" -#: c-family/c-attribs.c:1557 +#: c-family/c-attribs.c:1568 #, gcc-internal-format msgid "specifying vector types with __attribute__ ((mode)) is deprecated" msgstr "es obsoleto especificar tipos vectoriales con __attribute__ ((mode))" -#: c-family/c-attribs.c:1560 +#: c-family/c-attribs.c:1571 #, gcc-internal-format msgid "use __attribute__ ((vector_size)) instead" msgstr "utilice __attribute__ ((vector_size)) en su lugar" -#: c-family/c-attribs.c:1569 +#: c-family/c-attribs.c:1580 #, gcc-internal-format msgid "unable to emulate %qs" msgstr "no se puede emular %qs" -#: c-family/c-attribs.c:1582 +#: c-family/c-attribs.c:1593 #, gcc-internal-format msgid "invalid pointer mode %qs" msgstr "modo de puntero %qs no válido" -#: c-family/c-attribs.c:1599 +#: c-family/c-attribs.c:1610 #, gcc-internal-format msgid "signedness of type and machine mode %qs don%'t match" msgstr "no coinciden los signos del tipo y del modo de máquina %qs" -#: c-family/c-attribs.c:1610 +#: c-family/c-attribs.c:1621 #, gcc-internal-format msgid "no data type for mode %qs" msgstr "no hay tipo de datos para el modo %qs" -#: c-family/c-attribs.c:1620 +#: c-family/c-attribs.c:1631 #, gcc-internal-format msgid "cannot use mode %qs for enumeral types" msgstr "no se puede usar el modo %qs para tipos de enumeración" -#: c-family/c-attribs.c:1647 +#: c-family/c-attribs.c:1658 #, gcc-internal-format msgid "mode %qs applied to inappropriate type" msgstr "se aplicó el modo %qs a un tipo inapropiado" -#: c-family/c-attribs.c:1669 +#: c-family/c-attribs.c:1680 #, gcc-internal-format msgid "section attributes are not supported for this target" msgstr "no se admiten atributos de sección en este objetivo" -#: c-family/c-attribs.c:1675 +#: c-family/c-attribs.c:1686 #, gcc-internal-format msgid "section attribute not allowed for %q+D" msgstr "no se permite un atributo de sección para %q+D" -#: c-family/c-attribs.c:1681 +#: c-family/c-attribs.c:1692 #, gcc-internal-format msgid "section attribute argument not a string constant" msgstr "el argumento del atributo sección no es una constante de cadena" -#: c-family/c-attribs.c:1690 +#: c-family/c-attribs.c:1701 #, gcc-internal-format msgid "section attribute cannot be specified for local variables" msgstr "no se puede especificar el atributo de sección para las variables locales" -#: c-family/c-attribs.c:1700 config/bfin/bfin.c:4806 config/bfin/bfin.c:4857 +#: c-family/c-attribs.c:1711 config/bfin/bfin.c:4806 config/bfin/bfin.c:4857 #: config/bfin/bfin.c:4883 config/bfin/bfin.c:4896 #, gcc-internal-format msgid "section of %q+D conflicts with previous declaration" msgstr "la sección de %q+D genera un conflicto con la declaración previa" -#: c-family/c-attribs.c:1708 +#: c-family/c-attribs.c:1719 #, gcc-internal-format msgid "section of %q+D cannot be overridden" msgstr "no se puede sobreescribir la sección de %q+D" -#: c-family/c-attribs.c:1773 +#: c-family/c-attribs.c:1784 #, gcc-internal-format, gfc-internal-format msgid "requested alignment %d is larger than %d" msgstr "la alineación solicitada %d es mayor que %d" -#: c-family/c-attribs.c:1866 +#: c-family/c-attribs.c:1877 #, gcc-internal-format msgid "alignment may not be specified for %q+D" msgstr "la alineación puede no estar especificada para %q+D" -#: c-family/c-attribs.c:1886 +#: c-family/c-attribs.c:1897 #, gcc-internal-format msgid "ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E (%u)%>" msgstr "Se descarta el atributo %<%E (%u)%> porque genera un conflicto con el atributo %<%E (%u)%>" #. Do not error out for attribute warn_if_not_aligned. -#: c-family/c-attribs.c:1891 c-family/c-attribs.c:1920 +#: c-family/c-attribs.c:1902 c-family/c-attribs.c:1931 #, gcc-internal-format msgid "alignment for %q+D must be at least %d" msgstr "la alineación para %q+D debe ser por lo menos %d" -#: c-family/c-attribs.c:1916 +#: c-family/c-attribs.c:1927 #, gcc-internal-format msgid "alignment for %q+D was previously specified as %d and may not be decreased" msgstr "la alineación para %q+D se especifió previamente como %d y no se puede decrementar" -#: c-family/c-attribs.c:1943 +#: c-family/c-attribs.c:1954 #, gcc-internal-format msgid "% may not be specified for %q+D" msgstr "% puede no estar especificada para %q+D" -#: c-family/c-attribs.c:1986 +#: c-family/c-attribs.c:1997 #, gcc-internal-format msgid "inline function %q+D declared weak" msgstr "la función inline %q+D se declaró weak" -#: c-family/c-attribs.c:1991 +#: c-family/c-attribs.c:2002 #, gcc-internal-format msgid "indirect function %q+D cannot be declared weak" msgstr "la función indirecta %q+D no se puede declarar weak" -#: c-family/c-attribs.c:2015 +#: c-family/c-attribs.c:2026 #, gcc-internal-format msgid "%qE attribute is only applicable on functions" msgstr "el atributo %qE se aplica solamente a funciones" -#: c-family/c-attribs.c:2046 +#: c-family/c-attribs.c:2057 #, gcc-internal-format msgid "%q+D defined both normally and as %qE attribute" msgstr "se definió %q+D normalmente y como un atributo %qE al mismo tiempo" -#: c-family/c-attribs.c:2054 +#: c-family/c-attribs.c:2065 #, gcc-internal-format msgid "weak %q+D cannot be defined %qE" msgstr "weak %q+D no se puede definir como %qE" -#: c-family/c-attribs.c:2071 c-family/c-attribs.c:2582 +#: c-family/c-attribs.c:2082 c-family/c-attribs.c:2593 #, gcc-internal-format msgid "attribute %qE argument not a string" msgstr "el argumento del atributo %qE no es una cadena" -#: c-family/c-attribs.c:2106 +#: c-family/c-attribs.c:2117 #, gcc-internal-format msgid "%+qD declared alias after being used" msgstr "%+qD se declaró después de ser usado" -#: c-family/c-attribs.c:2108 +#: c-family/c-attribs.c:2119 #, gcc-internal-format msgid "%+qD declared ifunc after being used" msgstr "%+qD se declaró ifunc después de ser usado" -#: c-family/c-attribs.c:2159 +#: c-family/c-attribs.c:2170 #, gcc-internal-format msgid "indirect function %q+D cannot be declared weakref" msgstr "la función indirecta %q+D no se puede declarar weakref" -#: c-family/c-attribs.c:2181 +#: c-family/c-attribs.c:2192 #, gcc-internal-format msgid "weakref attribute must appear before alias attribute" msgstr "el atributo weakref debe aparecer antes de los atributos de alias" -#: c-family/c-attribs.c:2193 +#: c-family/c-attribs.c:2204 #, gcc-internal-format msgid "%+qD declared weakref after being used" msgstr "%+qD se declaró weakref después de ser usado" -#: c-family/c-attribs.c:2217 +#: c-family/c-attribs.c:2228 #, gcc-internal-format msgid "%qE attribute ignored on non-class types" msgstr "se descarta el atributo %qE en tipos que no son clases" -#: c-family/c-attribs.c:2223 +#: c-family/c-attribs.c:2234 #, gcc-internal-format msgid "%qE attribute ignored because %qT is already defined" msgstr "se descarta el atributo %qE porque %qT ya está definido" -#: c-family/c-attribs.c:2236 +#: c-family/c-attribs.c:2247 #, gcc-internal-format msgid "visibility argument not a string" msgstr "el argumento de visibilidad no es una cadena" -#: c-family/c-attribs.c:2248 +#: c-family/c-attribs.c:2259 #, gcc-internal-format msgid "%qE attribute ignored on types" msgstr "se descarta el atributo %qE en tipos" -#: c-family/c-attribs.c:2264 +#: c-family/c-attribs.c:2275 #, gcc-internal-format msgid "visibility argument must be one of \"default\", \"hidden\", \"protected\" or \"internal\"" msgstr "el argumento de visibilidad debe ser \"default\", \"hidden\", \"protected\" o \"internal\"" -#: c-family/c-attribs.c:2275 +#: c-family/c-attribs.c:2286 #, gcc-internal-format msgid "%qD redeclared with different visibility" msgstr "%qD se redeclaró con visibilidad diferente" -#: c-family/c-attribs.c:2278 c-family/c-attribs.c:2282 +#: c-family/c-attribs.c:2289 c-family/c-attribs.c:2293 #, gcc-internal-format msgid "%qD was declared %qs which implies default visibility" msgstr "%qD se declaró %qs lo cual implica visibilidad por defecto" -#: c-family/c-attribs.c:2320 +#: c-family/c-attribs.c:2331 #, gcc-internal-format msgid "tls_model argument not a string" msgstr "el argumento de tls_model no es una cadena" -#: c-family/c-attribs.c:2333 +#: c-family/c-attribs.c:2344 #, gcc-internal-format msgid "tls_model argument must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\"" msgstr "el argumento de tls_model debe ser \"local-exec\", \"initial-exec\", \"local-dynamic\" o \"global-dynamic\"" -#: c-family/c-attribs.c:2353 c-family/c-attribs.c:2656 -#: c-family/c-attribs.c:3497 config/m32c/m32c.c:2944 +#: c-family/c-attribs.c:2364 c-family/c-attribs.c:2667 +#: c-family/c-attribs.c:3508 config/m32c/m32c.c:2944 #, gcc-internal-format msgid "%qE attribute applies only to functions" msgstr "el atributo %qE se aplica solamente a funciones" -#: c-family/c-attribs.c:2417 +#: c-family/c-attribs.c:2428 #, gcc-internal-format msgid "alloc_size parameter outside range" msgstr "el parámetro de alloc_size está fuera de rango" -#: c-family/c-attribs.c:2443 +#: c-family/c-attribs.c:2454 #, gcc-internal-format msgid "alloc_align parameter outside range" msgstr "el parámetro de alloc_align está fuera de rango" -#: c-family/c-attribs.c:2467 +#: c-family/c-attribs.c:2478 #, gcc-internal-format msgid "assume_aligned parameter not integer constant" msgstr "el parámetro assume_aligned no es una constante entera" -#: c-family/c-attribs.c:2595 +#: c-family/c-attribs.c:2606 #, gcc-internal-format msgid "only % and % flags are allowed for %<__simd__%> attribute" msgstr "% y % son los únicos indicadores permitidos con el atributo %<__simd__%>" -#: c-family/c-attribs.c:2662 c-family/c-attribs.c:3503 +#: c-family/c-attribs.c:2673 c-family/c-attribs.c:3514 #, gcc-internal-format msgid "can%'t set %qE attribute after definition" msgstr "no se puede establecer el atributo %qE después de la definición" -#: c-family/c-attribs.c:2727 +#: c-family/c-attribs.c:2738 #, gcc-internal-format msgid "%qE attribute duplicated" msgstr "atributo %qE duplicado" -#: c-family/c-attribs.c:2729 +#: c-family/c-attribs.c:2740 #, gcc-internal-format msgid "%qE attribute follows %qE" msgstr "atributo %qE a continuación de %qE" -#: c-family/c-attribs.c:2828 +#: c-family/c-attribs.c:2839 #, gcc-internal-format msgid "type was previously declared %qE" msgstr "el tipo se declaró previamente %qE" -#: c-family/c-attribs.c:2841 cp/class.c:4397 +#: c-family/c-attribs.c:2852 cp/class.c:4401 #, gcc-internal-format msgid "% may only be specified for a virtual function" msgstr "% solo se puede especificar para funciones virtuales" -#: c-family/c-attribs.c:2899 +#: c-family/c-attribs.c:2910 #, gcc-internal-format msgid "%qE argument not an identifier" msgstr "el argumento %qE no es un identificador" -#: c-family/c-attribs.c:2910 +#: c-family/c-attribs.c:2921 #, gcc-internal-format msgid "%qD is not compatible with %qD" msgstr "%qD no es compatible con %qD" -#: c-family/c-attribs.c:2913 +#: c-family/c-attribs.c:2924 #, gcc-internal-format msgid "%qE argument is not a function" msgstr "el argumento %qE no es una función" -#: c-family/c-attribs.c:2961 +#: c-family/c-attribs.c:2972 #, gcc-internal-format msgid "deprecated message is not a string" msgstr "el mensaje obsoleto no es una cadena" -#: c-family/c-attribs.c:3002 +#: c-family/c-attribs.c:3013 #, gcc-internal-format msgid "%qE attribute ignored for %qE" msgstr "se descarta el atributo %qE para %qE" -#: c-family/c-attribs.c:3065 +#: c-family/c-attribs.c:3076 #, gcc-internal-format msgid "invalid vector type for attribute %qE" msgstr "tipo de vector no válido para el atributo %qE" -#: c-family/c-attribs.c:3071 ada/gcc-interface/utils.c:3896 +#: c-family/c-attribs.c:3082 ada/gcc-interface/utils.c:3899 #, gcc-internal-format msgid "vector size not an integral multiple of component size" msgstr "el tamaño del vector no es un múltiplo integral del tamaño del componente" -#: c-family/c-attribs.c:3077 ada/gcc-interface/utils.c:3903 +#: c-family/c-attribs.c:3088 ada/gcc-interface/utils.c:3906 #, gcc-internal-format msgid "zero vector size" msgstr "vector de tamaño cero" -#: c-family/c-attribs.c:3085 +#: c-family/c-attribs.c:3096 #, gcc-internal-format msgid "number of components of the vector not a power of two" msgstr "el número de componentes del vector no es una potencia de dos" -#: c-family/c-attribs.c:3118 ada/gcc-interface/utils.c:6092 +#: c-family/c-attribs.c:3129 ada/gcc-interface/utils.c:6098 #, gcc-internal-format msgid "nonnull attribute without arguments on a non-prototype" msgstr "un atributo que no es nulo sin argumento es un atributo que no es prototipo" -#: c-family/c-attribs.c:3137 ada/gcc-interface/utils.c:6106 +#: c-family/c-attribs.c:3148 ada/gcc-interface/utils.c:6112 #, gcc-internal-format, gfc-internal-format msgid "nonnull argument has invalid operand number (argument %lu)" msgstr "un argumento que no es nulo tiene un número de operando no válido (argumento %lu)" -#: c-family/c-attribs.c:3159 ada/gcc-interface/utils.c:6128 +#: c-family/c-attribs.c:3170 ada/gcc-interface/utils.c:6134 #, gcc-internal-format, gfc-internal-format msgid "nonnull argument with out-of-range operand number (argument %lu, operand %lu)" msgstr "un argumento que no es nulo con número de operando fuera de rango (argumento %lu, operando %lu)" -#: c-family/c-attribs.c:3168 ada/gcc-interface/utils.c:6137 +#: c-family/c-attribs.c:3179 ada/gcc-interface/utils.c:6143 #, gcc-internal-format, gfc-internal-format msgid "nonnull argument references non-pointer operand (argument %lu, operand %lu)" msgstr "un argumento que no es nulo hace referencia a un operando que no es puntero (argumento %lu, operando %lu)" -#: c-family/c-attribs.c:3208 +#: c-family/c-attribs.c:3219 #, gcc-internal-format msgid "%qE attribute ignored on objects of type %qT" msgstr "se descarta el atributo %qE en objetos de tipo %qT" -#: c-family/c-attribs.c:3216 +#: c-family/c-attribs.c:3227 #, gcc-internal-format msgid "%qE attribute does not apply to functions" msgstr "el atributo %qE no se aplica a funciones" -#: c-family/c-attribs.c:3273 +#: c-family/c-attribs.c:3284 #, gcc-internal-format msgid "cleanup argument not an identifier" msgstr "el argumento de limpieza no es un identificador" -#: c-family/c-attribs.c:3280 +#: c-family/c-attribs.c:3291 #, gcc-internal-format msgid "cleanup argument not a function" msgstr "el argumento de limpieza no es una función" -#: c-family/c-attribs.c:3317 +#: c-family/c-attribs.c:3328 #, gcc-internal-format msgid "%qE attribute requires prototypes with named arguments" msgstr "el atributo %qE requiere prototipos con argumentos nombrados" -#: c-family/c-attribs.c:3325 +#: c-family/c-attribs.c:3336 #, gcc-internal-format msgid "%qE attribute only applies to variadic functions" msgstr "el atributo %qE se aplica solamente a funciones variadic" -#: c-family/c-attribs.c:3341 ada/gcc-interface/utils.c:6179 +#: c-family/c-attribs.c:3352 ada/gcc-interface/utils.c:6185 #, gcc-internal-format msgid "requested position is not an integer constant" msgstr "la posición solicitada no es una constante entera" -#: c-family/c-attribs.c:3349 ada/gcc-interface/utils.c:6186 +#: c-family/c-attribs.c:3360 ada/gcc-interface/utils.c:6192 #, gcc-internal-format msgid "requested position is less than zero" msgstr "la posición solicitada es menor a cero" -#: c-family/c-attribs.c:3404 +#: c-family/c-attribs.c:3415 #, gcc-internal-format msgid "empty string in attribute %" msgstr "cadena vacía en el atributo %" -#: c-family/c-attribs.c:3520 +#: c-family/c-attribs.c:3531 #, gcc-internal-format msgid "returns_nonnull attribute on a function not returning a pointer" msgstr "atributo returns_nonnull en una función que no devuelve puntero" -#: c-family/c-attribs.c:3535 +#: c-family/c-attribs.c:3546 #, gcc-internal-format msgid "%qE attribute is only valid on % type" msgstr "el atributo %qE solo es válido con tipos %" @@ -24430,12 +24463,12 @@ msgid "__builtin_shuffle argument vector(s) inner type must have the same size as inner type of the mask" msgstr "el tipo interno del vector (o vectores) argumento de __builtin_shuffle debe tener el mismo tamaño que el tipo interno de la máscara" -#: c-family/c-common.c:1262 c-family/c-warn.c:1194 +#: c-family/c-common.c:1262 c-family/c-warn.c:1202 #, gcc-internal-format msgid "unsigned conversion from %qT to %qT changes value from %qE to %qE" msgstr "la conversión sin signo de %qT a %qT cambia el valor de %qE a %qE" -#: c-family/c-common.c:1267 c-family/c-warn.c:1202 +#: c-family/c-common.c:1267 c-family/c-warn.c:1210 #, gcc-internal-format msgid "unsigned conversion from %qT to %qT changes the value of %qE" msgstr "la conversión sin signo de %qT a %qT cambia el valor de %qE" @@ -24565,7 +24598,7 @@ msgid "suggest parentheses around assignment used as truth value" msgstr "se sugieren paréntesis alrededor de la asignación usada como valor verdadero" -#: c-family/c-common.c:3518 c/c-decl.c:4325 c/c-decl.c:6430 c/c-typeck.c:14177 +#: c-family/c-common.c:3518 c/c-decl.c:4325 c/c-decl.c:6450 c/c-typeck.c:14182 #, gcc-internal-format msgid "invalid use of %" msgstr "uso no válido de %" @@ -24645,7 +24678,7 @@ msgid "duplicate case value" msgstr "valor de case duplicado" -#: c-family/c-common.c:4867 c-family/c-warn.c:2216 +#: c-family/c-common.c:4867 c-family/c-warn.c:2225 #, gcc-internal-format msgid "previously used here" msgstr "se usó previamente aquí" @@ -24690,193 +24723,193 @@ msgid "missing sentinel in function call" msgstr "falta un centinela en la llamada a la función" -#: c-family/c-common.c:5411 +#: c-family/c-common.c:5409 #, gcc-internal-format, gfc-internal-format msgid "null argument where non-null required (argument %lu)" msgstr "argumento nulo donde se requiere uno que no sea nulo (argumento %lu)" -#: c-family/c-common.c:5506 c-family/c-common.c:5553 +#: c-family/c-common.c:5504 c-family/c-common.c:5551 #, gcc-internal-format msgid "bad option %qs to attribute %" msgstr "opción %qs errónea para el atributo %" -#: c-family/c-common.c:5509 c-family/c-common.c:5557 +#: c-family/c-common.c:5507 c-family/c-common.c:5555 #, gcc-internal-format msgid "bad option %qs to pragma %" msgstr "opción %qs errónea para el pragma %" -#: c-family/c-common.c:5589 +#: c-family/c-common.c:5587 #, gcc-internal-format msgid "% attribute specified multiple times" msgstr "atributo % especificado múltiples veces" -#: c-family/c-common.c:5593 +#: c-family/c-common.c:5591 #, gcc-internal-format msgid "% attribute specified with a parameter" msgstr "el atributo % se especificó con un parámetro" -#: c-family/c-common.c:5733 c-family/c-common.c:6485 c-family/c-common.c:6558 +#: c-family/c-common.c:5731 c-family/c-common.c:6477 c-family/c-common.c:6550 #: c/c-typeck.c:3555 #, gcc-internal-format msgid "too few arguments to function %qE" msgstr "faltan argumentos para la función %qE" -#: c-family/c-common.c:5738 c-family/c-common.c:6584 c/c-typeck.c:3284 +#: c-family/c-common.c:5736 c-family/c-common.c:6576 c/c-typeck.c:3284 #, gcc-internal-format msgid "too many arguments to function %qE" msgstr "demasiados argumentos para la función %qE" -#: c-family/c-common.c:5769 +#: c-family/c-common.c:5767 #, gcc-internal-format msgid "third argument to function %qE must be a constant integer" msgstr "el tercer argumento de la función %qEdebe ser una constante entera" -#: c-family/c-common.c:5794 +#: c-family/c-common.c:5792 #, gcc-internal-format msgid "second argument to function %qE must be a constant integer power of 2 between %qi and %qu bits" msgstr "el segundo argumento de la función %qE tiene que ser una potencia de 2 entera constante entre loss bits %qi y %qu" -#: c-family/c-common.c:5815 c-family/c-common.c:5859 +#: c-family/c-common.c:5813 c-family/c-common.c:5857 #, gcc-internal-format msgid "non-floating-point argument in call to function %qE" msgstr "argumento que no es de coma flotante en la llamada a la función %qE" -#: c-family/c-common.c:5838 +#: c-family/c-common.c:5836 #, gcc-internal-format msgid "non-floating-point arguments in call to function %qE" msgstr "argumentos que no son de coma flotante en la llamada a la función %qE" -#: c-family/c-common.c:5852 +#: c-family/c-common.c:5850 #, gcc-internal-format msgid "non-const integer argument %u in call to function %qE" msgstr "argumento %u entero que no es constante en la llamada a la función %qE" -#: c-family/c-common.c:5872 +#: c-family/c-common.c:5870 #, gcc-internal-format msgid "non-integer argument 3 in call to function %qE" msgstr "el argumento 3 no es entero en la llamada a la función %qE" -#: c-family/c-common.c:5889 c-family/c-common.c:5925 +#: c-family/c-common.c:5887 c-family/c-common.c:5923 #, gcc-internal-format msgid "argument %u in call to function %qE does not have integral type" msgstr "el argumento %u en la llamada a la función %qE no tiene un tipo entero" -#: c-family/c-common.c:5896 +#: c-family/c-common.c:5894 #, gcc-internal-format msgid "argument 3 in call to function %qE does not have pointer to integral type" msgstr "el argumento 3 en la llamada a la función %qE no tiene un puntero a un tipo entero" -#: c-family/c-common.c:5902 +#: c-family/c-common.c:5900 #, gcc-internal-format msgid "argument 3 in call to function %qE has pointer to enumerated type" msgstr "el argumento 3 en la llamada a la función %qE tiene un puntero a un tipo enumerado" -#: c-family/c-common.c:5908 +#: c-family/c-common.c:5906 #, gcc-internal-format msgid "argument 3 in call to function %qE has pointer to boolean type" msgstr "el argumento 3 en la llamada a la función %qE tiene un puntero a un tipo boolean" -#: c-family/c-common.c:5931 +#: c-family/c-common.c:5929 #, gcc-internal-format msgid "argument 3 in call to function %qE has enumerated type" msgstr "el argumento 3 en la llamada a la función %qE tiene un tipo enumerado" -#: c-family/c-common.c:5937 +#: c-family/c-common.c:5935 #, gcc-internal-format msgid "argument 3 in call to function %qE has boolean type" msgstr "el argumento 3 en la llamada a la función %qE tiene un tipo boolean" -#: c-family/c-common.c:6184 +#: c-family/c-common.c:6183 #, gcc-internal-format msgid "cannot apply % to static data member %qD" msgstr "no se puede aplicar % al dato miembro static %qD" -#: c-family/c-common.c:6189 +#: c-family/c-common.c:6188 #, gcc-internal-format msgid "cannot apply % when % is overloaded" msgstr "no se puede aplicar % cuando % está sobrecargado" -#: c-family/c-common.c:6196 +#: c-family/c-common.c:6195 #, gcc-internal-format msgid "cannot apply % to a non constant address" msgstr "no se puede aplicar % a una dirección que no es constante" -#: c-family/c-common.c:6209 +#: c-family/c-common.c:6208 #, gcc-internal-format msgid "attempt to take address of bit-field structure member %qD" msgstr "se intentó tomar la dirección del miembro de la estructura de campos de bits %qD" -#: c-family/c-common.c:6261 +#: c-family/c-common.c:6260 #, gcc-internal-format msgid "index %E denotes an offset greater than size of %qT" msgstr "el índice %E denota un desplazamiento mayor que el tamaño de %qT" -#: c-family/c-common.c:6427 cp/init.c:3004 cp/init.c:3023 +#: c-family/c-common.c:6419 cp/init.c:3020 cp/init.c:3039 #, gcc-internal-format msgid "size of array is too large" msgstr "el tamaño de la matriz es demasiado grande" -#: c-family/c-common.c:6517 +#: c-family/c-common.c:6509 #, gcc-internal-format msgid "operand type %qT is incompatible with argument %d of %qE" msgstr "el tipo %qT del operando es incompatible con el argumento %d de %qE" -#: c-family/c-common.c:6651 +#: c-family/c-common.c:6643 #, gcc-internal-format msgid "incorrect number of arguments to function %qE" msgstr "número incorrecto de argumentos para la función %qE" -#: c-family/c-common.c:6665 +#: c-family/c-common.c:6657 #, gcc-internal-format msgid "argument 1 of %qE must be a non-void pointer type" msgstr "el argumento 1 de %qE debe ser un tipo puntero que no sea void" -#: c-family/c-common.c:6674 +#: c-family/c-common.c:6666 #, gcc-internal-format msgid "argument 1 of %qE must be a pointer to a constant size type" msgstr "el argumento 1 de %qE debe ser un puntero a un tipo de tamaño constante" -#: c-family/c-common.c:6685 +#: c-family/c-common.c:6677 #, gcc-internal-format msgid "argument 1 of %qE must be a pointer to a nonzero size object" msgstr "el argumento 1 de %qE debe ser un puntero a un objeto de tamaño diferente de cero" -#: c-family/c-common.c:6706 +#: c-family/c-common.c:6698 #, gcc-internal-format msgid "argument %d of %qE must be a pointer type" msgstr "el argumento %d de %qE debe ser un tipo puntero" -#: c-family/c-common.c:6714 +#: c-family/c-common.c:6706 #, gcc-internal-format msgid "argument %d of %qE must be a pointer to a constant size type" msgstr "el argumento %d de %qE debe ser un puntero a un tipo de tamaño constante" -#: c-family/c-common.c:6720 +#: c-family/c-common.c:6712 #, gcc-internal-format msgid "argument %d of %qE must not be a pointer to a function" msgstr "el argumento %d de %qE no debe ser un puntero a función" -#: c-family/c-common.c:6728 +#: c-family/c-common.c:6720 #, gcc-internal-format msgid "size mismatch in argument %d of %qE" msgstr "no coincide el tamaño en el argumento %d de %qE" -#: c-family/c-common.c:6740 +#: c-family/c-common.c:6732 #, gcc-internal-format msgid "non-integer memory model argument %d of %qE" msgstr "argumento de modelo de memoria %d que no es entero de %qE" -#: c-family/c-common.c:6753 +#: c-family/c-common.c:6745 #, gcc-internal-format msgid "invalid memory model argument %d of %qE" msgstr "argumento de modelo de memoria %d no válido de %qE" -#: c-family/c-common.c:7672 +#: c-family/c-common.c:7664 #, gcc-internal-format msgid "index value is out of bound" msgstr "el valor del índice está fuera del límite" -#: c-family/c-common.c:7714 c-family/c-common.c:7763 c-family/c-common.c:7779 +#: c-family/c-common.c:7706 c-family/c-common.c:7755 c-family/c-common.c:7771 #, gcc-internal-format msgid "conversion of scalar %qT to vector %qT involves truncation" msgstr "la conversión del escalar %qT al vector %qT implica truncado" @@ -24883,22 +24916,22 @@ #. Reject arguments that are built-in functions with #. no library fallback. -#: c-family/c-common.c:7867 +#: c-family/c-common.c:7859 #, gcc-internal-format msgid "built-in function %qE must be directly called" msgstr "la función interna %qE ha de ser llamada directamente" -#: c-family/c-common.c:7889 c/c-decl.c:6177 +#: c-family/c-common.c:7881 c/c-decl.c:6197 #, gcc-internal-format msgid "size of array %qE is too large" msgstr "el tamaño de la matriz %qE es demasiado grande" -#: c-family/c-common.c:7891 c/c-decl.c:6180 +#: c-family/c-common.c:7883 c/c-decl.c:6200 #, gcc-internal-format msgid "size of unnamed array is too large" msgstr "el tamaño de la matriz sin nombre es demasiado grande" -#: c-family/c-common.c:7921 +#: c-family/c-common.c:7913 #, gcc-internal-format msgid "environment variable SOURCE_DATE_EPOCH must expand to a non-negative integer less than or equal to %wd" msgstr "" @@ -25422,7 +25455,7 @@ msgid "%<#pragma omp atomic capture%> uses two different variables for memory" msgstr "%<#pragma omp atomic capture%> usa dos variables diferentes para la memoria" -#: c-family/c-omp.c:557 cp/semantics.c:8186 +#: c-family/c-omp.c:557 cp/semantics.c:8189 #, gcc-internal-format msgid "invalid type for iteration variable %qE" msgstr "tipo no válido para la variable de iteración %qE" @@ -25437,22 +25470,22 @@ msgid "%qE is not initialized" msgstr "%qE no está inicializado" -#: c-family/c-omp.c:599 cp/semantics.c:8076 +#: c-family/c-omp.c:599 cp/semantics.c:8079 #, gcc-internal-format msgid "missing controlling predicate" msgstr "falta el predicado controlador" -#: c-family/c-omp.c:704 cp/semantics.c:7732 +#: c-family/c-omp.c:704 cp/semantics.c:7735 #, gcc-internal-format msgid "invalid controlling predicate" msgstr "predicado controlador no válido" -#: c-family/c-omp.c:711 cp/semantics.c:8082 +#: c-family/c-omp.c:711 cp/semantics.c:8085 #, gcc-internal-format msgid "missing increment expression" msgstr "falta la expresión de incremento" -#: c-family/c-omp.c:775 cp/semantics.c:7847 +#: c-family/c-omp.c:775 cp/semantics.c:7850 #, gcc-internal-format msgid "invalid increment expression" msgstr "expresión de incremento no válida" @@ -25507,112 +25540,127 @@ msgid "%<-Wabi=1%> is not supported, using =2" msgstr "no se admite %<-Wabi=1%>; se usará =2" -#: c-family/c-opts.c:612 fortran/cpp.c:350 +#: c-family/c-opts.c:610 fortran/cpp.c:350 #, gcc-internal-format msgid "output filename specified twice" msgstr "se especificó dos veces el nombre del fichero de salida" -#: c-family/c-opts.c:799 +#: c-family/c-opts.c:797 #, gcc-internal-format msgid "-fexcess-precision=standard for C++" msgstr "-fexcess-precision=standard para C++" -#: c-family/c-opts.c:834 +#: c-family/c-opts.c:832 #, gcc-internal-format msgid "-fno-gnu89-inline is only supported in GNU99 or C99 mode" msgstr "-fno-gnu89-inline sólo se admite en modo GNU99 o C99" -#: c-family/c-opts.c:880 +#: c-family/c-opts.c:878 #, gcc-internal-format msgid "-Wformat-y2k ignored without -Wformat" msgstr "se descarta -Wformat-y2k sin -Wformat" -#: c-family/c-opts.c:882 +#: c-family/c-opts.c:880 #, gcc-internal-format msgid "-Wformat-extra-args ignored without -Wformat" msgstr "se descarta -Wformat-extra-args sin -Wformat" -#: c-family/c-opts.c:884 +#: c-family/c-opts.c:882 #, gcc-internal-format msgid "-Wformat-zero-length ignored without -Wformat" msgstr "se descarta -Wformat-zero-lenght sin -Wformat" -#: c-family/c-opts.c:886 +#: c-family/c-opts.c:884 #, gcc-internal-format msgid "-Wformat-nonliteral ignored without -Wformat" msgstr "se descarta -Wformat-nonliteral sin -Wformat" -#: c-family/c-opts.c:888 +#: c-family/c-opts.c:886 #, gcc-internal-format msgid "-Wformat-contains-nul ignored without -Wformat" msgstr "se descarta -Wformat-contains-nul sin -Wformat" -#: c-family/c-opts.c:890 +#: c-family/c-opts.c:888 #, gcc-internal-format msgid "-Wformat-security ignored without -Wformat" msgstr "se descarta -Wformat-security sin -Wformat" -#: c-family/c-opts.c:928 +#: c-family/c-opts.c:918 #, gcc-internal-format msgid "%<-fabi-compat-version=1%> is not supported, using =2" msgstr "no se admite %<-fabi-compat-version=1%>; se usará =2" -#: c-family/c-opts.c:988 +#: c-family/c-opts.c:944 #, gcc-internal-format +msgid "-Wabi won't warn about anything" +msgstr "" + +#: c-family/c-opts.c:946 +#, gcc-internal-format +msgid "-Wabi warns about differences from the most up-to-date ABI, which is also used by default" +msgstr "" + +#: c-family/c-opts.c:949 +#, gcc-internal-format +msgid "use e.g. -Wabi=11 to warn about changes from GCC 7" +msgstr "" + +#: c-family/c-opts.c:1003 +#, gcc-internal-format msgid "external TLS initialization functions not supported on this target" msgstr "no se admiten funciones de inicialización TLS externas en este objetivo" -#: c-family/c-opts.c:1001 +#: c-family/c-opts.c:1016 #, gcc-internal-format, gfc-internal-format msgid "too many filenames given. Type %s --help for usage" msgstr "demasiados nombres de ficheros. Teclee %s --help para información de modo de empleo" -#: c-family/c-opts.c:1016 +#: c-family/c-opts.c:1031 #, gcc-internal-format msgid "opening output file %s: %m" msgstr "abriendo el fichero de salida %s: %m" -#: c-family/c-opts.c:1036 +#: c-family/c-opts.c:1051 #, gcc-internal-format, gfc-internal-format msgid "the \"%s\" debug format cannot be used with pre-compiled headers" msgstr "" -#: c-family/c-opts.c:1190 +#: c-family/c-opts.c:1205 #, gcc-internal-format msgid "opening dependency file %s: %m" msgstr "abriendo el fichero de dependencias %s: %m" -#: c-family/c-opts.c:1201 +#: c-family/c-opts.c:1216 #, gcc-internal-format msgid "closing dependency file %s: %m" msgstr "cerrando el fichero de dependencias %s: %m" -#: c-family/c-opts.c:1204 +#: c-family/c-opts.c:1219 #, gcc-internal-format msgid "when writing output to %s: %m" msgstr "al escribir la salida a %s: %m" -#: c-family/c-opts.c:1284 +#: c-family/c-opts.c:1299 #, gcc-internal-format msgid "to generate dependencies you must specify either -M or -MM" msgstr "para generar dependencias debe especificar -M ó -MM" -#: c-family/c-opts.c:1307 +#: c-family/c-opts.c:1322 #, gcc-internal-format msgid "-MG may only be used with -M or -MM" msgstr "-MG sólo se puede usar con -M ó -MM" -#: c-family/c-opts.c:1340 +#: c-family/c-opts.c:1355 #, gcc-internal-format msgid "-fdirectives-only is incompatible with -Wunused_macros" msgstr "-fdirectives-only es incompatible con -Wunused_macros" -#: c-family/c-opts.c:1342 +#: c-family/c-opts.c:1357 #, gcc-internal-format msgid "-fdirectives-only is incompatible with -traditional" msgstr "-fdirectives-only es incompatible con -traditional" -#: c-family/c-opts.c:1534 +#: c-family/c-opts.c:1549 #, gcc-internal-format msgid "too late for # directive to set debug directory" msgstr "demasiado tarde para que la directiva # establezca el directorio de depuración" @@ -25997,128 +26045,128 @@ msgid "wrong type argument to %s" msgstr "argumento de tipo erróneo para %s" -#: c-family/c-warn.c:53 c-family/c-warn.c:66 cp/constexpr.c:1847 +#: c-family/c-warn.c:54 c-family/c-warn.c:67 cp/constexpr.c:1847 #: cp/constexpr.c:4099 #, gcc-internal-format msgid "overflow in constant expression" msgstr "desbordamiento en la expresión constante" -#: c-family/c-warn.c:93 +#: c-family/c-warn.c:94 #, gcc-internal-format msgid "integer overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento entero en la expresión %qE de tipo %qT da %qE" -#: c-family/c-warn.c:95 +#: c-family/c-warn.c:96 #, gcc-internal-format msgid "integer overflow in expression of type %qT results in %qE" msgstr "desbordamiento entero en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:101 +#: c-family/c-warn.c:102 #, gcc-internal-format msgid "floating point overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento de coma flotante en la expresión %qE de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:103 +#: c-family/c-warn.c:104 #, gcc-internal-format msgid "floating point overflow in expression of type %qT results in %qE" msgstr "desbordamiento de coma flotante en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:109 +#: c-family/c-warn.c:110 #, gcc-internal-format msgid "fixed-point overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento de coma fija en la expresión %qE de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:111 +#: c-family/c-warn.c:112 #, gcc-internal-format msgid "fixed-point overflow in expression of type %qT results in %qE" msgstr "desbordamiento de coma fija en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:117 +#: c-family/c-warn.c:118 #, gcc-internal-format msgid "vector overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento vectorial en la expresión %qE de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:119 +#: c-family/c-warn.c:120 #, gcc-internal-format msgid "vector overflow in expression of type %qT results in %qE" msgstr "desbordamiento vectorial en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:126 +#: c-family/c-warn.c:127 #, gcc-internal-format msgid "complex integer overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento de entero complejo en la expresión %qE de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:128 +#: c-family/c-warn.c:129 #, gcc-internal-format msgid "complex integer overflow in expression of type %qT results in %qE" msgstr "desbordamiento de entero complejo en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:132 +#: c-family/c-warn.c:133 #, gcc-internal-format msgid "complex floating point overflow in expression %qE of type %qT results in %qE" msgstr "desbordamiento de coma flotante compleja en la expresión %qE de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:134 +#: c-family/c-warn.c:135 #, gcc-internal-format msgid "complex floating point overflow in expression of type %qT results in %qE" msgstr "desbordamiento de coma flotante compleja en expresión de tipo %qT da como resultado %qE" -#: c-family/c-warn.c:216 +#: c-family/c-warn.c:217 #, gcc-internal-format msgid "logical % applied to non-boolean constant" msgstr "se aplicó un % lógico a una constante que no es booleana" -#: c-family/c-warn.c:219 +#: c-family/c-warn.c:220 #, gcc-internal-format msgid "logical % applied to non-boolean constant" msgstr "se aplicó un % lógico a una constante que no es booleana" -#: c-family/c-warn.c:289 +#: c-family/c-warn.c:290 #, gcc-internal-format msgid "logical % of collectively exhaustive tests is always true" msgstr "un % lógico de pruebas colectivamente exhaustivas siempre es verdadero" -#: c-family/c-warn.c:293 +#: c-family/c-warn.c:294 #, gcc-internal-format msgid "logical % of mutually exclusive tests is always false" msgstr "un % de pruebas equivalentes mutuamente exclusivas siempre es falso" -#: c-family/c-warn.c:303 +#: c-family/c-warn.c:304 #, gcc-internal-format msgid "logical % of equal expressions" msgstr "% lógico de expresiones equivalentes" -#: c-family/c-warn.c:306 +#: c-family/c-warn.c:307 #, gcc-internal-format msgid "logical % of equal expressions" msgstr "un % de expresiones equivalentes" -#: c-family/c-warn.c:384 +#: c-family/c-warn.c:385 #, gcc-internal-format msgid "bitwise comparison always evaluates to false" msgstr "comparación de bits siempre falsa" -#: c-family/c-warn.c:387 +#: c-family/c-warn.c:388 #, gcc-internal-format msgid "bitwise comparison always evaluates to true" msgstr "comparación de bits siempre verdadera" -#: c-family/c-warn.c:441 +#: c-family/c-warn.c:442 #, gcc-internal-format msgid "self-comparison always evaluates to true" msgstr "autocomparación siempre verdadera" -#: c-family/c-warn.c:444 +#: c-family/c-warn.c:445 #, gcc-internal-format msgid "self-comparison always evaluates to false" msgstr "autocomparación siempre falsa" -#: c-family/c-warn.c:494 +#: c-family/c-warn.c:495 #, gcc-internal-format msgid "logical not is only applied to the left hand side of comparison" msgstr "" -#: c-family/c-warn.c:502 +#: c-family/c-warn.c:503 #, gcc-internal-format msgid "add parentheses around left hand side expression to silence this warning" msgstr "" @@ -26125,7 +26173,7 @@ # No existe una traducción para type-punning. Gracias a Jose María Pérez # por el comentario. cfuga -#: c-family/c-warn.c:636 +#: c-family/c-warn.c:637 #, gcc-internal-format msgid "type-punning to incomplete type might break strict-aliasing rules" msgstr "el uso de % sobre un tipo incompleto puede romper las reglas de alias estricto" @@ -26132,7 +26180,7 @@ # No existe una traducción para type-punning. Gracias a Jose María Pérez # por el comentario. cfuga -#: c-family/c-warn.c:654 +#: c-family/c-warn.c:655 #, gcc-internal-format msgid "dereferencing type-punned pointer will break strict-aliasing rules" msgstr "la dereferencia de punteros % romperá las reglas de alias estricto" @@ -26139,573 +26187,573 @@ # No existe una traducción para type-punning. Gracias a Jose María Pérez # por el comentario. cfuga -#: c-family/c-warn.c:662 c-family/c-warn.c:680 +#: c-family/c-warn.c:663 c-family/c-warn.c:681 #, gcc-internal-format msgid "dereferencing type-punned pointer might break strict-aliasing rules" msgstr "la dereferencia de punteros % puede romper las reglas de alias estricto" -#: c-family/c-warn.c:803 +#: c-family/c-warn.c:811 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the source; did you mean to use the size of the destination?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el origen; ¿pretendía usar el tamaño del destino?" -#: c-family/c-warn.c:834 +#: c-family/c-warn.c:842 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the destination; did you mean to remove the addressof?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el destino; ¿pretendía quitar el addressof?" -#: c-family/c-warn.c:841 +#: c-family/c-warn.c:849 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the destination; did you mean to provide an explicit length?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el destino; ¿pretendía proporcionar una longitud explícita?" -#: c-family/c-warn.c:846 +#: c-family/c-warn.c:854 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the destination; did you mean to dereference it?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el destino; ¿pretendía desreferenciarla?" -#: c-family/c-warn.c:858 +#: c-family/c-warn.c:866 #, gcc-internal-format msgid "argument to % in %qD call is the same pointer type %qT as the destination; expected %qT or an explicit length" msgstr "el argumento de % en la llamada %qD es el mismo tipo de puntero %qT que el destino; se esperaba %qT o una longitud explícita" -#: c-family/c-warn.c:874 +#: c-family/c-warn.c:882 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the source; did you mean to remove the addressof?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el origen; ¿pretendía quitar la dirección de?" -#: c-family/c-warn.c:881 +#: c-family/c-warn.c:889 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the source; did you mean to provide an explicit length?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el origen; ¿pretendía indicar una longitud explícita?" -#: c-family/c-warn.c:886 +#: c-family/c-warn.c:894 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the source; did you mean to dereference it?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el origen; ¿pretendía desreferenciarla?" -#: c-family/c-warn.c:898 +#: c-family/c-warn.c:906 #, gcc-internal-format msgid "argument to % in %qD call is the same pointer type %qT as the source; expected %qT or an explicit length" msgstr "el argumento de % en la llamada %qD es el mismo tipo de puntero %qT que el origen; se esperaba %qT o una longitud explícita" -#: c-family/c-warn.c:914 +#: c-family/c-warn.c:922 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the first source; did you mean to remove the addressof?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el primer origen; ¿pretendía quitar la dirección de?" -#: c-family/c-warn.c:921 +#: c-family/c-warn.c:929 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the first source; did you mean to provide an explicit length?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el primer origen; ¿pretendía indicar una longitud explícita?" -#: c-family/c-warn.c:926 +#: c-family/c-warn.c:934 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the first source; did you mean to dereference it?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el primer origen; ¿pretendía desreferenciarla?" -#: c-family/c-warn.c:938 +#: c-family/c-warn.c:946 #, gcc-internal-format msgid "argument to % in %qD call is the same pointer type %qT as the first source; expected %qT or an explicit length" msgstr "el argumento de % en la llamada %qD es el mismo tipo de puntero %qT que el primer origen; se esperaba %qT o una longitud explícita" -#: c-family/c-warn.c:954 +#: c-family/c-warn.c:962 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the second source; did you mean to remove the addressof?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el segundo origen; ¿pretendía quitar la dirección de?" -#: c-family/c-warn.c:961 +#: c-family/c-warn.c:969 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the second source; did you mean to provide an explicit length?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el segundo origen; ¿pretendía indicar una longitud explícita?" -#: c-family/c-warn.c:966 +#: c-family/c-warn.c:974 #, gcc-internal-format msgid "argument to % in %qD call is the same expression as the second source; did you mean to dereference it?" msgstr "el argumento de % en la llamada %qD es la misma expresión que el segundo origen; ¿pretendía desreferenciarla?" -#: c-family/c-warn.c:978 +#: c-family/c-warn.c:986 #, gcc-internal-format msgid "argument to % in %qD call is the same pointer type %qT as the second source; expected %qT or an explicit length" msgstr "el argumento de % en la llamada %qD es el mismo tipo de puntero %qT que el segundo origen; se esperaba %qT o una longitud explícita" -#: c-family/c-warn.c:1007 c-family/c-warn.c:1014 +#: c-family/c-warn.c:1015 c-family/c-warn.c:1022 #, gcc-internal-format msgid "%<_Atomic%>-qualified parameter type %qT of %q+D" msgstr "tipo de parámetro cualificado %<_Atomic%> %qT de %q+D" -#: c-family/c-warn.c:1024 +#: c-family/c-warn.c:1032 #, gcc-internal-format msgid "first argument of %q+D should be %" msgstr "el primer argumento de %q+D debe ser %" -#: c-family/c-warn.c:1033 +#: c-family/c-warn.c:1041 #, gcc-internal-format msgid "second argument of %q+D should be %" msgstr "el segundo argumento de %q+D debe ser %" -#: c-family/c-warn.c:1042 +#: c-family/c-warn.c:1050 #, gcc-internal-format msgid "third argument of %q+D should probably be %" msgstr "el tercer argumento de %q+D debería ser %" -#: c-family/c-warn.c:1053 +#: c-family/c-warn.c:1061 #, gcc-internal-format msgid "%q+D takes only zero or two arguments" msgstr "%q+D sólo toma cero o dos argumentos" -#: c-family/c-warn.c:1057 +#: c-family/c-warn.c:1065 #, gcc-internal-format msgid "%q+D declared as variadic function" msgstr "%q+D declarado como función variádica" -#: c-family/c-warn.c:1099 +#: c-family/c-warn.c:1107 #, gcc-internal-format msgid "conversion to %qT from boolean expression" msgstr "la conversión de %qT desde la expresión booleana" -#: c-family/c-warn.c:1117 c-family/c-warn.c:1192 +#: c-family/c-warn.c:1125 c-family/c-warn.c:1200 #, gcc-internal-format msgid "conversion from %qT to %qT changes value from %qE to %qE" msgstr "la conversión de %qT a %qT cambia el valor de %qE a %qE" -#: c-family/c-warn.c:1121 c-family/c-warn.c:1200 +#: c-family/c-warn.c:1129 c-family/c-warn.c:1208 #, gcc-internal-format msgid "conversion from %qT to %qT changes the value of %qE" msgstr "la conversión de %qT a %qT cambia el valor de %qE" -#: c-family/c-warn.c:1141 +#: c-family/c-warn.c:1149 #, gcc-internal-format msgid "conversion from %qT to %qT discards imaginary component" msgstr "la conversión de %qT a %qT descarta la componente imaginaria" -#: c-family/c-warn.c:1153 +#: c-family/c-warn.c:1161 #, gcc-internal-format msgid "conversion from %qT to %qT may change value" msgstr "la conversión de %qT a %qT puede cambiar el valor" -#: c-family/c-warn.c:1213 c-family/c-warn.c:1230 c-family/c-warn.c:1247 +#: c-family/c-warn.c:1221 c-family/c-warn.c:1238 c-family/c-warn.c:1255 #, gcc-internal-format msgid "overflow in conversion from %qT to %qT changes value from %qE to %qE" msgstr "el desbordamiento en la conversión de %qT a %qT cambia el valor de %qE a %qE" -#: c-family/c-warn.c:1218 c-family/c-warn.c:1235 c-family/c-warn.c:1252 +#: c-family/c-warn.c:1226 c-family/c-warn.c:1243 c-family/c-warn.c:1260 #, gcc-internal-format msgid "overflow in conversion from %qT to %qT changes the value of %qE" msgstr "el desbordamiento en la conversión de %qT a %qT cambia el valor de %qE" -#: c-family/c-warn.c:1282 +#: c-family/c-warn.c:1290 #, gcc-internal-format msgid "case value %qs not in enumerated type" msgstr "el valor de case %qs no es un tipo enumerado" -#: c-family/c-warn.c:1287 +#: c-family/c-warn.c:1295 #, gcc-internal-format msgid "case value %qs not in enumerated type %qT" msgstr "el valor de case %qs no es un tipo enumerado %qT" -#: c-family/c-warn.c:1348 +#: c-family/c-warn.c:1356 #, gcc-internal-format msgid "switch missing default case" msgstr "falta el case por defecto para un switch" -#: c-family/c-warn.c:1393 +#: c-family/c-warn.c:1401 #, gcc-internal-format msgid "switch condition has boolean value" msgstr "la condición de switch tiene valor boolean" -#: c-family/c-warn.c:1466 +#: c-family/c-warn.c:1474 #, gcc-internal-format msgid "enumeration value %qE not handled in switch" msgstr "el valor de enumeración %qE no se maneja en un switch" -#: c-family/c-warn.c:1494 +#: c-family/c-warn.c:1502 #, gcc-internal-format msgid "the omitted middle operand in ?: will always be %, suggest explicit middle operand" msgstr "el operando medio omitido en ?: siempre será %, se sugiere un operando medio explícito" -#: c-family/c-warn.c:1515 +#: c-family/c-warn.c:1523 #, gcc-internal-format msgid "assignment of member %qD in read-only object" msgstr "asignación de miembro %qD en objeto de sólo-lectura" -#: c-family/c-warn.c:1517 +#: c-family/c-warn.c:1525 #, gcc-internal-format msgid "increment of member %qD in read-only object" msgstr "incremento de miembro %qD en objeto de sólo lectura" -#: c-family/c-warn.c:1519 +#: c-family/c-warn.c:1527 #, gcc-internal-format msgid "decrement of member %qD in read-only object" msgstr "decremento de miembro %qD en objeto de sólo lectura" -#: c-family/c-warn.c:1521 +#: c-family/c-warn.c:1529 #, gcc-internal-format msgid "member %qD in read-only object used as % output" msgstr "se usó el miembro %qD en un objeto de sólo lectura como salida %" -#: c-family/c-warn.c:1525 +#: c-family/c-warn.c:1533 #, gcc-internal-format msgid "assignment of read-only member %qD" msgstr "asignación del miembro de sólo lectura %qD" -#: c-family/c-warn.c:1526 +#: c-family/c-warn.c:1534 #, gcc-internal-format msgid "increment of read-only member %qD" msgstr "incremento del miembro de sólo lectura %qD" -#: c-family/c-warn.c:1527 +#: c-family/c-warn.c:1535 #, gcc-internal-format msgid "decrement of read-only member %qD" msgstr "decremento del miembro de sólo lectura %qD" -#: c-family/c-warn.c:1528 +#: c-family/c-warn.c:1536 #, gcc-internal-format msgid "read-only member %qD used as % output" msgstr "se usó el miembro de sólo lectura %qD como salida %" -#: c-family/c-warn.c:1532 +#: c-family/c-warn.c:1540 #, gcc-internal-format msgid "assignment of read-only variable %qD" msgstr "asignación de la variable de sólo lectura %qD" -#: c-family/c-warn.c:1533 +#: c-family/c-warn.c:1541 #, gcc-internal-format msgid "increment of read-only variable %qD" msgstr "incremento de la variable de sólo lectura %qD" -#: c-family/c-warn.c:1534 +#: c-family/c-warn.c:1542 #, gcc-internal-format msgid "decrement of read-only variable %qD" msgstr "decremento de la variable de sólo lectura %qD" -#: c-family/c-warn.c:1535 +#: c-family/c-warn.c:1543 #, gcc-internal-format msgid "read-only variable %qD used as % output" msgstr "se usó la variable de sólo lectura %qD como salida %" -#: c-family/c-warn.c:1538 +#: c-family/c-warn.c:1546 #, gcc-internal-format msgid "assignment of read-only parameter %qD" msgstr "asignación del parámetro de sólo-lectura %qD" -#: c-family/c-warn.c:1539 +#: c-family/c-warn.c:1547 #, gcc-internal-format msgid "increment of read-only parameter %qD" msgstr "incremento del parámetro de sólo lectura %qD" -#: c-family/c-warn.c:1540 +#: c-family/c-warn.c:1548 #, gcc-internal-format msgid "decrement of read-only parameter %qD" msgstr "decremento del parámetro de sólo lectura %qD" -#: c-family/c-warn.c:1541 +#: c-family/c-warn.c:1549 #, gcc-internal-format msgid "read-only parameter %qD use as % output" msgstr "se usó el parámetro de sólo lectura %qD como salida %" -#: c-family/c-warn.c:1546 +#: c-family/c-warn.c:1554 #, gcc-internal-format msgid "assignment of read-only named return value %qD" msgstr "asignación del valor de devolución nombrado de sólo lectura %qD" -#: c-family/c-warn.c:1548 +#: c-family/c-warn.c:1556 #, gcc-internal-format msgid "increment of read-only named return value %qD" msgstr "incremento del valor de devolución nombrado de sólo lectura %qD" -#: c-family/c-warn.c:1550 +#: c-family/c-warn.c:1558 #, gcc-internal-format msgid "decrement of read-only named return value %qD" msgstr "decremento del valor de devolución nombrado de sólo lectura %qD" -#: c-family/c-warn.c:1552 +#: c-family/c-warn.c:1560 #, gcc-internal-format msgid "read-only named return value %qD used as %output" msgstr "se usó el valor de devolución nombrado de sólo lectura %qD como salida %" -#: c-family/c-warn.c:1557 +#: c-family/c-warn.c:1565 #, gcc-internal-format msgid "assignment of function %qD" msgstr "asignación de la función %qD" -#: c-family/c-warn.c:1558 +#: c-family/c-warn.c:1566 #, gcc-internal-format msgid "increment of function %qD" msgstr "incremento de la función %qD" -#: c-family/c-warn.c:1559 +#: c-family/c-warn.c:1567 #, gcc-internal-format msgid "decrement of function %qD" msgstr "decremento de la función %qD" -#: c-family/c-warn.c:1560 +#: c-family/c-warn.c:1568 #, gcc-internal-format msgid "function %qD used as % output" msgstr "se usó la función %qD como salida %" -#: c-family/c-warn.c:1563 c/c-typeck.c:4762 +#: c-family/c-warn.c:1571 c/c-typeck.c:4767 #, gcc-internal-format msgid "assignment of read-only location %qE" msgstr "asignación de la ubicación de sólo lectura %qE" -#: c-family/c-warn.c:1564 c/c-typeck.c:4765 +#: c-family/c-warn.c:1572 c/c-typeck.c:4770 #, gcc-internal-format msgid "increment of read-only location %qE" msgstr "incremento de la ubicación de sólo lectura %qE" -#: c-family/c-warn.c:1565 c/c-typeck.c:4768 +#: c-family/c-warn.c:1573 c/c-typeck.c:4773 #, gcc-internal-format msgid "decrement of read-only location %qE" msgstr "decremento de la ubicación de sólo lectura %qE" -#: c-family/c-warn.c:1566 +#: c-family/c-warn.c:1574 #, gcc-internal-format msgid "read-only location %qE used as % output" msgstr "se usó la ubicación de sólo lectura %qE como salida %" -#: c-family/c-warn.c:1580 +#: c-family/c-warn.c:1588 #, gcc-internal-format msgid "lvalue required as left operand of assignment" msgstr "se requiere un l-valor como operando izquierdo de la asignación" -#: c-family/c-warn.c:1583 +#: c-family/c-warn.c:1591 #, gcc-internal-format msgid "lvalue required as increment operand" msgstr "se requiere un l-valor como un operando de incremento" -#: c-family/c-warn.c:1586 +#: c-family/c-warn.c:1594 #, gcc-internal-format msgid "lvalue required as decrement operand" msgstr "se requiere un l-valor como un operando de decremento" -#: c-family/c-warn.c:1589 +#: c-family/c-warn.c:1597 #, gcc-internal-format msgid "lvalue required as unary %<&%> operand" msgstr "se requiere un l-valor como un operador unario %<&%>" -#: c-family/c-warn.c:1592 +#: c-family/c-warn.c:1600 #, gcc-internal-format msgid "lvalue required in asm statement" msgstr "se requiere un l-valor en la declaración asm" -#: c-family/c-warn.c:1609 +#: c-family/c-warn.c:1617 #, gcc-internal-format msgid "invalid type argument (have %qT)" msgstr "argumento de tipo no válido (se tiene %qT)" -#: c-family/c-warn.c:1613 +#: c-family/c-warn.c:1621 #, gcc-internal-format msgid "invalid type argument of array indexing (have %qT)" msgstr "argumento de tipo no válido de índice de matriz (se tiene %qT)" -#: c-family/c-warn.c:1618 +#: c-family/c-warn.c:1626 #, gcc-internal-format msgid "invalid type argument of unary %<*%> (have %qT)" msgstr "argumento de tipo no válido del unario %<*%> (se tiene %qT)" -#: c-family/c-warn.c:1623 +#: c-family/c-warn.c:1631 #, gcc-internal-format msgid "invalid type argument of %<->%> (have %qT)" msgstr "argumento de tipo no válido de %<->%> (se tiene %qT)" -#: c-family/c-warn.c:1628 +#: c-family/c-warn.c:1636 #, gcc-internal-format msgid "invalid type argument of %<->*%> (have %qT)" msgstr "argumento de tipo no válido de %<->*%> (se tiene %qT)" -#: c-family/c-warn.c:1633 +#: c-family/c-warn.c:1641 #, gcc-internal-format msgid "invalid type argument of implicit conversion (have %qT)" msgstr "argumento de tipo no válido en la conversión implícita (se tiene %qT)" -#: c-family/c-warn.c:1654 +#: c-family/c-warn.c:1662 #, gcc-internal-format msgid "array subscript has type %" msgstr "el subíndice de la matriz es de tipo %" -#: c-family/c-warn.c:1689 c-family/c-warn.c:1692 +#: c-family/c-warn.c:1697 c-family/c-warn.c:1700 #, gcc-internal-format msgid "suggest parentheses around %<+%> inside %<<<%>" msgstr "se sugieren paréntesis alrededor de %<+%> dentro de %<<<%>" -#: c-family/c-warn.c:1695 c-family/c-warn.c:1698 +#: c-family/c-warn.c:1703 c-family/c-warn.c:1706 #, gcc-internal-format msgid "suggest parentheses around %<-%> inside %<<<%>" msgstr "se sugieren paréntesis alrededor de %<-%> dentro de %<<<%>" -#: c-family/c-warn.c:1704 c-family/c-warn.c:1707 +#: c-family/c-warn.c:1712 c-family/c-warn.c:1715 #, gcc-internal-format msgid "suggest parentheses around %<+%> inside %<>>%>" msgstr "se sugieren paréntesis alrededor de %<+%> dentro de %<>>%>" -#: c-family/c-warn.c:1710 c-family/c-warn.c:1713 +#: c-family/c-warn.c:1718 c-family/c-warn.c:1721 #, gcc-internal-format msgid "suggest parentheses around %<-%> inside %<>>%>" msgstr "se sugieren paréntesis alrededor de %<-%> dentro de %<>>%>" -#: c-family/c-warn.c:1719 c-family/c-warn.c:1722 +#: c-family/c-warn.c:1727 c-family/c-warn.c:1730 #, gcc-internal-format msgid "suggest parentheses around %<&&%> within %<||%>" msgstr "se sugieren paréntesis alrededor de %<&&%> junto con %<||%>" -#: c-family/c-warn.c:1729 c-family/c-warn.c:1733 +#: c-family/c-warn.c:1737 c-family/c-warn.c:1741 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of %<|%>" msgstr "se sugieren paréntesis alrededor de la aritmética para un operando de %<|%>" -#: c-family/c-warn.c:1737 c-family/c-warn.c:1740 +#: c-family/c-warn.c:1745 c-family/c-warn.c:1748 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<|%>" msgstr "se sugieren paréntesis alrededor de la comparación para un operando de %<|%>" -#: c-family/c-warn.c:1745 +#: c-family/c-warn.c:1753 #, gcc-internal-format msgid "suggest parentheses around operand of % or change %<|%> to %<||%> or % to %<~%>" msgstr "se sugieren paréntesis alrededor del operando de % o cambie %<|%> a %<||%> o % a %<~%>" -#: c-family/c-warn.c:1753 c-family/c-warn.c:1757 +#: c-family/c-warn.c:1761 c-family/c-warn.c:1765 #, gcc-internal-format msgid "suggest parentheses around arithmetic in operand of %<^%>" msgstr "se sugieren paréntesis alrededor de la aritmética para un operando de %<^%>" -#: c-family/c-warn.c:1761 c-family/c-warn.c:1764 +#: c-family/c-warn.c:1769 c-family/c-warn.c:1772 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<^%>" msgstr "se sugieren paréntesis alrededor de la comparación para un operando de %<^%>" -#: c-family/c-warn.c:1770 c-family/c-warn.c:1773 +#: c-family/c-warn.c:1778 c-family/c-warn.c:1781 #, gcc-internal-format msgid "suggest parentheses around %<+%> in operand of %<&%>" msgstr "se sugieren paréntesis alrededor de %<+%> para un operando de %<&%>" -#: c-family/c-warn.c:1776 c-family/c-warn.c:1779 +#: c-family/c-warn.c:1784 c-family/c-warn.c:1787 #, gcc-internal-format msgid "suggest parentheses around %<-%> in operand of %<&%>" msgstr "se sugieren paréntesis alrededor de %<-%> para un operando de %<&%>" -#: c-family/c-warn.c:1783 c-family/c-warn.c:1786 +#: c-family/c-warn.c:1791 c-family/c-warn.c:1794 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<&%>" msgstr "se sugieren paréntesis alrededor de la comparación para un operando de %<&%>" -#: c-family/c-warn.c:1791 +#: c-family/c-warn.c:1799 #, gcc-internal-format msgid "suggest parentheses around operand of % or change %<&%> to %<&&%> or % to %<~%>" msgstr "se sugieren paréntesis alrededor de un operando de % o cambie %<&%> a %<&&%> o % a %<~%>" -#: c-family/c-warn.c:1798 c-family/c-warn.c:1801 +#: c-family/c-warn.c:1806 c-family/c-warn.c:1809 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %<==%>" msgstr "se sugieren paréntesis alrededor de la comparación en un operando de %<==%>" -#: c-family/c-warn.c:1806 c-family/c-warn.c:1809 +#: c-family/c-warn.c:1814 c-family/c-warn.c:1817 #, gcc-internal-format msgid "suggest parentheses around comparison in operand of %" msgstr "se sugieren paréntesis alrededor de la comparación en un operando de %" -#: c-family/c-warn.c:1819 c-family/c-warn.c:1825 +#: c-family/c-warn.c:1827 c-family/c-warn.c:1833 #, gcc-internal-format msgid "comparisons like % do not have their mathematical meaning" msgstr "las comparaciones como % no tienen su significado matemático" -#: c-family/c-warn.c:1841 +#: c-family/c-warn.c:1849 #, gcc-internal-format msgid "label %q+D defined but not used" msgstr "se define la etiqueta %q+D pero no se usa" -#: c-family/c-warn.c:1843 +#: c-family/c-warn.c:1851 #, gcc-internal-format msgid "label %q+D declared but not defined" msgstr "se declara la etiqueta %q+D pero no está definida" -#: c-family/c-warn.c:1866 +#: c-family/c-warn.c:1874 #, gcc-internal-format msgid "division by zero" msgstr "división por cero" -#: c-family/c-warn.c:1886 +#: c-family/c-warn.c:1894 #, gcc-internal-format msgid "% used with constant zero length parameter; this could be due to transposed parameters" msgstr "" -#: c-family/c-warn.c:1909 +#: c-family/c-warn.c:1918 #, gcc-internal-format msgid "% used with length equal to number of elements without multiplication by element size" msgstr "" -#: c-family/c-warn.c:1948 c/c-typeck.c:11499 c/c-typeck.c:11667 +#: c-family/c-warn.c:1957 c/c-typeck.c:11504 c/c-typeck.c:11672 #: cp/typeck.c:5048 #, gcc-internal-format msgid "comparison between types %qT and %qT" msgstr "comparación entre los tipos %qT y %qT" -#: c-family/c-warn.c:1998 +#: c-family/c-warn.c:2007 #, gcc-internal-format msgid "comparison of integer expressions of different signedness: %qT and %qT" msgstr "" -#: c-family/c-warn.c:2051 +#: c-family/c-warn.c:2060 #, gcc-internal-format msgid "promoted ~unsigned is always non-zero" msgstr "el ~unsigned promovido es siempre diferente de cero" -#: c-family/c-warn.c:2054 +#: c-family/c-warn.c:2063 #, gcc-internal-format msgid "comparison of promoted ~unsigned with constant" msgstr "comparación de un ~unsigned promovido con una constante" -#: c-family/c-warn.c:2064 +#: c-family/c-warn.c:2073 #, gcc-internal-format msgid "comparison of promoted ~unsigned with unsigned" msgstr "comparación de un ~unsigned promovido con unsigned" -#: c-family/c-warn.c:2118 +#: c-family/c-warn.c:2127 #, gcc-internal-format msgid "unused parameter %qD" msgstr "parámetro %qD sin uso" -#: c-family/c-warn.c:2180 +#: c-family/c-warn.c:2189 #, gcc-internal-format msgid "typedef %qD locally defined but not used" msgstr "se define tipo %qD localmente pero no se usa" -#: c-family/c-warn.c:2215 +#: c-family/c-warn.c:2224 #, gcc-internal-format msgid "duplicated % condition" msgstr "condición % duplicada" -#: c-family/c-warn.c:2244 +#: c-family/c-warn.c:2253 #, gcc-internal-format msgid "optimization attribute on %qD follows definition but the attribute doesn%'t match" msgstr "el atributo de optimización en %qD después de la definición pero el atributo no concuerda" -#: c-family/c-warn.c:2254 +#: c-family/c-warn.c:2261 #, gcc-internal-format msgid "inline declaration of %qD follows declaration with attribute %qs" msgstr "declaración inline de %qD después de una declaración con atributo %qs" -#: c-family/c-warn.c:2259 +#: c-family/c-warn.c:2266 #, gcc-internal-format msgid "declaration of %q+D with attribute %qs follows inline declaration" msgstr "declaración de %q+D con atributo %qs después de declaración inline" -#: c-family/c-warn.c:2306 +#: c-family/c-warn.c:2313 #, gcc-internal-format msgid "result of %qE requires %u bits to represent, but %qT only has %u bits" msgstr "el resultado de %qE requiere %u bits para representarlo, pero %qT solo tiene %u bits" -#: c-family/c-warn.c:2344 c-family/c-warn.c:2368 +#: c-family/c-warn.c:2351 c-family/c-warn.c:2375 #, gcc-internal-format msgid "comparison of constant %qE with boolean expression is always false" msgstr "la comparación de una constante %qE con una expresión boolean siempre es falsa" -#: c-family/c-warn.c:2347 c-family/c-warn.c:2365 +#: c-family/c-warn.c:2354 c-family/c-warn.c:2372 #, gcc-internal-format msgid "comparison of constant %qE with boolean expression is always true" msgstr "la comparación de una constante %qE con una expresión boolean siempre es verdadera" -#: c-family/c-warn.c:2415 +#: c-family/c-warn.c:2422 #, fuzzy #| msgid "passing argument %d of %qE discards %qv qualifier from pointer target type" msgid "passing argument %i to restrict-qualified parameter aliases with argument %Z" @@ -26713,17 +26761,17 @@ msgstr[0] "el paso del argumento %d de %qE descarta el calificador %qv del tipo del destino del puntero" msgstr[1] "el paso del argumento %d de %qE descarta el calificador %qv del tipo del destino del puntero" -#: c-family/c-warn.c:2480 c/c-typeck.c:5288 cp/call.c:5365 +#: c-family/c-warn.c:2487 c/c-typeck.c:5293 cp/call.c:5365 #, gcc-internal-format msgid "this condition has identical branches" msgstr "esta condición tiene bifurcaciones idénticas" -#: c-family/c-warn.c:2586 +#: c-family/c-warn.c:2593 #, gcc-internal-format msgid "macro expands to multiple statements" msgstr "la macro se expande en múltiples sentencias" -#: c-family/c-warn.c:2587 +#: c-family/c-warn.c:2594 #, gcc-internal-format msgid "some parts of macro expansion are not guarded by this %qs clause" msgstr "algunas partes de la expansión de macro no están flanqueadas por esta cláusula %qs" @@ -26738,7 +26786,7 @@ msgid "too many input files" msgstr "demasiados ficheros de entrada" -#: common/config/aarch64/aarch64-common.c:319 config/aarch64/aarch64.c:10686 +#: common/config/aarch64/aarch64-common.c:319 config/aarch64/aarch64.c:10702 #, gcc-internal-format msgid "unknown value %qs for -mcpu" msgstr "valor %qs desconocido para -mcpu" @@ -26769,13 +26817,13 @@ msgstr "se pasa opción no reconocida a %%:target_mode_check" #: common/config/arm/arm-common.c:322 common/config/arm/arm-common.c:376 -#: common/config/arm/arm-common.c:423 config/aarch64/aarch64.c:10639 +#: common/config/arm/arm-common.c:423 config/aarch64/aarch64.c:10655 #, gcc-internal-format msgid "valid arguments are: %s; did you mean %qs?" msgstr "los argumentos válidos son: %s; ¿quiso decir %qs?" #: common/config/arm/arm-common.c:325 common/config/arm/arm-common.c:379 -#: common/config/arm/arm-common.c:426 config/aarch64/aarch64.c:10642 +#: common/config/arm/arm-common.c:426 config/aarch64/aarch64.c:10658 #, gcc-internal-format, gfc-internal-format msgid "valid arguments are: %s" msgstr "los argumentos válidos son: %s" @@ -27248,12 +27296,12 @@ msgid "profiler support for VxWorks" msgstr "soporte de análisis de perfil para VxWorks" -#: config/aarch64/aarch64-builtins.c:1109 config/arm/arm-builtins.c:2262 +#: config/aarch64/aarch64-builtins.c:1109 config/arm/arm-builtins.c:2272 #, gcc-internal-format msgid "%Kargument %d must be a constant immediate" msgstr "el %Kargumento %d debe ser un inmediato constante" -#: config/aarch64/aarch64-builtins.c:1180 config/arm/arm-builtins.c:2492 +#: config/aarch64/aarch64-builtins.c:1180 config/arm/arm-builtins.c:2502 #, gcc-internal-format msgid "%Klane index must be a constant immediate" msgstr "el índice %Klane debe ser un inmediato constante" @@ -27263,175 +27311,175 @@ msgid "%Ktotal size and element size must be a non-zero constant immediate" msgstr "el tamaño %Ktotal y el tamaño de elemento han de ser un inmediato constante distinto de cero" -#: config/aarch64/aarch64.c:1053 +#: config/aarch64/aarch64.c:1069 #, gcc-internal-format msgid "%qs is incompatible with %s %s" msgstr "%qs es incompatible con %s %s" -#: config/aarch64/aarch64.c:1055 +#: config/aarch64/aarch64.c:1071 #, gcc-internal-format msgid "%qs feature modifier is incompatible with %s %s" msgstr "el modificador de característica %qs es incompatible con %s %s" -#: config/aarch64/aarch64.c:3772 +#: config/aarch64/aarch64.c:3788 #, gcc-internal-format msgid "stack probes for SVE frames" msgstr "" -#: config/aarch64/aarch64.c:10287 +#: config/aarch64/aarch64.c:10303 #, gcc-internal-format, gfc-internal-format msgid "unknown flag passed in -moverride=%s (%s)" msgstr "indicador pasado en -moverride=%s (%s) desconocido" -#: config/aarch64/aarch64.c:10331 +#: config/aarch64/aarch64.c:10347 #, gcc-internal-format, gfc-internal-format msgid "%s string ill-formed\n" msgstr "cadena %s mal formada\n" -#: config/aarch64/aarch64.c:10388 +#: config/aarch64/aarch64.c:10404 #, gcc-internal-format, gfc-internal-format msgid "tuning string missing in option (%s)" msgstr "falta la cadena de ajuste en la opción (%s)" -#: config/aarch64/aarch64.c:10406 +#: config/aarch64/aarch64.c:10422 #, gcc-internal-format, gfc-internal-format msgid "unknown tuning option (%s)" msgstr "opción de cadena de ajuste desconocida (%s)" -#: config/aarch64/aarch64.c:10683 +#: config/aarch64/aarch64.c:10699 #, gcc-internal-format msgid "missing cpu name in %<-mcpu=%s%>" msgstr "falta el nombre de la cpu en %<-mcpu=%s%>" -#: config/aarch64/aarch64.c:10690 +#: config/aarch64/aarch64.c:10706 #, gcc-internal-format msgid "invalid feature modifier in %<-mcpu=%s%>" msgstr "modificador de característica no válido en %<-mcpu=%s%>" -#: config/aarch64/aarch64.c:10717 +#: config/aarch64/aarch64.c:10733 #, gcc-internal-format msgid "missing arch name in %<-march=%s%>" msgstr "falta el nombre de la arquitectura en %<-march=%s%>" -#: config/aarch64/aarch64.c:10720 +#: config/aarch64/aarch64.c:10736 #, gcc-internal-format msgid "unknown value %qs for -march" msgstr "valor %qs desconocido para -march" -#: config/aarch64/aarch64.c:10724 +#: config/aarch64/aarch64.c:10740 #, gcc-internal-format msgid "invalid feature modifier in %<-march=%s%>" msgstr "modificador de característica no válido en %<-march=%s%>" -#: config/aarch64/aarch64.c:10750 +#: config/aarch64/aarch64.c:10766 #, gcc-internal-format msgid "missing cpu name in %<-mtune=%s%>" msgstr "falta el nombre de la cpu en %<-mtune=%s%>" -#: config/aarch64/aarch64.c:10753 +#: config/aarch64/aarch64.c:10769 #, gcc-internal-format msgid "unknown value %qs for -mtune" msgstr "valor %qs desconocido para -mtune" -#: config/aarch64/aarch64.c:10871 config/arm/arm.c:3173 +#: config/aarch64/aarch64.c:10887 config/arm/arm.c:3173 #, gcc-internal-format, gfc-internal-format msgid "switch -mcpu=%s conflicts with -march=%s switch" msgstr "la opción -mcpu=%s genera un conflicto con la opción -march=%s" -#: config/aarch64/aarch64.c:10906 +#: config/aarch64/aarch64.c:10922 #, gcc-internal-format msgid "assembler does not support -mabi=ilp32" msgstr "el ensamblador no tiene soporte para -mabi=ilp32" -#: config/aarch64/aarch64.c:10913 +#: config/aarch64/aarch64.c:10929 #, gcc-internal-format msgid "return address signing is only supported for -mabi=lp64" msgstr "" -#: config/aarch64/aarch64.c:10975 +#: config/aarch64/aarch64.c:10991 #, gcc-internal-format msgid "code model %qs with -f%s" msgstr "modelo de código %qs con -f%s" -#: config/aarch64/aarch64.c:11138 +#: config/aarch64/aarch64.c:11154 #, gcc-internal-format msgid "missing name in % pragma or attribute" msgstr "falta el nombre en atributo %" -#: config/aarch64/aarch64.c:11141 +#: config/aarch64/aarch64.c:11157 #, gcc-internal-format msgid "invalid name (\"%s\") in % pragma or attribute" msgstr "nombre no válido (\"%s\") en el pragma o atributo %" -#: config/aarch64/aarch64.c:11145 config/aarch64/aarch64.c:11184 -#: config/aarch64/aarch64.c:11257 +#: config/aarch64/aarch64.c:11161 config/aarch64/aarch64.c:11200 +#: config/aarch64/aarch64.c:11273 #, gcc-internal-format msgid "invalid value (\"%s\") in % pragma or attribute" msgstr "valor no válido (\"%s\") en el pragma o atributo %" -#: config/aarch64/aarch64.c:11177 +#: config/aarch64/aarch64.c:11193 #, gcc-internal-format msgid "missing name in % pragma or attribute" msgstr "falta el nombre en el pragma o atributo %" -#: config/aarch64/aarch64.c:11180 +#: config/aarch64/aarch64.c:11196 #, gcc-internal-format msgid "invalid name (\"%s\") in % pragma or attribute" msgstr "nombre no válido (\"%s\") en el pragma o atributo %" -#: config/aarch64/aarch64.c:11213 +#: config/aarch64/aarch64.c:11229 #, gcc-internal-format msgid "invalid name (\"%s\") in % pragma or attribute" msgstr "nombre no válido (\"%s\") en el pragma o atributo %" -#: config/aarch64/aarch64.c:11253 +#: config/aarch64/aarch64.c:11269 #, gcc-internal-format msgid "missing value in % pragma or attribute" msgstr "falta el valor en el pragma o atributo %" -#: config/aarch64/aarch64.c:11306 config/aarch64/aarch64.c:11483 +#: config/aarch64/aarch64.c:11322 config/aarch64/aarch64.c:11499 #, gcc-internal-format msgid "malformed % pragma or attribute" msgstr "pragma o atributo % mal formado" -#: config/aarch64/aarch64.c:11354 +#: config/aarch64/aarch64.c:11370 #, gcc-internal-format msgid "pragma or attribute % does not accept an argument" msgstr "el pragma o atributo % no acepta un argumento" -#: config/aarch64/aarch64.c:11362 +#: config/aarch64/aarch64.c:11378 #, gcc-internal-format msgid "pragma or attribute % does not allow a negated form" msgstr "el pragma o atributo % no acepta forma negada" -#: config/aarch64/aarch64.c:11416 +#: config/aarch64/aarch64.c:11432 #, gcc-internal-format msgid "pragma or attribute % is not valid" msgstr "el pragma o atributo % no es válido" -#: config/aarch64/aarch64.c:11473 config/arm/arm.c:30742 -#: config/i386/i386.c:5440 config/powerpcspe/powerpcspe.c:39760 -#: config/rs6000/rs6000.c:36904 config/s390/s390.c:15746 +#: config/aarch64/aarch64.c:11489 config/arm/arm.c:30742 +#: config/i386/i386.c:5443 config/powerpcspe/powerpcspe.c:39760 +#: config/rs6000/rs6000.c:36960 config/s390/s390.c:15746 #, gcc-internal-format msgid "attribute % argument not a string" msgstr "el argumento del atributo % no es una cadena" -#: config/aarch64/aarch64.c:11500 +#: config/aarch64/aarch64.c:11516 #, gcc-internal-format msgid "pragma or attribute % is not valid" msgstr "el pragma o atributo % no es válido" -#: config/aarch64/aarch64.c:11509 +#: config/aarch64/aarch64.c:11525 #, gcc-internal-format msgid "malformed % pragma or attribute" msgstr "pragma o atributo % mal formado" -#: config/aarch64/aarch64.c:13571 +#: config/aarch64/aarch64.c:13587 #, gcc-internal-format msgid "%Klane %wd out of range %wd - %wd" msgstr "%Klane %wd fuera de rango %wd - %wd" -#: config/aarch64/aarch64.c:13573 +#: config/aarch64/aarch64.c:13589 #, gcc-internal-format msgid "lane %wd out of range %wd - %wd" msgstr "vía %wd fuera de rango %wd - %wd" @@ -27491,8 +27539,8 @@ msgid "bad value %qs for -mmemory-latency" msgstr "valor %qs erróneo para -mmemory-latency" -#: config/alpha/alpha.c:6683 config/alpha/alpha.c:6686 config/arc/arc.c:6526 -#: config/arc/arc.c:6800 config/s390/s390.c:847 config/tilegx/tilegx.c:3544 +#: config/alpha/alpha.c:6683 config/alpha/alpha.c:6686 config/arc/arc.c:6517 +#: config/arc/arc.c:6791 config/s390/s390.c:847 config/tilegx/tilegx.c:3544 #: config/tilepro/tilepro.c:3108 #, gcc-internal-format msgid "bad builtin fcode" @@ -27601,11 +27649,11 @@ #: config/arm/arm.c:7029 config/avr/avr.c:9718 config/avr/avr.c:9734 #: config/bfin/bfin.c:4705 config/bfin/bfin.c:4766 config/bfin/bfin.c:4795 #: config/epiphany/epiphany.c:491 config/h8300/h8300.c:5459 -#: config/i386/i386.c:6452 config/i386/i386.c:12479 config/i386/i386.c:41424 -#: config/i386/i386.c:41474 config/i386/i386.c:41544 config/m68k/m68k.c:780 +#: config/i386/i386.c:6455 config/i386/i386.c:12482 config/i386/i386.c:41418 +#: config/i386/i386.c:41468 config/i386/i386.c:41538 config/m68k/m68k.c:780 #: config/mcore/mcore.c:3070 config/nvptx/nvptx.c:4611 #: config/powerpcspe/powerpcspe.c:35785 config/riscv/riscv.c:2698 -#: config/rl78/rl78.c:815 config/rl78/rl78.c:884 config/rs6000/rs6000.c:32982 +#: config/rl78/rl78.c:815 config/rl78/rl78.c:884 config/rs6000/rs6000.c:33038 #: config/rx/rx.c:2719 config/rx/rx.c:2745 config/s390/s390.c:1056 #: config/s390/s390.c:1143 config/sh/sh.c:8428 config/sh/sh.c:8446 #: config/sh/sh.c:8470 config/sh/sh.c:8541 config/sh/sh.c:8564 @@ -27615,134 +27663,134 @@ msgid "%qE attribute only applies to functions" msgstr "el atributo %qE se aplica solamente a funciones" -#: config/arc/arc.c:6425 +#: config/arc/arc.c:6416 #, gcc-internal-format msgid "__builtin_arc_aligned with non-constant alignment" msgstr "__builtin_arc_aligned con alineamiento no constante" -#: config/arc/arc.c:6433 +#: config/arc/arc.c:6424 #, gcc-internal-format msgid "invalid alignment value for __builtin_arc_aligned" msgstr "valor de argumento no válido para __builtin_arc_aligned" -#: config/arc/arc.c:6596 +#: config/arc/arc.c:6587 #, gcc-internal-format msgid "operand 1 should be an unsigned 3-bit immediate" msgstr "el operando 1 debería ser un inmediato de 3 bits sin signo" -#: config/arc/arc.c:6637 config/arc/arc.c:6734 +#: config/arc/arc.c:6628 config/arc/arc.c:6725 #, gcc-internal-format msgid "operand 2 should be an unsigned 3-bit value (I0-I7)" msgstr "el operando 2 debería ser un valor de 3 bits sin signo (10-17)" -#: config/arc/arc.c:6670 config/arc/arc.c:6702 +#: config/arc/arc.c:6661 config/arc/arc.c:6693 #, gcc-internal-format msgid "operand 1 should be an unsigned 3-bit value (I0-I7)" msgstr "el operando 1 debería ser un valor de 3 bits sin signo (10-17)" -#: config/arc/arc.c:6674 config/arc/arc.c:6706 +#: config/arc/arc.c:6665 config/arc/arc.c:6697 #, gcc-internal-format msgid "operand 2 should be an unsigned 8-bit value" msgstr "el operando 2 debería ser un valor de 8 bits sin signo" -#: config/arc/arc.c:6738 +#: config/arc/arc.c:6729 #, gcc-internal-format msgid "operand 3 should be an unsigned 8-bit value" msgstr "el operando 3 debería ser un valor de 8 bits sin signo" -#: config/arc/arc.c:6771 +#: config/arc/arc.c:6762 #, gcc-internal-format msgid "operand 4 should be an unsigned 8-bit value (0-255)" msgstr "el operando 4 debería ser un valor de 8 bits sin signo (0-255)" -#: config/arc/arc.c:6775 +#: config/arc/arc.c:6766 #, gcc-internal-format msgid "operand 3 should be an unsigned 3-bit value (I0-I7)" msgstr "el operando 3 debería ser un valor de 3 bits sin signo (10-17)" -#: config/arc/arc.c:6782 +#: config/arc/arc.c:6773 #, gcc-internal-format msgid "operand 2 should be an unsigned 3-bit value (subreg 0-7)" msgstr "el operando 2 debería ser un valor de 3 bits sin signo (0-7)" -#: config/arc/arc.c:6785 +#: config/arc/arc.c:6776 #, gcc-internal-format msgid "operand 2 should be an even 3-bit value (subreg 0,2,4,6)" msgstr "el operando 2 debería ser un valor de 3 bits par (subreg 0,2,4,6)" -#: config/arc/arc.c:6832 +#: config/arc/arc.c:6823 #, gcc-internal-format, gfc-internal-format msgid "builtin requires an immediate for operand %d" msgstr "el interno requiere un inmediato para el operando %d" -#: config/arc/arc.c:6837 +#: config/arc/arc.c:6828 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 6 bit unsigned immediate" msgstr "el operando %d debería ser un inmediato sin signo de 6 bits" -#: config/arc/arc.c:6841 +#: config/arc/arc.c:6832 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 8 bit unsigned immediate" msgstr "el operando %d debería ser un inmediato sin signo de 8 bits" -#: config/arc/arc.c:6845 +#: config/arc/arc.c:6836 #, gcc-internal-format, gfc-internal-format msgid "operand %d should be a 3 bit unsigned immediate" msgstr "el operando %d debería ser un inmediato sin signo de 3 bits" -#: config/arc/arc.c:6848 +#: config/arc/arc.c:6839 #, gcc-internal-format, gfc-internal-format msgid "unknown builtin immediate operand type for operand %d" msgstr "" -#: config/arc/arc.c:6899 +#: config/arc/arc.c:6890 #, gcc-internal-format msgid "register number must be a compile-time constant. Try giving higher optimization levels" msgstr "el número de registro debe ser una constante en tiempo de compilación. Pruebe a poner niveles de optimización más altos" -#: config/arc/arc.c:7685 +#: config/arc/arc.c:7747 #, gcc-internal-format msgid "Insn addresses not set after shorten_branches" msgstr "Direcciones de insn no establecidas después de shorten_branches" -#: config/arc/arc.c:7894 +#: config/arc/arc.c:7956 #, gcc-internal-format msgid "insn addresses not freed" msgstr "direcciones de insn no liberadas" -#: config/arc/arc.c:10682 +#: config/arc/arc.c:10670 #, gcc-internal-format msgid "%qE attribute only valid for ARCv2 architecture" msgstr "el atributo %qE solamente es válido para la arquitectura ARCv2" -#: config/arc/arc.c:10690 config/arc/arc.c:10729 +#: config/arc/arc.c:10678 config/arc/arc.c:10717 #, gcc-internal-format msgid "argument of %qE attribute is missing" msgstr "falta el argumento del atributo %qE" -#: config/arc/arc.c:10701 config/arc/arc.c:10740 config/arc/arc.c:10842 +#: config/arc/arc.c:10689 config/arc/arc.c:10728 config/arc/arc.c:10830 #: config/avr/avr.c:9790 #, gcc-internal-format msgid "%qE attribute allows only an integer constant argument" msgstr "el atributo %qE sólo permite una constante entera como argumento" -#: config/arc/arc.c:10721 +#: config/arc/arc.c:10709 #, gcc-internal-format msgid "%qE attribute only valid for ARC EM architecture" msgstr "el atributo %qE solo es válido para la arquitectura ARC EM" -#: config/arc/arc.c:10776 +#: config/arc/arc.c:10764 #, gcc-internal-format msgid "%qE attribute only applies to types" msgstr "el atributo %qE se aplica solamente a tipos" -#: config/arc/arc.c:10782 +#: config/arc/arc.c:10770 #, fuzzy, gcc-internal-format #| msgid "argument of %qE attribute is missing" msgid "argument of %qE attribute ignored" msgstr "falta el argumento del atributo %qE" -#: config/arc/arc.c:10832 config/avr/avr.c:9777 config/bfin/bfin.c:4827 +#: config/arc/arc.c:10820 config/avr/avr.c:9777 config/bfin/bfin.c:4827 #: config/i386/winnt.c:63 config/msp430/msp430.c:2018 #: config/nvptx/nvptx.c:4634 #, gcc-internal-format @@ -27749,174 +27797,174 @@ msgid "%qE attribute only applies to variables" msgstr "el atributo %qE solamente se aplica a variables" -#: config/arm/arm-builtins.c:2370 +#: config/arm/arm-builtins.c:2380 #, gcc-internal-format msgid "this builtin is not supported for this target" msgstr "no se admite este interno para este objetivo" -#: config/arm/arm-builtins.c:2475 +#: config/arm/arm-builtins.c:2485 #, gcc-internal-format msgid "You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use these intrinsics." msgstr "Debe activar las instrucciones NEON (e.g. -mfloat-abi=softfp -mfpu=neon) para usar estos intrínsecos." -#: config/arm/arm-builtins.c:2513 +#: config/arm/arm-builtins.c:2523 #, gcc-internal-format msgid "You must enable VFP instructions to use these intrinsics." msgstr "Debe activar las instrucciones VFP para usar estos intrínsecos." -#: config/arm/arm-builtins.c:2573 +#: config/arm/arm-builtins.c:2583 #, gcc-internal-format msgid "You must enable crypto instructions (e.g. include -mfloat-abi=softfp -mfpu=crypto-neon...) to use these intrinsics." msgstr "Debe activar las instrucciones crypto (e.g. include -mfloat-abi=softfp -mfpu=crypto-neon...) para usar estos intrínsecos." #. @@@ better error message -#: config/arm/arm-builtins.c:2633 config/arm/arm-builtins.c:2737 +#: config/arm/arm-builtins.c:2643 config/arm/arm-builtins.c:2747 #, gcc-internal-format msgid "selector must be an immediate" msgstr "el selector debe ser un inmediato" -#: config/arm/arm-builtins.c:2641 config/arm/arm-builtins.c:2686 -#: config/arm/arm-builtins.c:2744 config/arm/arm-builtins.c:2753 +#: config/arm/arm-builtins.c:2651 config/arm/arm-builtins.c:2696 +#: config/arm/arm-builtins.c:2754 config/arm/arm-builtins.c:2763 #, gcc-internal-format msgid "the range of selector should be in 0 to 7" msgstr "el rango del selector debe estar entre 0 y 7" -#: config/arm/arm-builtins.c:2646 config/arm/arm-builtins.c:2755 +#: config/arm/arm-builtins.c:2656 config/arm/arm-builtins.c:2765 #, gcc-internal-format msgid "the range of selector should be in 0 to 3" msgstr "el rango del selector debe estar entre 0 y 3" -#: config/arm/arm-builtins.c:2651 config/arm/arm-builtins.c:2757 +#: config/arm/arm-builtins.c:2661 config/arm/arm-builtins.c:2767 #, gcc-internal-format msgid "the range of selector should be in 0 to 1" msgstr "el rango del selector debe estar entre 0 y 1" -#: config/arm/arm-builtins.c:2823 +#: config/arm/arm-builtins.c:2833 #, gcc-internal-format msgid "mask must be an immediate" msgstr "la máscara debe ser un inmediato" -#: config/arm/arm-builtins.c:2828 +#: config/arm/arm-builtins.c:2838 #, gcc-internal-format msgid "the range of mask should be in 0 to 255" msgstr "el rango de la máscara debe estar entre 0 y 255" -#: config/arm/arm-builtins.c:3016 +#: config/arm/arm-builtins.c:3026 #, gcc-internal-format msgid "the range of count should be in 0 to 32. please check the intrinsic _mm_rori_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3018 +#: config/arm/arm-builtins.c:3028 #, gcc-internal-format msgid "the range of count should be in 0 to 32. please check the intrinsic _mm_rori_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3020 +#: config/arm/arm-builtins.c:3030 #, gcc-internal-format msgid "the range of count should be in 0 to 32. please check the intrinsic _mm_ror_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3022 +#: config/arm/arm-builtins.c:3032 #, gcc-internal-format msgid "the range of count should be in 0 to 32. please check the intrinsic _mm_ror_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3028 +#: config/arm/arm-builtins.c:3038 #, gcc-internal-format msgid "the range of count should be in 0 to 64. please check the intrinsic _mm_rori_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3030 +#: config/arm/arm-builtins.c:3040 #, gcc-internal-format msgid "the range of count should be in 0 to 64. please check the intrinsic _mm_ror_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3035 +#: config/arm/arm-builtins.c:3045 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srli_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3037 +#: config/arm/arm-builtins.c:3047 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srli_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3039 +#: config/arm/arm-builtins.c:3049 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srli_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3041 +#: config/arm/arm-builtins.c:3051 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_slli_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3043 +#: config/arm/arm-builtins.c:3053 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_slli_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3045 +#: config/arm/arm-builtins.c:3055 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_slli_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3047 +#: config/arm/arm-builtins.c:3057 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srai_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3049 +#: config/arm/arm-builtins.c:3059 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srai_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3051 +#: config/arm/arm-builtins.c:3061 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srai_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3053 +#: config/arm/arm-builtins.c:3063 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srl_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3055 +#: config/arm/arm-builtins.c:3065 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srl_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3057 +#: config/arm/arm-builtins.c:3067 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_srl_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3059 +#: config/arm/arm-builtins.c:3069 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sll_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3061 +#: config/arm/arm-builtins.c:3071 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sll_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3063 +#: config/arm/arm-builtins.c:3073 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sll_si64 in code." msgstr "" -#: config/arm/arm-builtins.c:3065 +#: config/arm/arm-builtins.c:3075 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sra_pi16 in code." msgstr "" -#: config/arm/arm-builtins.c:3067 +#: config/arm/arm-builtins.c:3077 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sra_pi32 in code." msgstr "" -#: config/arm/arm-builtins.c:3069 +#: config/arm/arm-builtins.c:3079 #, gcc-internal-format msgid "the count should be no less than 0. please check the intrinsic _mm_sra_si64 in code." msgstr "" @@ -28824,551 +28872,551 @@ msgid "can%'t set position in PCH file: %m" msgstr "no se puede establecer la posición en el fichero PCH: %m" -#: config/i386/i386.c:3177 +#: config/i386/i386.c:3180 #, gcc-internal-format msgid "wrong argument %qs to option %qs" msgstr "argumento %qs incorrecto para la opción %qs" -#: config/i386/i386.c:3183 +#: config/i386/i386.c:3186 #, gcc-internal-format msgid "size ranges of option %qs should be increasing" msgstr "los rangos de tamaño de la opción %qs deberían ser crecientes" -#: config/i386/i386.c:3193 +#: config/i386/i386.c:3196 #, gcc-internal-format msgid "wrong strategy name %qs specified for option %qs" msgstr "se especificó un nombre de estrategia %qs incorrecto para la opción %qs" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3219 +#: config/i386/i386.c:3222 #, gcc-internal-format msgid "strategy name %qs specified for option %qs not supported for 32-bit code" msgstr "no se admite el nombre de estrategia %qs especificado para la opción %qs para código de 32 bits" -#: config/i386/i386.c:3232 +#: config/i386/i386.c:3235 #, gcc-internal-format msgid "unknown alignment %qs specified for option %qs" msgstr "se especificó una alineación %qs desconocida para la opción %qs" -#: config/i386/i386.c:3242 +#: config/i386/i386.c:3245 #, gcc-internal-format msgid "the max value for the last size range should be -1 for option %qs" msgstr "el valor máximo para el último rango de tamaños debería ser -1 para la opción %qs" -#: config/i386/i386.c:3249 +#: config/i386/i386.c:3252 #, gcc-internal-format msgid "too many size ranges specified in option %qs" msgstr "se especificaron demasiados rangos de tamaños en la opción %qs" -#: config/i386/i386.c:3302 +#: config/i386/i386.c:3305 #, gcc-internal-format, gfc-internal-format msgid "unknown parameter to option -mtune-ctrl: %s" msgstr "parámetro desconocido para la opción -mtune-ctrl: %s" -#: config/i386/i386.c:3726 +#: config/i386/i386.c:3729 #, gcc-internal-format msgid "Intel MCU psABI isn%'t supported in %s mode" msgstr "no se admite Intel MCU psABI en el modo %s" -#: config/i386/i386.c:3775 +#: config/i386/i386.c:3778 #, gcc-internal-format msgid "%<-mtune=x86-64%> is deprecated; use %<-mtune=k8%> or %<-mtune=generic%> instead as appropriate" msgstr "%<-mtune=x86-64%> es obsoleto; use en su lugar %<-mtune=k8%> o %<-mtune=generic%> como sea adecuado" -#: config/i386/i386.c:3777 +#: config/i386/i386.c:3780 #, gcc-internal-format msgid "% is deprecated; use % or % instead as appropriate" msgstr "% es obsoleto; use % o % en su lugar como convenga" #. rep; movq isn't available in 32-bit code. -#: config/i386/i386.c:3804 +#: config/i386/i386.c:3807 #, gcc-internal-format msgid "-mstringop-strategy=rep_8byte not supported for 32-bit code" msgstr "no se admite -mstringop-stategy=rep_8byte para código de 32-bit" -#: config/i386/i386.c:3821 +#: config/i386/i386.c:3824 #, gcc-internal-format msgid "address mode %qs not supported in the %s bit mode" msgstr "el modelo de direcciones %qs no se admite en el modo de bit %s" -#: config/i386/i386.c:3833 +#: config/i386/i386.c:3836 #, gcc-internal-format msgid "-mabi=ms not supported with X32 ABI" msgstr "no se admite -mabi=ms con X32 ABI" -#: config/i386/i386.c:3851 config/i386/i386.c:3860 config/i386/i386.c:3872 -#: config/i386/i386.c:3883 config/i386/i386.c:3894 +#: config/i386/i386.c:3854 config/i386/i386.c:3863 config/i386/i386.c:3875 +#: config/i386/i386.c:3886 config/i386/i386.c:3897 #, gcc-internal-format msgid "code model %qs not supported in the %s bit mode" msgstr "el modelo de código %qs no se admite en el modo de bit %s" -#: config/i386/i386.c:3863 config/i386/i386.c:3875 +#: config/i386/i386.c:3866 config/i386/i386.c:3878 #, gcc-internal-format msgid "code model %qs not supported in x32 mode" msgstr "el modelo de código %qs no se admite en modo x32" -#: config/i386/i386.c:3881 config/i386/i386.c:3890 config/i386/i386.c:5213 +#: config/i386/i386.c:3884 config/i386/i386.c:3893 config/i386/i386.c:5216 #, gcc-internal-format, gfc-internal-format msgid "code model %s does not support PIC mode" msgstr "el modelo de código %s no admite el modo PIC" -#: config/i386/i386.c:3918 +#: config/i386/i386.c:3921 #, gcc-internal-format msgid "-masm=intel not supported in this configuration" msgstr "no se admite -masm=intel en esta configuración" -#: config/i386/i386.c:3923 +#: config/i386/i386.c:3926 #, gcc-internal-format, gfc-internal-format msgid "%i-bit mode not compiled in" msgstr "no está compilado el modo bit-%i" -#: config/i386/i386.c:3932 +#: config/i386/i386.c:3935 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "la CPU % solo se puede usar para el ajuste %<-tune=%>" -#: config/i386/i386.c:3934 +#: config/i386/i386.c:3937 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "la CPU % solo se puede usar para el atributo %" -#: config/i386/i386.c:3941 +#: config/i386/i386.c:3944 #, gcc-internal-format msgid "% CPU can be used only for %<-mtune=%> switch" msgstr "la CPU % solo se puede usar para el ajuste %<-mtune=%>" -#: config/i386/i386.c:3943 +#: config/i386/i386.c:3946 #, gcc-internal-format msgid "% CPU can be used only for % attribute" msgstr "la CPU % solo se puede usar para el atributo %" -#: config/i386/i386.c:3951 config/i386/i386.c:4265 +#: config/i386/i386.c:3954 config/i386/i386.c:4268 #, gcc-internal-format msgid "CPU you selected does not support x86-64 instruction set" msgstr "el CPU que seleccionó no admite el conjunto de instrucciones x86-64" -#: config/i386/i386.c:4197 config/i386/i386.c:4200 +#: config/i386/i386.c:4200 config/i386/i386.c:4203 #, gcc-internal-format msgid "Intel MPX does not support x32" msgstr "Intel MPX no tiene soporte para x32" -#: config/i386/i386.c:4205 +#: config/i386/i386.c:4208 #, gcc-internal-format msgid "bad value (%qs) for %<-march=%> switch" msgstr "valor erróneo (%qs) para la opción %<-march=%>" -#: config/i386/i386.c:4206 +#: config/i386/i386.c:4209 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "valor erróneo (%qs) para el atributo %" -#: config/i386/i386.c:4228 +#: config/i386/i386.c:4231 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s; did you mean %qs?" msgstr "los argumentos válidos para la opción %<-march=%> son: %s; ¿quiso decir %qs?" -#: config/i386/i386.c:4230 +#: config/i386/i386.c:4233 #, gcc-internal-format msgid "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "los argumentos válidos para el atributo % son: %s; ¿qiuso decir %qs?" -#: config/i386/i386.c:4235 +#: config/i386/i386.c:4238 #, gcc-internal-format msgid "valid arguments to %<-march=%> switch are: %s" msgstr "los argumentos válidos para la opción %<-march=%> son: %s" -#: config/i386/i386.c:4236 +#: config/i386/i386.c:4239 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "los argumentos válidos para el atributo % son: %s" -#: config/i386/i386.c:4284 +#: config/i386/i386.c:4287 #, gcc-internal-format msgid "bad value (%qs) for %<-mtune=%> switch" msgstr "valor erróneo (%qs) para la opción %<-mtune=%>" -#: config/i386/i386.c:4285 +#: config/i386/i386.c:4288 #, gcc-internal-format msgid "bad value (%qs) for % attribute" msgstr "valor erróneo (%qs) para el atributo %" -#: config/i386/i386.c:4305 +#: config/i386/i386.c:4308 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s; did you mean %qs?" msgstr "los argumentos válidos para la opción %<-mtune=%> son: %s; ¿quiso decir %qs?" -#: config/i386/i386.c:4307 +#: config/i386/i386.c:4310 #, gcc-internal-format msgid "valid arguments to % attribute are: %s; did you mean %qs?" msgstr "los argumentos válidos para el atributo % son: %s; ¿quiso decir %qs?" -#: config/i386/i386.c:4312 +#: config/i386/i386.c:4315 #, gcc-internal-format msgid "valid arguments to %<-mtune=%> switch are: %s" msgstr "los argumentos válidos para la opción %<-mtune=%> son: %s" -#: config/i386/i386.c:4313 +#: config/i386/i386.c:4316 #, gcc-internal-format msgid "valid arguments to % attribute are: %s" msgstr "los argumentos válidos para el atributo % son: %s" -#: config/i386/i386.c:4379 +#: config/i386/i386.c:4382 #, gcc-internal-format msgid "-mregparm is ignored in 64-bit mode" msgstr "se descarta -mregparm en modo de 64-bit" -#: config/i386/i386.c:4381 +#: config/i386/i386.c:4384 #, gcc-internal-format msgid "-mregparm is ignored for Intel MCU psABI" msgstr "se descarta -mregparm para Intel MCU psABI" -#: config/i386/i386.c:4384 +#: config/i386/i386.c:4387 #, gcc-internal-format, gfc-internal-format msgid "-mregparm=%d is not between 0 and %d" msgstr "-mregparm=%d no está entre 0 y %d" -#: config/i386/i386.c:4417 +#: config/i386/i386.c:4420 #, gcc-internal-format msgid "%<-mrtd%> is ignored in 64bit mode" msgstr "se descarta %<-mrtd%> en el modo de 64bit" -#: config/i386/i386.c:4418 +#: config/i386/i386.c:4421 #, gcc-internal-format msgid "% is ignored in 64bit mode" msgstr "se descarta % en el modo de 64bit" -#: config/i386/i386.c:4497 +#: config/i386/i386.c:4500 #, gcc-internal-format msgid "-mpreferred-stack-boundary is not supported for this target" msgstr "no se admite -mpreferred-stack-boundary en este objetivo" -#: config/i386/i386.c:4500 +#: config/i386/i386.c:4503 #, gcc-internal-format, gfc-internal-format msgid "-mpreferred-stack-boundary=%d is not between %d and %d" msgstr "-mpreferred-stack-boundary=%d no está entre %d y %d" -#: config/i386/i386.c:4523 +#: config/i386/i386.c:4526 #, gcc-internal-format, gfc-internal-format msgid "-mincoming-stack-boundary=%d is not between %d and 12" msgstr "-mincoming-stack-boundary=%d no está entre %d y 12" -#: config/i386/i386.c:4536 +#: config/i386/i386.c:4539 #, gcc-internal-format msgid "-mnop-mcount is not compatible with this target" msgstr "-mnop-mcount no es compatible con este objetivo" -#: config/i386/i386.c:4539 +#: config/i386/i386.c:4542 #, gcc-internal-format msgid "-mnop-mcount is not implemented for -fPIC" msgstr "-mnop-mcount no está implementada para -fPIC" -#: config/i386/i386.c:4545 +#: config/i386/i386.c:4548 #, gcc-internal-format msgid "%<-msseregparm%> used without SSE enabled" msgstr "se usó %<-msseregparm%> sin SSE activado" -#: config/i386/i386.c:4546 +#: config/i386/i386.c:4549 #, gcc-internal-format msgid "% used without SSE enabled" msgstr "se usó % sin SSE activado" -#: config/i386/i386.c:4556 +#: config/i386/i386.c:4559 #, gcc-internal-format msgid "SSE instruction set disabled, using 387 arithmetics" msgstr "el conjunto de instrucciones SSE está desactivado, usando la aritmética 387" -#: config/i386/i386.c:4563 +#: config/i386/i386.c:4566 #, gcc-internal-format msgid "387 instruction set disabled, using SSE arithmetics" msgstr "el conjunto de instrucciones 387 está desactivado, usando la aritmética SSE" -#: config/i386/i386.c:4613 +#: config/i386/i386.c:4616 #, gcc-internal-format msgid "stack probing requires %<-maccumulate-outgoing-args%> for correctness" msgstr "la prueba de pila requiere %<-maccumulate-outgoing-args%> para ser correcta" -#: config/i386/i386.c:4615 +#: config/i386/i386.c:4618 #, gcc-internal-format msgid "stack probing requires % for correctness" msgstr "la prueba de pila requiere % para ser correcta" -#: config/i386/i386.c:4629 +#: config/i386/i386.c:4632 #, gcc-internal-format msgid "fixed ebp register requires %<-maccumulate-outgoing-args%>" msgstr "el registro ebp fijo requiere %<-maccumulate-outgoing-args%>" -#: config/i386/i386.c:4631 +#: config/i386/i386.c:4634 #, gcc-internal-format msgid "fixed ebp register requires %" msgstr "el registro ebp fijo requiere %" -#: config/i386/i386.c:4741 +#: config/i386/i386.c:4744 #, gcc-internal-format msgid "-mfentry isn%'t supported for 32-bit in combination with -fpic" msgstr "-mfentry no se admite para 32-bit en combinación con -fpic" -#: config/i386/i386.c:4744 +#: config/i386/i386.c:4747 #, gcc-internal-format msgid "-mno-fentry isn%'t compatible with SEH" msgstr "-mno-fentry no es compatible con SEH" -#: config/i386/i386.c:4748 +#: config/i386/i386.c:4751 #, gcc-internal-format msgid "-mcall-ms2sysv-xlogues isn%'t currently supported with SEH" msgstr "" -#: config/i386/i386.c:4813 config/powerpcspe/powerpcspe.c:5663 +#: config/i386/i386.c:4816 config/powerpcspe/powerpcspe.c:5663 #, gcc-internal-format, gfc-internal-format msgid "unknown option for -mrecip=%s" msgstr "opción desconocida para -mrecip=%s" -#: config/i386/i386.c:4870 config/powerpcspe/powerpcspe.c:5339 +#: config/i386/i386.c:4873 config/powerpcspe/powerpcspe.c:5339 #, gcc-internal-format msgid "%qs is not a valid number in -mstack-protector-guard-offset=" msgstr "%qs no es un número válido en -mstack-protector-guard-offset=" -#: config/i386/i386.c:4875 config/powerpcspe/powerpcspe.c:5344 +#: config/i386/i386.c:4878 config/powerpcspe/powerpcspe.c:5344 #, gcc-internal-format msgid "%qs is not a valid offset in -mstack-protector-guard-offset=" msgstr "%qs no es un desplazamiento válido en -mstack-protector-guard-offset=" -#: config/i386/i386.c:4907 config/powerpcspe/powerpcspe.c:5356 +#: config/i386/i386.c:4910 config/powerpcspe/powerpcspe.c:5356 #, gcc-internal-format msgid "%qs is not a valid base register in -mstack-protector-guard-reg=" msgstr "%qs no es un registro base válido en -mstack-protector-guard-reg=" -#: config/i386/i386.c:5506 config/i386/i386.c:5553 config/s390/s390.c:15812 +#: config/i386/i386.c:5509 config/i386/i386.c:5556 config/s390/s390.c:15812 #: config/s390/s390.c:15862 config/s390/s390.c:15879 #, gcc-internal-format, gfc-internal-format msgid "attribute(target(\"%s\")) is unknown" msgstr "se desconoce attribute(target(\"%s\"))" -#: config/i386/i386.c:5534 +#: config/i386/i386.c:5537 #, gcc-internal-format, gfc-internal-format msgid "option(\"%s\") was already specified" msgstr "ya se había especificado option(\"%s\")" -#: config/i386/i386.c:5837 +#: config/i386/i386.c:5840 #, gcc-internal-format msgid "interrupt and naked attributes are not compatible" msgstr "interrupción y atributos desnudos no es compatible" -#: config/i386/i386.c:5852 +#: config/i386/i386.c:5855 #, gcc-internal-format msgid "Only DWARF debug format is supported for interrupt service routine." msgstr "Solo se admite el formato de depuración DWARF para la rutina de servicio de interrupciones." -#: config/i386/i386.c:5901 +#: config/i386/i386.c:5904 #, gcc-internal-format msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible" msgstr "%<-mindirect-branch=%s%> y %<-mcmodel=large%> no son compatibles" -#: config/i386/i386.c:5913 +#: config/i386/i386.c:5916 #, gcc-internal-format msgid "%<-mindirect-branch=thunk-extern%>, %<-fcf-protection=branch%> and %<-fcheck-pointer-bounds%> are not compatible" msgstr "%<-mindirect-branch=thunk-extern%>, %<-fcf-protection=branch%> y %<-fcheck-pointer-bounds%> no son compatibles" -#: config/i386/i386.c:5949 +#: config/i386/i386.c:5952 #, gcc-internal-format msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible" msgstr "%<-mfunction-return=%s%> y %<-mcmodel=large%> no son compatibles" -#: config/i386/i386.c:6047 +#: config/i386/i386.c:6050 #, gcc-internal-format, gfc-internal-format msgid "%s instructions aren't allowed in %s service routine" msgstr "las instrucciones %s no se permiten en la rutina de servicio %s" -#: config/i386/i386.c:6051 +#: config/i386/i386.c:6054 #, gcc-internal-format, gfc-internal-format msgid "%s instructions aren't allowed in function with no_caller_saved_registers attribute" msgstr "Las instrucciones %s no están permitidas en funciones con el atributo no_caller_saved_registers" -#: config/i386/i386.c:6465 config/i386/i386.c:6516 +#: config/i386/i386.c:6468 config/i386/i386.c:6519 #, gcc-internal-format msgid "fastcall and regparm attributes are not compatible" msgstr "los atributos fastcall y regparm no son compatibles" -#: config/i386/i386.c:6470 +#: config/i386/i386.c:6473 #, gcc-internal-format msgid "regparam and thiscall attributes are not compatible" msgstr "los atributos regparam y thiscall no son compatibles" -#: config/i386/i386.c:6477 config/i386/i386.c:41444 +#: config/i386/i386.c:6480 config/i386/i386.c:41438 #, gcc-internal-format msgid "%qE attribute requires an integer constant argument" msgstr "el atributo %qE requiere un argumento constante entero" -#: config/i386/i386.c:6483 +#: config/i386/i386.c:6486 #, gcc-internal-format msgid "argument to %qE attribute larger than %d" msgstr "el argumento para el atributo %qE es más grande que %d" -#: config/i386/i386.c:6508 config/i386/i386.c:6551 +#: config/i386/i386.c:6511 config/i386/i386.c:6554 #, gcc-internal-format msgid "fastcall and cdecl attributes are not compatible" msgstr "los atributos fastcall y cdecl no son compatibles" -#: config/i386/i386.c:6512 +#: config/i386/i386.c:6515 #, gcc-internal-format msgid "fastcall and stdcall attributes are not compatible" msgstr "los atributos fastcall y stdcall no son compatibles" -#: config/i386/i386.c:6520 config/i386/i386.c:6569 +#: config/i386/i386.c:6523 config/i386/i386.c:6572 #, gcc-internal-format msgid "fastcall and thiscall attributes are not compatible" msgstr "los atributos fastcall y thiscall no son compatibles" -#: config/i386/i386.c:6530 config/i386/i386.c:6547 +#: config/i386/i386.c:6533 config/i386/i386.c:6550 #, gcc-internal-format msgid "stdcall and cdecl attributes are not compatible" msgstr "los atributos stdcall y cdecl no son compatibles" -#: config/i386/i386.c:6534 +#: config/i386/i386.c:6537 #, gcc-internal-format msgid "stdcall and fastcall attributes are not compatible" msgstr "los atributos stdcall y fastcall no son compatibles" -#: config/i386/i386.c:6538 config/i386/i386.c:6565 +#: config/i386/i386.c:6541 config/i386/i386.c:6568 #, gcc-internal-format msgid "stdcall and thiscall attributes are not compatible" msgstr "los atributos stdcall y thiscall no son compatibles" -#: config/i386/i386.c:6555 config/i386/i386.c:6573 +#: config/i386/i386.c:6558 config/i386/i386.c:6576 #, gcc-internal-format msgid "cdecl and thiscall attributes are not compatible" msgstr "los atributos cdecl y thiscall no son compatibles" -#: config/i386/i386.c:6561 +#: config/i386/i386.c:6564 #, gcc-internal-format msgid "%qE attribute is used for non-class method" msgstr "se usó el atributo %qE para método no de clase" -#: config/i386/i386.c:6805 +#: config/i386/i386.c:6808 #, gcc-internal-format msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled" msgstr "se llama a %qD con el atributo sseregparm sin activar SSE/SSE2" -#: config/i386/i386.c:6808 +#: config/i386/i386.c:6811 #, gcc-internal-format msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled" msgstr "se llama a %qT con el atributo sseregparm sin activar SSE/SSE2" -#: config/i386/i386.c:7126 +#: config/i386/i386.c:7129 #, gcc-internal-format msgid "X32 does not support ms_abi attribute" msgstr "X32 no admite el atributo ms_abi" -#: config/i386/i386.c:7160 +#: config/i386/i386.c:7163 #, gcc-internal-format msgid "ms_hook_prologue is not compatible with nested function" msgstr "ms_hook_prologue no es compatible con la función anidada" -#: config/i386/i386.c:7502 +#: config/i386/i386.c:7505 #, gcc-internal-format msgid "AVX512F vector argument without AVX512F enabled changes the ABI" msgstr "el argumento de vector AVX512F sin AVX512F activado cambia la ABI" -#: config/i386/i386.c:7508 +#: config/i386/i386.c:7511 #, gcc-internal-format msgid "AVX512F vector return without AVX512F enabled changes the ABI" msgstr "el retorno de vector AVX512F sin AVX512F activado cambia la ABI" -#: config/i386/i386.c:7522 +#: config/i386/i386.c:7525 #, gcc-internal-format msgid "AVX vector argument without AVX enabled changes the ABI" msgstr "el argumento de vector AVX sin AVX activado cambia la ABI" -#: config/i386/i386.c:7528 +#: config/i386/i386.c:7531 #, gcc-internal-format msgid "AVX vector return without AVX enabled changes the ABI" msgstr "el retorno de vector AVX sin AVX activado cambia la ABI" -#: config/i386/i386.c:7544 +#: config/i386/i386.c:7547 #, gcc-internal-format msgid "SSE vector argument without SSE enabled changes the ABI" msgstr "el argumento de vector SSE sin SSE activado cambia la ABI" -#: config/i386/i386.c:7550 +#: config/i386/i386.c:7553 #, gcc-internal-format msgid "SSE vector return without SSE enabled changes the ABI" msgstr "la devolución de vector SSE sin SSE activado cambia la ABI" -#: config/i386/i386.c:7566 +#: config/i386/i386.c:7569 #, gcc-internal-format msgid "MMX vector argument without MMX enabled changes the ABI" msgstr "el argumento de vector MMX sin MMX activado cambia la ABI" -#: config/i386/i386.c:7572 +#: config/i386/i386.c:7575 #, gcc-internal-format msgid "MMX vector return without MMX enabled changes the ABI" msgstr "la devolución de vector MMX sin MMX activado cambia la ABI" -#: config/i386/i386.c:7754 +#: config/i386/i386.c:7757 #, gcc-internal-format msgid "the ABI of passing struct with a flexible array member has changed in GCC 4.4" msgstr "la ABI para pasar un struct con un miembro de matriz flexible cambió en GCC 4.4" -#: config/i386/i386.c:7871 +#: config/i386/i386.c:7874 #, gcc-internal-format msgid "the ABI of passing union with long double has changed in GCC 4.4" msgstr "la ABI para pasar un union con long double cambió en GCC 4.4" -#: config/i386/i386.c:7989 +#: config/i386/i386.c:7992 #, gcc-internal-format msgid "the ABI of passing structure with complex float member has changed in GCC 4.4" msgstr "la ABI para pasar una estructura con un miembro de coma flotante compleja cambió en GCC 4.4" -#: config/i386/i386.c:8152 +#: config/i386/i386.c:8155 #, gcc-internal-format msgid "SSE register return with SSE disabled" msgstr "se devuelve el registro SSE con SSE desactivado" -#: config/i386/i386.c:8158 +#: config/i386/i386.c:8161 #, gcc-internal-format msgid "SSE register argument with SSE disabled" msgstr "argumento de registro SSE con SSE desactivado" -#: config/i386/i386.c:8174 +#: config/i386/i386.c:8177 #, gcc-internal-format msgid "x87 register return with x87 disabled" msgstr "se devuelve el registro x87 con x87 desactivado" -#: config/i386/i386.c:8471 config/i386/i386.c:8750 config/i386/i386.c:9276 +#: config/i386/i386.c:8474 config/i386/i386.c:8753 config/i386/i386.c:9279 #, gcc-internal-format msgid "calling %qD with SSE calling convention without SSE/SSE2 enabled" msgstr "se llama a %qD con el convenio de llamadas SSE sin activar SSE/SSE2" -#: config/i386/i386.c:8473 config/i386/i386.c:8752 config/i386/i386.c:9278 +#: config/i386/i386.c:8476 config/i386/i386.c:8755 config/i386/i386.c:9281 #, gcc-internal-format msgid "this is a GCC bug that can be worked around by adding attribute used to function called" msgstr "esto es un error de GCC que se puede sortear añadiendo el atributo usado a la función llamada" -#: config/i386/i386.c:9178 +#: config/i386/i386.c:9181 #, gcc-internal-format, gfc-internal-format msgid "The ABI for passing parameters with %d-byte alignment has changed in GCC 4.6" msgstr "La ABI para pasar parámetros con alineación de %d-bytes cambió en GCC 4.6" -#: config/i386/i386.c:11601 +#: config/i386/i386.c:11604 #, gcc-internal-format, gfc-internal-format msgid "-mcall-ms2sysv-xlogues is not compatible with %s" msgstr "-mcall-ms2sysv-xlogues no es compatible con %s" -#: config/i386/i386.c:13593 +#: config/i386/i386.c:13596 #, gcc-internal-format msgid "ms_hook_prologue attribute isn%'t compatible with -mfentry for 32-bit" msgstr "el atributo ms_hook_prologue no es compatible con -mfentry para 32-bit" -#: config/i386/i386.c:13683 +#: config/i386/i386.c:13686 #, gcc-internal-format msgid "Dynamic Realign Argument Pointer (DRAP) not supported in interrupt service routine. This may be worked around by avoiding functions with aggregate return." msgstr "No se admite Puntero de Argumento de Realineamiento Dinámico (DRAP) en la rutina de servicio de interrupciones. Esto puede sortearse evitando funciones con retorno agregado." -#: config/i386/i386.c:14970 +#: config/i386/i386.c:14973 #, gcc-internal-format msgid "-fsplit-stack does not support fastcall with nested function" msgstr "-fsplit-stack no admite fastcall con funciones anidadas" -#: config/i386/i386.c:14990 +#: config/i386/i386.c:14993 #, gcc-internal-format msgid "-fsplit-stack does not support 2 register parameters for a nested function" msgstr "-fsplit-stack no admite 2 parámetros de registro para una función anidada" @@ -29375,311 +29423,311 @@ #. FIXME: We could make this work by pushing a register #. around the addition and comparison. -#: config/i386/i386.c:15001 +#: config/i386/i386.c:15004 #, gcc-internal-format msgid "-fsplit-stack does not support 3 register parameters" msgstr "-fsplit-stack no admite 3 parámetros de registro" -#: config/i386/i386.c:17939 +#: config/i386/i386.c:17942 #, gcc-internal-format msgid "'V' modifier on non-integer register" msgstr "modificador 'V' en registro no entero" -#: config/i386/i386.c:17950 config/i386/i386.c:17964 +#: config/i386/i386.c:17953 config/i386/i386.c:17967 #, gcc-internal-format msgid "unsupported size for integer register" msgstr "no se admite el tamaño para registro de enteros" -#: config/i386/i386.c:17996 +#: config/i386/i386.c:17999 #, gcc-internal-format msgid "extended registers have no high halves" msgstr "los registros extendidos no tiene mitades superiores" -#: config/i386/i386.c:18011 +#: config/i386/i386.c:18014 #, gcc-internal-format msgid "unsupported operand size for extended register" msgstr "no se admite el tamaño de operando para el registro extendido" -#: config/i386/i386.c:18202 +#: config/i386/i386.c:18205 #, gcc-internal-format msgid "non-integer operand used with operand code 'z'" msgstr "se usó un operando que no es entero con el código de operando 'z'" -#: config/i386/i386.c:28467 +#: config/i386/i386.c:28470 #, gcc-internal-format msgid "interrupt service routine can't be called directly" msgstr "no se puede llamar directamente a la rutina de servicio de interrupciones" -#: config/i386/i386.c:29995 +#: config/i386/i386.c:29998 #, gcc-internal-format msgid "empty class %qT parameter passing ABI changes in -fabi-version=12 (GCC 8)" msgstr "" -#: config/i386/i386.c:32435 +#: config/i386/i386.c:32438 #, gcc-internal-format msgid "No dispatcher found for the versioning attributes" msgstr "No se ha encontrado despachador para los atributos de versión" -#: config/i386/i386.c:32485 +#: config/i386/i386.c:32488 #, gcc-internal-format, gfc-internal-format msgid "No dispatcher found for %s" msgstr "No se encontró despachador para %s" -#: config/i386/i386.c:32495 +#: config/i386/i386.c:32498 #, gcc-internal-format, gfc-internal-format msgid "No dispatcher found for the versioning attributes : %s" msgstr "No se encontró despachador para los atributos de versión : %s" -#: config/i386/i386.c:32657 +#: config/i386/i386.c:32660 #, gcc-internal-format msgid "Function versions cannot be marked as gnu_inline, bodies have to be generated" msgstr "Las versiones de funciones no pueden marcarse como gnu_inline; hay que generar cuerpos" -#: config/i386/i386.c:32662 config/i386/i386.c:32938 -#: config/rs6000/rs6000.c:37850 +#: config/i386/i386.c:32665 config/i386/i386.c:32941 +#: config/rs6000/rs6000.c:37906 #, gcc-internal-format msgid "Virtual function multiversioning not supported" msgstr "No se admiten versiones múltiples de funciones virtuales" -#: config/i386/i386.c:32795 config/rs6000/rs6000.c:37607 +#: config/i386/i386.c:32798 config/rs6000/rs6000.c:37663 #, gcc-internal-format msgid "multiversioning needs ifunc which is not supported on this target" msgstr "el versionado múltiple necesita ifunc, que no se admite en este objetivo" -#: config/i386/i386.c:33207 +#: config/i386/i386.c:33210 #, gcc-internal-format msgid "Parameter to builtin must be a string constant or literal" msgstr "El parámetro para la función interna debe ser una cadena constante o literal" -#: config/i386/i386.c:33232 config/i386/i386.c:33282 +#: config/i386/i386.c:33235 config/i386/i386.c:33285 #, gcc-internal-format, gfc-internal-format msgid "Parameter to builtin not valid: %s" msgstr "El parámetro para la función interna no es válido: %s" -#: config/i386/i386.c:33975 config/i386/i386.c:35415 +#: config/i386/i386.c:33978 config/i386/i386.c:35418 #, gcc-internal-format msgid "the last argument must be a 2-bit immediate" msgstr "el tercer argumento debe ser un inmediato de 2-bit" -#: config/i386/i386.c:34370 +#: config/i386/i386.c:34373 #, gcc-internal-format msgid "the fifth argument must be an 8-bit immediate" msgstr "el quinto argumento debe ser un inmediato de 8-bit" -#: config/i386/i386.c:34465 +#: config/i386/i386.c:34468 #, gcc-internal-format msgid "the third argument must be an 8-bit immediate" msgstr "el tercer argumento debe ser un inmediato de 8-bit" -#: config/i386/i386.c:35346 +#: config/i386/i386.c:35349 #, gcc-internal-format msgid "the last argument must be an 1-bit immediate" msgstr "el último argumento debe ser un inmediato de 1-bit" -#: config/i386/i386.c:35361 +#: config/i386/i386.c:35364 #, gcc-internal-format msgid "the last argument must be a 3-bit immediate" msgstr "el último argumento debe ser un inmediato de 3-bit" -#: config/i386/i386.c:35394 +#: config/i386/i386.c:35397 #, gcc-internal-format msgid "the last argument must be a 4-bit immediate" msgstr "el último argumento debe ser un inmediato de 4-bit" -#: config/i386/i386.c:35434 +#: config/i386/i386.c:35437 #, gcc-internal-format msgid "the last argument must be a 1-bit immediate" msgstr "el último argumento debe ser un inmediato de 1-bit" -#: config/i386/i386.c:35447 +#: config/i386/i386.c:35450 #, gcc-internal-format msgid "the last argument must be a 5-bit immediate" msgstr "el tercer argumento debe ser un inmediato de 5-bit" -#: config/i386/i386.c:35457 +#: config/i386/i386.c:35460 #, gcc-internal-format msgid "the next to last argument must be an 8-bit immediate" msgstr "el penúltimo argumento debe ser un inmediato de 8-bit" -#: config/i386/i386.c:35462 config/i386/i386.c:36249 +#: config/i386/i386.c:35465 config/i386/i386.c:36252 #, gcc-internal-format msgid "the last argument must be an 8-bit immediate" msgstr "el último argumento debe ser un inmediato de 8-bit" -#: config/i386/i386.c:35596 +#: config/i386/i386.c:35599 #, gcc-internal-format msgid "the third argument must be comparison constant" msgstr "el tercer argumento debe ser una constante de comparación" -#: config/i386/i386.c:35601 +#: config/i386/i386.c:35604 #, gcc-internal-format msgid "incorrect comparison mode" msgstr "modo de comparación incorrecto" -#: config/i386/i386.c:35607 config/i386/i386.c:35814 +#: config/i386/i386.c:35610 config/i386/i386.c:35817 #, gcc-internal-format msgid "incorrect rounding operand" msgstr "operando de redondeo incorrecto" -#: config/i386/i386.c:35796 +#: config/i386/i386.c:35799 #, gcc-internal-format msgid "the immediate argument must be a 4-bit immediate" msgstr "el argumento inmediato debe ser un inmediato de 4-bit" -#: config/i386/i386.c:35802 +#: config/i386/i386.c:35805 #, gcc-internal-format msgid "the immediate argument must be a 5-bit immediate" msgstr "el argumento inmediato debe ser un inmediato de 5-bit" -#: config/i386/i386.c:35805 +#: config/i386/i386.c:35808 #, gcc-internal-format msgid "the immediate argument must be an 8-bit immediate" msgstr "el argumento inmediato debe ser un inmediato de 8-bit" -#: config/i386/i386.c:36247 +#: config/i386/i386.c:36250 #, gcc-internal-format msgid "the last argument must be a 32-bit immediate" msgstr "el último argumento debe ser un inmediato de 32-bit" -#: config/i386/i386.c:36329 config/powerpcspe/powerpcspe.c:16219 -#: config/rs6000/rs6000.c:15304 +#: config/i386/i386.c:36332 config/powerpcspe/powerpcspe.c:16219 +#: config/rs6000/rs6000.c:15348 #, gcc-internal-format msgid "selector must be an integer constant in the range 0..%wi" msgstr "el selector debe ser una constante entera en el rango 0..%wi" -#: config/i386/i386.c:36539 +#: config/i386/i386.c:36542 #, gcc-internal-format msgid "%qE needs unknown isa option" msgstr "%qE necesita la opción isa desconocida" -#: config/i386/i386.c:36543 +#: config/i386/i386.c:36546 #, gcc-internal-format msgid "%qE needs isa option %s" msgstr "%qE necesita la opción isa %s" -#: config/i386/i386.c:37381 +#: config/i386/i386.c:37375 #, gcc-internal-format msgid "last argument must be an immediate" msgstr "el último argumento debe ser un inmediato" -#: config/i386/i386.c:38108 config/i386/i386.c:38290 +#: config/i386/i386.c:38102 config/i386/i386.c:38284 #, gcc-internal-format msgid "the last argument must be scale 1, 2, 4, 8" msgstr "el último argumento debe ser un escalar 1, 2, 4, 8" -#: config/i386/i386.c:38343 +#: config/i386/i386.c:38337 #, gcc-internal-format msgid "the forth argument must be scale 1, 2, 4, 8" msgstr "el argumento delantero debe ser un escalar 1, 2, 4, 8" -#: config/i386/i386.c:38349 +#: config/i386/i386.c:38343 #, gcc-internal-format msgid "incorrect hint operand" msgstr "operando de pista incorrecto" -#: config/i386/i386.c:38368 +#: config/i386/i386.c:38362 #, gcc-internal-format msgid "the xabort's argument must be an 8-bit immediate" msgstr "el argumento de xabort debe ser un inmediato de 8-bit" -#: config/i386/i386.c:41431 +#: config/i386/i386.c:41425 #, gcc-internal-format msgid "%qE attribute only available for 32-bit" msgstr "el atributo %qE solamente está disponible para 64-bit" -#: config/i386/i386.c:41452 +#: config/i386/i386.c:41446 #, gcc-internal-format msgid "argument to %qE attribute is neither zero, nor one" msgstr "el argumento del atributo %qE no es cero ni uno" -#: config/i386/i386.c:41485 config/i386/i386.c:41494 +#: config/i386/i386.c:41479 config/i386/i386.c:41488 #, gcc-internal-format msgid "ms_abi and sysv_abi attributes are not compatible" msgstr "los atributos ms_abi y sysv_abi no son compatibles" -#: config/i386/i386.c:41530 config/powerpcspe/powerpcspe.c:35868 -#: config/rs6000/rs6000.c:33065 +#: config/i386/i386.c:41524 config/powerpcspe/powerpcspe.c:35868 +#: config/rs6000/rs6000.c:33121 #, gcc-internal-format msgid "%qE incompatible attribute ignored" msgstr "se descarta el atributo incompatible %qE" -#: config/i386/i386.c:41555 config/i386/i386.c:41577 config/ia64/ia64.c:815 +#: config/i386/i386.c:41549 config/i386/i386.c:41571 config/ia64/ia64.c:815 #: config/s390/s390.c:1153 #, gcc-internal-format msgid "%qE attribute requires a string constant argument" msgstr "el atributo %qE requiere una constante entera como argumento" -#: config/i386/i386.c:41565 config/i386/i386.c:41587 config/s390/s390.c:1182 +#: config/i386/i386.c:41559 config/i386/i386.c:41581 config/s390/s390.c:1182 #, gcc-internal-format msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)" msgstr "el argumento del atributo %qE no es (keep|thunk|thunk-inline|thunk-extern)" -#: config/i386/i386.c:41619 +#: config/i386/i386.c:41613 #, gcc-internal-format msgid "interrupt service routine should have a pointer as the first argument" msgstr "la rutina de servicio de interrupciones debería tener un puntero como primer argumento" -#: config/i386/i386.c:41626 +#: config/i386/i386.c:41620 #, gcc-internal-format, gfc-internal-format msgid "interrupt service routine should have unsigned %sint as the second argument" msgstr "la rutina de atención de interrupciones debería tener como segundo argumento un unsigned %sint" -#: config/i386/i386.c:41636 +#: config/i386/i386.c:41630 #, gcc-internal-format msgid "interrupt service routine can only have a pointer argument and an optional integer argument" msgstr "la rutina de servicio de interrupciones solo puede tener un argumento puntero y un argumento entero opcional" -#: config/i386/i386.c:41639 +#: config/i386/i386.c:41633 #, gcc-internal-format msgid "interrupt service routine can't have non-void return value" msgstr "ls rutina de servicio de interrupción no puede tener valor de retorno que no sea void" -#: config/i386/i386.c:44676 +#: config/i386/i386.c:44670 #, gcc-internal-format msgid "alternatives not allowed in asm flag output" msgstr "no se permiten alternativas en la salida del indicador asm" -#: config/i386/i386.c:44740 +#: config/i386/i386.c:44734 #, gcc-internal-format msgid "unknown asm flag output %qs" msgstr "salida del indicador asm %qs desconocida" -#: config/i386/i386.c:44769 +#: config/i386/i386.c:44763 #, gcc-internal-format msgid "invalid type for asm flag output" msgstr "tipo no válido para la salida del indicador asm" -#: config/i386/i386.c:50634 +#: config/i386/i386.c:50628 #, gcc-internal-format msgid "unknown architecture specific memory model" msgstr "modelo de memoria específico de la arquitectura desconocido" -#: config/i386/i386.c:50641 +#: config/i386/i386.c:50635 #, gcc-internal-format msgid "HLE_ACQUIRE not used with ACQUIRE or stronger memory model" msgstr "HLE_ACQUIRE no se usa con ACQUIRE o modelos de memoria más fuertes" -#: config/i386/i386.c:50647 +#: config/i386/i386.c:50641 #, gcc-internal-format msgid "HLE_RELEASE not used with RELEASE or stronger memory model" msgstr "HLE_RELEASE no se usa con RELEASE o modelos de memoria más fuertes" -#: config/i386/i386.c:50671 config/i386/i386.c:50787 +#: config/i386/i386.c:50665 config/i386/i386.c:50781 #, gcc-internal-format, gfc-internal-format msgid "unsupported simdlen %d" msgstr "simdlen %d no admitido" -#: config/i386/i386.c:50690 +#: config/i386/i386.c:50684 #, gcc-internal-format msgid "unsupported return type %qT for simd" msgstr "no se admite el tipo de retorno %qT para simd" -#: config/i386/i386.c:50712 +#: config/i386/i386.c:50706 #, gcc-internal-format msgid "unsupported argument type %qT for simd" msgstr "no se admite el tipo de argumento %qT para simd" -#: config/i386/i386.c:51033 +#: config/i386/i386.c:51027 #, gcc-internal-format msgid "Pointer Checker requires MPX support on this target. Use -mmpx options to enable MPX." msgstr "El Comprobador de Punteros requiere suporte MPX en este objetivo. Utilice las opciones -mmpx para activar MPX." @@ -29900,7 +29948,7 @@ msgstr "interrupt_thread sólo está disponible en fido" #: config/m68k/m68k.c:1128 config/powerpcspe/powerpcspe.c:28512 -#: config/rs6000/rs6000.c:25791 +#: config/rs6000/rs6000.c:25868 #, gcc-internal-format msgid "stack limit expression is not supported" msgstr "no se admite la expresión del límite de la pila" @@ -30475,58 +30523,58 @@ #. Trampoline is not supported on reduced-set registers yet. #: config/nds32/nds32.c:2327 config/nds32/nds32.c:2381 -#: config/nds32/nds32.c:3127 config/nds32/nds32.c:3201 -#: config/nds32/nds32.c:3216 config/nds32/nds32.c:3222 -#: config/nds32/nds32.c:3284 config/nds32/nds32.c:3290 -#: config/nds32/nds32.c:3322 +#: config/nds32/nds32.c:3128 config/nds32/nds32.c:3202 +#: config/nds32/nds32.c:3217 config/nds32/nds32.c:3223 +#: config/nds32/nds32.c:3285 config/nds32/nds32.c:3291 +#: config/nds32/nds32.c:3323 #, gcc-internal-format msgid "a nested function is not supported for reduced registers" msgstr "no se admiten funciones anidadas para registros reducidos" #. The enum index value for array size is out of range. -#: config/nds32/nds32.c:3025 +#: config/nds32/nds32.c:3026 #, gcc-internal-format msgid "intrinsic register index is out of range" msgstr "el índice de registro intrínseco está fuera de rango" -#: config/nds32/nds32.c:3041 config/nds32/nds32.c:3048 -#: config/nds32/nds32.c:3055 config/nds32/nds32.c:3062 -#: config/nds32/nds32.c:3069 +#: config/nds32/nds32.c:3042 config/nds32/nds32.c:3049 +#: config/nds32/nds32.c:3056 config/nds32/nds32.c:3063 +#: config/nds32/nds32.c:3070 #, gcc-internal-format msgid "CCTL intrinsic function subtype out of range!" msgstr "el subtipo de la función intrínseca CCTLestá fuera de rango" -#: config/nds32/nds32.c:3508 +#: config/nds32/nds32.c:3509 #, gcc-internal-format msgid "invalid id value for interrupt/exception attribute" msgstr "valor de id no válido para atributo de interrupción/excepción" -#: config/nds32/nds32.c:3536 +#: config/nds32/nds32.c:3537 #, gcc-internal-format msgid "invalid id value for reset attribute" msgstr "valor de id no válido atributo reset" -#: config/nds32/nds32.c:3552 +#: config/nds32/nds32.c:3553 #, gcc-internal-format msgid "invalid nmi function for reset attribute" msgstr "función nmi no válida para atributo reset" -#: config/nds32/nds32.c:3565 +#: config/nds32/nds32.c:3566 #, gcc-internal-format msgid "invalid warm function for reset attribute" msgstr "función warm no válida para atributo reset" -#: config/nds32/nds32.c:3638 +#: config/nds32/nds32.c:3639 #, gcc-internal-format msgid "Disable FPU ISA, the ABI option must be enable '-mfloat-abi=soft'" msgstr "desactiva ISA de FPU, la opción de ABI debe ser activar '-mfloat-abit=soft'" -#: config/nds32/nds32.c:3641 +#: config/nds32/nds32.c:3642 #, gcc-internal-format msgid "'-mabi=2fp+' option only support when FPU available, must be enable '-mext-fpu-sp' or '-mext-fpu-dp'" msgstr "" -#: config/nds32/nds32.c:3647 +#: config/nds32/nds32.c:3648 #, gcc-internal-format msgid "position-independent code not supported" msgstr "no se admite código independiente de posición" @@ -30861,12 +30909,12 @@ msgid "junk at end of #pragma longcall" msgstr "basura al final de #pragma longcall" -#: config/powerpcspe/powerpcspe-c.c:5661 config/rs6000/rs6000-c.c:6154 +#: config/powerpcspe/powerpcspe-c.c:5661 config/rs6000/rs6000-c.c:6152 #, gcc-internal-format msgid "vec_lvsl is deprecated for little endian; use assignment for unaligned loads and stores" msgstr "vec_lvsl está obsoleta para little endian; utilize asignación para cargas y almacenajes no alineados" -#: config/powerpcspe/powerpcspe-c.c:5665 config/rs6000/rs6000-c.c:6158 +#: config/powerpcspe/powerpcspe-c.c:5665 config/rs6000/rs6000-c.c:6156 #, gcc-internal-format msgid "vec_lvsr is deprecated for little endian; use assignment for unaligned loads and stores" msgstr "vec_lvsr está obsoleta para little endian; utilize asignación para cargas y almacenajes no alineados" @@ -30916,7 +30964,7 @@ msgid "vec_insert only accepts 3 arguments" msgstr "vec_insert sólo acepta 3 argumentos" -#: config/powerpcspe/powerpcspe-c.c:6468 config/rs6000/rs6000-c.c:6868 +#: config/powerpcspe/powerpcspe-c.c:6468 config/rs6000/rs6000-c.c:6866 #, gcc-internal-format msgid "passing arg %d of %qE discards qualifiers from pointer target type" msgstr "el paso del argumento %d de %qE descarta los calificadores del tipo del destino del puntero" @@ -31001,7 +31049,7 @@ msgid "target attribute or pragma changes SPE ABI" msgstr "el atributo o pragma target cabia la ABI SPE" -#: config/powerpcspe/powerpcspe.c:4351 config/rs6000/rs6000.c:4223 +#: config/powerpcspe/powerpcspe.c:4351 config/rs6000/rs6000.c:4243 #, gcc-internal-format msgid "AltiVec not supported in this target" msgstr "no se admite AltiVec en este objetivo" @@ -31147,7 +31195,7 @@ msgid "-mvsx-small-integer requires -mpower8-vector, -mupper-regs-di, and -mdirect-move" msgstr "" -#: config/powerpcspe/powerpcspe.c:4959 config/rs6000/rs6000.c:4601 +#: config/powerpcspe/powerpcspe.c:4959 config/rs6000/rs6000.c:4628 #, gcc-internal-format msgid "target attribute or pragma changes long double size" msgstr "el atributo o pragma target cambia el tamaño de double long" @@ -31188,22 +31236,22 @@ msgstr "tipo de ABI de biblioteca de vectorización desconocida (%s) para la opción -mveclibabi=" #: config/powerpcspe/powerpcspe.c:5140 config/powerpcspe/powerpcspe.c:5155 -#: config/rs6000/rs6000.c:4766 config/rs6000/rs6000.c:4781 +#: config/rs6000/rs6000.c:4791 config/rs6000/rs6000.c:4806 #, gcc-internal-format msgid "target attribute or pragma changes AltiVec ABI" msgstr "el atributo o pragma target cambia la ABI Altivec" -#: config/powerpcspe/powerpcspe.c:5168 config/rs6000/rs6000.c:4794 +#: config/powerpcspe/powerpcspe.c:5168 config/rs6000/rs6000.c:4819 #, gcc-internal-format msgid "target attribute or pragma changes darwin64 ABI" msgstr "el atributo o pragma target cambia la ABI darwin64" -#: config/powerpcspe/powerpcspe.c:5234 config/rs6000/rs6000.c:4828 +#: config/powerpcspe/powerpcspe.c:5234 config/rs6000/rs6000.c:4853 #, gcc-internal-format msgid "target attribute or pragma changes single precision floating point" msgstr "el atributo o pragma target cambia la coma flotante de precisión sencilla" -#: config/powerpcspe/powerpcspe.c:5237 config/rs6000/rs6000.c:4831 +#: config/powerpcspe/powerpcspe.c:5237 config/rs6000/rs6000.c:4856 #, gcc-internal-format msgid "target attribute or pragma changes double precision floating point" msgstr "el atributo o pragma target cambia la coma flotante de precisión doble" @@ -31213,12 +31261,12 @@ msgid "-mstack-protector-guard=tls needs a valid base register" msgstr "-mstack-protector-guard==tls necesita un registro bae válido" -#: config/powerpcspe/powerpcspe.c:8415 config/rs6000/rs6000.c:7925 +#: config/powerpcspe/powerpcspe.c:8415 config/rs6000/rs6000.c:7950 #, gcc-internal-format, gfc-internal-format msgid "the layout of aggregates containing vectors with %d-byte alignment has changed in GCC 5" msgstr "la disposición de los agregados que contienen vectores con alineamiento de %d bytes cambió en GCC 5" -#: config/powerpcspe/powerpcspe.c:11834 config/rs6000/rs6000.c:11237 +#: config/powerpcspe/powerpcspe.c:11834 config/rs6000/rs6000.c:11269 #, gcc-internal-format msgid "GCC vector returned by reference: non-standard ABI extension with no compatibility guarantee" msgstr "Se devolvió un vector GCC por referencia: extensión de ABI no estándar sin garantía de compatibilidad" @@ -31228,7 +31276,7 @@ msgid "cannot return value in vector register because altivec instructions are disabled, use -maltivec to enable them" msgstr "no se puede devolver un valor en el registro vector porque las instrucciones altivec están desactivadas, use -maltivec para activarlas" -#: config/powerpcspe/powerpcspe.c:12193 config/rs6000/rs6000.c:11595 +#: config/powerpcspe/powerpcspe.c:12193 config/rs6000/rs6000.c:11633 #, gcc-internal-format, gfc-internal-format msgid "the ABI of passing aggregates with %d-byte alignment has changed in GCC 5" msgstr "la ABI para pasar agregados con alineación de %d bytes cambió en GCC 5" @@ -31238,12 +31286,12 @@ msgid "cannot pass argument in vector register because altivec instructions are disabled, use -maltivec to enable them" msgstr "no se puede pasar argumentos en el registro vector porque las instrucciones altivec están desactivadas, use -maltivec para activarlas" -#: config/powerpcspe/powerpcspe.c:13311 config/rs6000/rs6000.c:12604 +#: config/powerpcspe/powerpcspe.c:13311 config/rs6000/rs6000.c:12648 #, gcc-internal-format msgid "the ABI of passing homogeneous float aggregates has changed in GCC 5" msgstr "la ABI para pasar agregados flotantes homogéneos cambió en GCC 5" -#: config/powerpcspe/powerpcspe.c:13486 config/rs6000/rs6000.c:12779 +#: config/powerpcspe/powerpcspe.c:13486 config/rs6000/rs6000.c:12823 #, gcc-internal-format msgid "GCC vector passed by reference: non-standard ABI extension with no compatibility guarantee" msgstr "vector GCC pasado por referencia: extensión ABI que no es estándar sin garantía de compatibilidad" @@ -31253,28 +31301,28 @@ msgid "internal error: builtin function %s already processed" msgstr "error interno: la función interna %s ya se procesó" -#: config/powerpcspe/powerpcspe.c:14785 config/rs6000/rs6000.c:13971 +#: config/powerpcspe/powerpcspe.c:14785 config/rs6000/rs6000.c:14015 #, gcc-internal-format msgid "argument 1 must be an 8-bit field value" msgstr "el argumento 1 debe ser un valor de un campo de 8 bits" -#: config/powerpcspe/powerpcspe.c:14831 config/rs6000/rs6000.c:14015 +#: config/powerpcspe/powerpcspe.c:14831 config/rs6000/rs6000.c:14059 #, gcc-internal-format msgid "argument 1 must be a 5-bit signed literal" msgstr "el argumento 1 debe ser un literal con signo de 5 bits" #: config/powerpcspe/powerpcspe.c:14934 config/powerpcspe/powerpcspe.c:16803 -#: config/rs6000/rs6000.c:14101 +#: config/rs6000/rs6000.c:14145 #, gcc-internal-format msgid "argument 2 must be a 5-bit unsigned literal" msgstr "el argumento 2 debe ser un literal sin signo de 5 bits" -#: config/powerpcspe/powerpcspe.c:14952 config/rs6000/rs6000.c:14119 +#: config/powerpcspe/powerpcspe.c:14952 config/rs6000/rs6000.c:14163 #, gcc-internal-format msgid "argument 1 must be a 6-bit unsigned literal" msgstr "el argumento 1 debe ser un literal sin signo de 6 bits" -#: config/powerpcspe/powerpcspe.c:14966 config/rs6000/rs6000.c:14135 +#: config/powerpcspe/powerpcspe.c:14966 config/rs6000/rs6000.c:14179 #, gcc-internal-format msgid "argument 2 must be a 7-bit unsigned literal" msgstr "el argumento 2 debe ser un literal sin signo de 7 bits" @@ -31294,12 +31342,12 @@ msgid "builtin %s is only valid in 64-bit mode" msgstr "el interno %s solo es válido en modo de 64 bits" -#: config/powerpcspe/powerpcspe.c:15599 config/rs6000/rs6000.c:14791 +#: config/powerpcspe/powerpcspe.c:15599 config/rs6000/rs6000.c:14835 #, gcc-internal-format, gfc-internal-format msgid "argument %d must be an unsigned literal" msgstr "el argumento %d debe ser un literal sin signo" -#: config/powerpcspe/powerpcspe.c:15601 config/rs6000/rs6000.c:14793 +#: config/powerpcspe/powerpcspe.c:15601 config/rs6000/rs6000.c:14837 #, gcc-internal-format, gfc-internal-format msgid "argument %d is an unsigned literal that is out of range" msgstr "el argumento %d es un literal sin signo fuera de rango" @@ -31321,53 +31369,53 @@ msgid "hwcap %s is an invalid argument to builtin %s" msgstr "la hwcap %s es un argumento no válido para el interno %s" -#: config/powerpcspe/powerpcspe.c:15860 config/rs6000/rs6000.c:15065 +#: config/powerpcspe/powerpcspe.c:15860 config/rs6000/rs6000.c:15109 #, gcc-internal-format msgid "argument 3 must be a 4-bit unsigned literal" msgstr "el argumento 3 debe ser una literal sin signo de 4-bit" -#: config/powerpcspe/powerpcspe.c:15885 config/rs6000/rs6000.c:15090 +#: config/powerpcspe/powerpcspe.c:15885 config/rs6000/rs6000.c:15134 #, gcc-internal-format msgid "argument 3 must be a 2-bit unsigned literal" msgstr "el argumento 3 debe ser una literal sin signo de 2-bit" -#: config/powerpcspe/powerpcspe.c:15905 config/rs6000/rs6000.c:15110 +#: config/powerpcspe/powerpcspe.c:15905 config/rs6000/rs6000.c:15154 #, gcc-internal-format msgid "argument 3 must be a 1-bit unsigned literal" msgstr "el argumento 3 debe ser una literal sin signo de 1-bit" -#: config/powerpcspe/powerpcspe.c:15917 config/rs6000/rs6000.c:15122 +#: config/powerpcspe/powerpcspe.c:15917 config/rs6000/rs6000.c:15166 #, gcc-internal-format msgid "argument 1 must be 0 or 2" msgstr "el argumento 1 debe ser 0 o 2" -#: config/powerpcspe/powerpcspe.c:15929 config/rs6000/rs6000.c:15134 +#: config/powerpcspe/powerpcspe.c:15929 config/rs6000/rs6000.c:15178 #, gcc-internal-format msgid "argument 1 must be a 1-bit unsigned literal" msgstr "el argumento 1 debe ser un literal sin signo de 1 bit" -#: config/powerpcspe/powerpcspe.c:15943 config/rs6000/rs6000.c:15148 +#: config/powerpcspe/powerpcspe.c:15943 config/rs6000/rs6000.c:15192 #, gcc-internal-format msgid "argument 2 must be a 6-bit unsigned literal" msgstr "el argumento 2 debe ser un literal sin signo de 6 bits" -#: config/powerpcspe/powerpcspe.c:15955 config/rs6000/rs6000.c:15160 +#: config/powerpcspe/powerpcspe.c:15955 config/rs6000/rs6000.c:15204 #, gcc-internal-format msgid "argument 2 must be 0 or 1" msgstr "el argumento 2 debe ser 0 ó 1" -#: config/powerpcspe/powerpcspe.c:15963 config/rs6000/rs6000.c:15168 +#: config/powerpcspe/powerpcspe.c:15963 config/rs6000/rs6000.c:15212 #, gcc-internal-format msgid "argument 3 must be in the range 0..15" msgstr "el argumento d de debe estar dentro del rango 0..15" -#: config/powerpcspe/powerpcspe.c:16152 config/rs6000/rs6000.c:15237 -#: config/rs6000/rs6000.c:15569 +#: config/powerpcspe/powerpcspe.c:16152 config/rs6000/rs6000.c:15281 +#: config/rs6000/rs6000.c:15613 #, gcc-internal-format msgid "argument to %qs must be a 2-bit unsigned literal" msgstr "el argumento para %qs debe ser una literal sin signo de 2-bit" -#: config/powerpcspe/powerpcspe.c:16309 config/rs6000/rs6000.c:15394 +#: config/powerpcspe/powerpcspe.c:16309 config/rs6000/rs6000.c:15438 #, gcc-internal-format msgid "unresolved overload for Altivec builtin %qF" msgstr "sobrecarga sin resolver para el interno Altivec %qF" @@ -31493,7 +31541,7 @@ msgid "internal error: builtin function %s, argument %d had unexpected argument type %s" msgstr "error interno: función interna %s, el argumento %d tiene el tipo de argumento inesperado %s" -#: config/powerpcspe/powerpcspe.c:28481 config/rs6000/rs6000.c:25758 +#: config/powerpcspe/powerpcspe.c:28481 config/rs6000/rs6000.c:25835 #, gcc-internal-format msgid "stack frame too large" msgstr "marco de pila demasiado grande" @@ -31503,12 +31551,12 @@ msgid "-fsplit-stack uses register r29" msgstr "-fsplit-stack utiliza el registro r29" -#: config/powerpcspe/powerpcspe.c:32265 config/rs6000/rs6000.c:29459 +#: config/powerpcspe/powerpcspe.c:32265 config/rs6000/rs6000.c:29536 #, gcc-internal-format msgid "Stack frame larger than 2G is not supported for -fsplit-stack" msgstr "No se admite un marco de pila mayor de 2G con -fsplit-stack" -#: config/powerpcspe/powerpcspe.c:33252 config/rs6000/rs6000.c:30447 +#: config/powerpcspe/powerpcspe.c:33252 config/rs6000/rs6000.c:30524 #, gcc-internal-format msgid "no profiling of 64-bit code for this ABI" msgstr "no hay análisis de perfil del código de 64-bit para esta ABI" @@ -31518,22 +31566,22 @@ msgid "You cannot take the address of a nested function if you use the -mno-pointers-to-nested-functions option." msgstr "No se puede tomar la dirección de una función anindada si se usa la opción -mno-pointers-to-nested-functions." -#: config/powerpcspe/powerpcspe.c:35637 config/rs6000/rs6000.c:32830 +#: config/powerpcspe/powerpcspe.c:35637 config/rs6000/rs6000.c:32907 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "el uso de % en tipos AltiVec es no válido" -#: config/powerpcspe/powerpcspe.c:35639 config/rs6000/rs6000.c:32832 +#: config/powerpcspe/powerpcspe.c:35639 config/rs6000/rs6000.c:32909 #, gcc-internal-format msgid "use of boolean types in AltiVec types is invalid" msgstr "el uso de tipos booleanos en tipos AltiVec es no válido" -#: config/powerpcspe/powerpcspe.c:35641 config/rs6000/rs6000.c:32834 +#: config/powerpcspe/powerpcspe.c:35641 config/rs6000/rs6000.c:32911 #, gcc-internal-format msgid "use of % in AltiVec types is invalid" msgstr "el uso de % en tipos AltiVec es no válido" -#: config/powerpcspe/powerpcspe.c:35643 config/rs6000/rs6000.c:32836 +#: config/powerpcspe/powerpcspe.c:35643 config/rs6000/rs6000.c:32913 #, gcc-internal-format msgid "use of decimal floating point types in AltiVec types is invalid" msgstr "el uso de tipos de coma flotante decimal en tipos AltiVec es no válido" @@ -31543,7 +31591,7 @@ msgid "use of % in AltiVec types is invalid for 64-bit code without -mvsx" msgstr "el uso de % en tipos AltiVec es no válido para código de 64 bit sin -mvsx" -#: config/powerpcspe/powerpcspe.c:35652 config/rs6000/rs6000.c:32845 +#: config/powerpcspe/powerpcspe.c:35652 config/rs6000/rs6000.c:32922 #, gcc-internal-format msgid "use of % in AltiVec types is deprecated; use %" msgstr "el uso de % en tipos AltiVec es obsoleto; use %" @@ -32085,71 +32133,71 @@ "Please use an explicit cpu name. Valid cpu names are: %s" msgstr "" -#: config/rs6000/rs6000-c.c:6168 config/rs6000/rs6000-c.c:6219 -#: config/rs6000/rs6000-c.c:6489 config/rs6000/rs6000-c.c:6555 -#: config/rs6000/rs6000-c.c:6916 config/rs6000/rs6000-c.c:6963 +#: config/rs6000/rs6000-c.c:6166 config/rs6000/rs6000-c.c:6217 +#: config/rs6000/rs6000-c.c:6487 config/rs6000/rs6000-c.c:6553 +#: config/rs6000/rs6000-c.c:6914 config/rs6000/rs6000-c.c:6961 #, gcc-internal-format msgid "builtin %qs only accepts 2 arguments" msgstr "el interno %qs sólo acepta 2 argumentos" -#: config/rs6000/rs6000-c.c:6292 config/rs6000/rs6000-c.c:6375 -#: config/rs6000/rs6000-c.c:6736 +#: config/rs6000/rs6000-c.c:6290 config/rs6000/rs6000-c.c:6373 +#: config/rs6000/rs6000-c.c:6734 #, gcc-internal-format msgid "builtin %qs only accepts 3 arguments" msgstr "el interno %qs solo acepta 3 argumentos" -#: config/rs6000/rs6000-c.c:6484 +#: config/rs6000/rs6000-c.c:6482 #, gcc-internal-format msgid "builtin %qs only accepts 1 argument" msgstr "el interno %qs solo acepta 1 argumento" -#: config/rs6000/rs6000-c.c:7054 +#: config/rs6000/rs6000-c.c:7052 #, gcc-internal-format msgid "builtin %qs requires builtin %qs" msgstr "la función interna %qs requiere la función interna %qs" -#: config/rs6000/rs6000-c.c:7058 +#: config/rs6000/rs6000-c.c:7056 #, gcc-internal-format msgid "builtin function %qs not supported in this compiler configuration" msgstr "no se admite la función interna %s en esta configuración del compilador" -#: config/rs6000/rs6000-c.c:7068 +#: config/rs6000/rs6000-c.c:7066 #, gcc-internal-format msgid "invalid parameter combination for AltiVec intrinsic %qs" msgstr "combinación de parámetros no válida para el intrínseco AltiVec %qs" -#: config/rs6000/rs6000.c:3754 config/rs6000/rs6000.c:3757 -#: config/rs6000/rs6000.c:3760 +#: config/rs6000/rs6000.c:3772 config/rs6000/rs6000.c:3775 +#: config/rs6000/rs6000.c:3778 #, gcc-internal-format msgid "%qs requires %qs or %qs" msgstr "%qs requiere %qs o %qs" -#: config/rs6000/rs6000.c:3861 +#: config/rs6000/rs6000.c:3879 #, gcc-internal-format msgid "%qs requires PowerPC64 architecture, enabling" msgstr "%qs requiere la arquitectura PowerPC64, activando" -#: config/rs6000/rs6000.c:4037 +#: config/rs6000/rs6000.c:4057 #, gcc-internal-format msgid "%qs command-line option is deprecated" msgstr "la opción de la línea de órdenes %qs es obsoleta" -#: config/rs6000/rs6000.c:4048 +#: config/rs6000/rs6000.c:4068 #, gcc-internal-format msgid "%qs is not supported for 64-bit Darwin; it is incompatible with the installed C and C++ libraries" msgstr "no se admite %qs para Darwin de 64 bits; es incompatible con las bibliotecas C y C++ instaladas" -#: config/rs6000/rs6000.c:4147 +#: config/rs6000/rs6000.c:4167 #, gcc-internal-format msgid "will not generate %qs instructions because assembler lacks %qs support" msgstr "no generará instrucciones %qsporque el ensamblador no admite %qs" -#: config/rs6000/rs6000.c:4240 +#: config/rs6000/rs6000.c:4260 #, gcc-internal-format msgid "%qs is not supported on little endian systems" msgstr "no se admite %qs en sistemas little endian" -#: config/rs6000/rs6000.c:4333 +#: config/rs6000/rs6000.c:4353 #, gcc-internal-format msgid "power9 target option is incompatible with %<%s=%> for less than power9" msgstr "la opción del objetivo power9 es incompatible con %<%s= para menor que power9" @@ -32156,7 +32204,7 @@ #. Enforce that none of the ISA_3_0_MASKS_SERVER flags #. were explicitly cleared. -#: config/rs6000/rs6000.c:4341 +#: config/rs6000/rs6000.c:4361 #, gcc-internal-format msgid "%qs incompatible with explicitly disabled options" msgstr "%qs es incompatible con las opciones desactivadas explícitamente" @@ -32165,240 +32213,241 @@ #. error messages. However, if users have managed to select #. power9-fusion without selecting power8-fusion, they #. already know about undocumented flags. -#: config/rs6000/rs6000.c:4366 config/rs6000/rs6000.c:4373 -#: config/rs6000/rs6000.c:4380 config/rs6000/rs6000.c:4388 -#: config/rs6000/rs6000.c:4407 config/rs6000/rs6000.c:4464 -#: config/rs6000/rs6000.c:4468 config/rs6000/rs6000.c:4485 -#: config/rs6000/rs6000.c:4538 config/rs6000/rs6000.c:4565 -#: config/rs6000/rs6000.c:4580 config/rs6000/rs6000.c:4588 -#: config/rs6000/rs6000.c:4684 +#: config/rs6000/rs6000.c:4386 config/rs6000/rs6000.c:4393 +#: config/rs6000/rs6000.c:4400 config/rs6000/rs6000.c:4408 +#: config/rs6000/rs6000.c:4427 config/rs6000/rs6000.c:4484 +#: config/rs6000/rs6000.c:4488 config/rs6000/rs6000.c:4505 +#: config/rs6000/rs6000.c:4558 config/rs6000/rs6000.c:4585 +#: config/rs6000/rs6000.c:4600 config/rs6000/rs6000.c:4608 +#: config/rs6000/rs6000.c:4709 #, gcc-internal-format msgid "%qs requires %qs" msgstr "%qs requiere %qs" -#: config/rs6000/rs6000.c:4625 +#: config/rs6000/rs6000.c:4650 #, gcc-internal-format msgid "Using IEEE extended precision long double" msgstr "Se usa long double de precisión extendida de IEEE" -#: config/rs6000/rs6000.c:4627 +#: config/rs6000/rs6000.c:4652 #, gcc-internal-format msgid "Using IBM extended precision long double" msgstr "Se usa long double de precisión extendida de IBM" -#: config/rs6000/rs6000.c:4644 +#: config/rs6000/rs6000.c:4669 #, gcc-internal-format msgid "%qs requires VSX support" msgstr "%qs necesita soporte para VSX" -#: config/rs6000/rs6000.c:4653 +#: config/rs6000/rs6000.c:4678 #, gcc-internal-format msgid "The -mfloat128 option may not be fully supported" msgstr "Es posible que la opción -mfloat128 no funcione perfectamente" -#: config/rs6000/rs6000.c:4676 +#: config/rs6000/rs6000.c:4701 #, gcc-internal-format msgid "%qs requires full ISA 3.0 support" msgstr "%qs requiere suporte pleno de ISA 3.0" -#: config/rs6000/rs6000.c:4743 +#: config/rs6000/rs6000.c:4768 #, gcc-internal-format msgid "unknown vectorization library ABI type (%qs) for %qs switch" msgstr "tipo de ABI de biblioteca de vectorización desconocida (%qs) para la opción %qs" -#: config/rs6000/rs6000.c:4930 +#: config/rs6000/rs6000.c:4955 #, gcc-internal-format msgid "%qs is not a valid number in %qs" msgstr "%qs no es un número válido en %qs" -#: config/rs6000/rs6000.c:4935 +#: config/rs6000/rs6000.c:4960 #, gcc-internal-format msgid "%qs is not a valid offset in %qs" msgstr "%qs no es un desplazamiento válido en %qs" -#: config/rs6000/rs6000.c:4947 +#: config/rs6000/rs6000.c:4972 #, gcc-internal-format msgid "%qs is not a valid base register in %qs" msgstr "%qs no es un registro base válido en %qs" -#: config/rs6000/rs6000.c:4955 +#: config/rs6000/rs6000.c:4980 #, gcc-internal-format msgid "%qs needs a valid base register" msgstr "%qs necesita un registro bae válido" -#: config/rs6000/rs6000.c:5253 +#: config/rs6000/rs6000.c:5278 #, gcc-internal-format msgid "unknown option for %<%s=%s%>" msgstr "opción desconocida para %<%s=%s%>" -#: config/rs6000/rs6000.c:5290 +#: config/rs6000/rs6000.c:5315 #, gcc-internal-format msgid "%qs is deprecated and not recommended in any circumstances" msgstr "%qs está obsoleto y no está recomendada bajo ninguna circunstancia" -#: config/rs6000/rs6000.c:11401 +#: config/rs6000/rs6000.c:11439 #, gcc-internal-format msgid "cannot return value in vector register because altivec instructions are disabled, use %qs to enable them" msgstr "no se puede devolver un valor en el registro vector porque las instrucciones altivec están desactivadas, use %qs para activarlas" -#: config/rs6000/rs6000.c:11862 +#: config/rs6000/rs6000.c:11906 #, gcc-internal-format msgid "cannot pass argument in vector register because altivec instructions are disabled, use %qs to enable them" msgstr "no se puede pasar argumentos en el registro vector porque las instrucciones altivec están desactivadas, use %qs para activarlas" -#: config/rs6000/rs6000.c:13572 +#: config/rs6000/rs6000.c:13616 #, gcc-internal-format msgid "internal error: builtin function %qs already processed" msgstr "error interno: la función interna %qs ya se procesó" -#: config/rs6000/rs6000.c:14150 +#: config/rs6000/rs6000.c:14194 #, gcc-internal-format msgid "argument 2 must be a 1-bit unsigned literal" msgstr "el argumento 2 debe ser un literal sin signo de 1 bit" -#: config/rs6000/rs6000.c:14189 +#: config/rs6000/rs6000.c:14233 #, gcc-internal-format msgid "argument 1 of %qs must be a constant" msgstr "el argumento 1 de %qs debe ser constante" -#: config/rs6000/rs6000.c:14247 config/rs6000/rs6000.c:15898 +#: config/rs6000/rs6000.c:14291 config/rs6000/rs6000.c:15942 #, gcc-internal-format msgid "argument 1 of %qs is out of range" msgstr "el argumento 1 de %qs está fuera de rango" -#: config/rs6000/rs6000.c:14742 +#: config/rs6000/rs6000.c:14786 #, gcc-internal-format msgid "builtin %qs is only valid in 64-bit mode" msgstr "el interno %qs solo es válido en el modo de 64 bits" -#: config/rs6000/rs6000.c:14939 +#: config/rs6000/rs6000.c:14983 #, gcc-internal-format msgid "builtin %qs only accepts a string argument" msgstr "el interno %qs sólo acepta un argumento de cadena" #. Invalid CPU argument. -#: config/rs6000/rs6000.c:14958 +#: config/rs6000/rs6000.c:15002 #, gcc-internal-format msgid "cpu %qs is an invalid argument to builtin %qs" msgstr "la cpu %qs es un argumento no válido para el interno %qs" #. Invalid HWCAP argument. -#: config/rs6000/rs6000.c:14986 +#: config/rs6000/rs6000.c:15030 #, gcc-internal-format msgid "%s %qs is an invalid argument to builtin %qs" msgstr "%s %qs es un argumento no válido para el interno %qs" -#: config/rs6000/rs6000.c:15012 +#: config/rs6000/rs6000.c:15056 #, gcc-internal-format msgid "builtin %qs needs GLIBC (2.23 and newer) that exports hardware capability bits" msgstr "" -#: config/rs6000/rs6000.c:15616 +#: config/rs6000/rs6000.c:15660 #, gcc-internal-format msgid "second argument to %qs must be 0..12" msgstr "el segundo argumento de %qs debe estar en 0..12" -#: config/rs6000/rs6000.c:15631 +#: config/rs6000/rs6000.c:15675 #, gcc-internal-format msgid "third argument to %qs must be 0..12" msgstr "el tercer argumento de %qs debe estar en 0..12" -#: config/rs6000/rs6000.c:15850 +#: config/rs6000/rs6000.c:15894 #, gcc-internal-format, gfc-internal-format msgid "argument 1 of %s must be a constant" msgstr "el argumento 1 de %s debe ser una constante" -#: config/rs6000/rs6000.c:15932 +#: config/rs6000/rs6000.c:15976 #, gcc-internal-format msgid "builtin function %qs is only valid for the cell processor" msgstr "la función interna %qs solo es válida para el procesador cell" -#: config/rs6000/rs6000.c:15934 config/rs6000/rs6000.c:15936 -#: config/rs6000/rs6000.c:15938 config/rs6000/rs6000.c:15940 -#: config/rs6000/rs6000.c:15946 config/rs6000/rs6000.c:15948 -#: config/rs6000/rs6000.c:15955 config/rs6000/rs6000.c:15962 -#: config/rs6000/rs6000.c:15969 config/rs6000/rs6000.c:15975 +#: config/rs6000/rs6000.c:15978 config/rs6000/rs6000.c:15980 +#: config/rs6000/rs6000.c:15982 config/rs6000/rs6000.c:15984 +#: config/rs6000/rs6000.c:15990 config/rs6000/rs6000.c:15992 +#: config/rs6000/rs6000.c:15999 config/rs6000/rs6000.c:16006 +#: config/rs6000/rs6000.c:16011 config/rs6000/rs6000.c:16014 +#: config/rs6000/rs6000.c:16018 config/rs6000/rs6000.c:16024 #, gcc-internal-format msgid "builtin function %qs requires the %qs option" msgstr "la función interna %qs requiere la opción %qs" -#: config/rs6000/rs6000.c:15943 config/rs6000/rs6000.c:15952 -#: config/rs6000/rs6000.c:15959 config/rs6000/rs6000.c:15966 +#: config/rs6000/rs6000.c:15987 config/rs6000/rs6000.c:15996 +#: config/rs6000/rs6000.c:16003 #, gcc-internal-format msgid "builtin function %qs requires the %qs and %qs options" msgstr "la función interna %qs requiere las opciones %qs y %qs" -#: config/rs6000/rs6000.c:15972 +#: config/rs6000/rs6000.c:16021 #, gcc-internal-format msgid "builtin function %qs requires ISA 3.0 IEEE 128-bit floating point" msgstr "la función interna %qs requiere requiere coma flotante de 128 bits del IEEE de ISA 3.0" -#: config/rs6000/rs6000.c:15978 +#: config/rs6000/rs6000.c:16027 #, gcc-internal-format msgid "builtin function %qs requires the %qs (or newer), and %qs or %qs options" msgstr "la función interna %qs requiere las opciones %qs (o más reciente), y %qs o %qs" -#: config/rs6000/rs6000.c:15982 +#: config/rs6000/rs6000.c:16031 #, gcc-internal-format msgid "builtin function %qs is not supported with the current options" msgstr "la función interna %qs no se admite con las opciones actuales" -#: config/rs6000/rs6000.c:18218 +#: config/rs6000/rs6000.c:18290 #, gcc-internal-format msgid "internal error: builtin function %qs had an unexpected return type %qs" msgstr "error interno: la función interna %qs tiene un tipo de devolución inesperado %qs" -#: config/rs6000/rs6000.c:18235 +#: config/rs6000/rs6000.c:18307 #, gcc-internal-format msgid "internal error: builtin function %qs, argument %d had unexpected argument type %qs" msgstr "error interno: función interna %qs, el argumento %d tiene el tipo de argumento inesperado %qs" -#: config/rs6000/rs6000.c:29451 +#: config/rs6000/rs6000.c:29528 #, gcc-internal-format msgid "%qs uses register r29" msgstr "%qs usa el registro r29" -#: config/rs6000/rs6000.c:32748 +#: config/rs6000/rs6000.c:32825 #, gcc-internal-format msgid "you cannot take the address of a nested function if you use the %qs option" msgstr "no se puede tomar la dirección de una función anindada si se usa la opción %qs" -#: config/rs6000/rs6000.c:32842 +#: config/rs6000/rs6000.c:32919 #, gcc-internal-format msgid "use of % in AltiVec types is invalid for 64-bit code without %qs" msgstr "el uso de % en tipos AltiVec no es válido para código de 64 bits sin %qs" -#: config/rs6000/rs6000.c:32850 +#: config/rs6000/rs6000.c:32927 #, gcc-internal-format msgid "use of % in AltiVec types is invalid without %qs" msgstr "el uso de % en tipos AltiVec no es válido sin %qs" -#: config/rs6000/rs6000.c:32853 +#: config/rs6000/rs6000.c:32930 #, gcc-internal-format msgid "use of % in AltiVec types is invalid without %qs" msgstr "el uso de % en tipos AltiVec no es válido sin %qs" -#: config/rs6000/rs6000.c:36876 +#: config/rs6000/rs6000.c:36932 #, gcc-internal-format msgid "invalid cpu %qs for %s%qs%s" msgstr "cpu %qs no válida para %s%qs%s" -#: config/rs6000/rs6000.c:36879 +#: config/rs6000/rs6000.c:36935 #, gcc-internal-format msgid "%s%qs%s is not allowed" msgstr "%s%qs%s no está permitido" -#: config/rs6000/rs6000.c:36881 +#: config/rs6000/rs6000.c:36937 #, gcc-internal-format msgid "%s%qs%s is invalid" msgstr "%s%qs%s no es válido" -#: config/rs6000/rs6000.c:37416 +#: config/rs6000/rs6000.c:37472 #, gcc-internal-format msgid "%<-mno-%s%> turns off %<-m%s%>" msgstr "%<-mno=%s%> anula %<-m%s%>" -#: config/rs6000/rs6000.c:37575 +#: config/rs6000/rs6000.c:37631 #, gcc-internal-format msgid "target_clones attribute needs GLIBC (2.23 and newer) that exports hardware capability bits" msgstr "" @@ -33138,49 +33187,49 @@ msgid "subprogram %q+F not marked Inline" msgstr "el subprograma %q+F no está marcado Inline" -#: ada/gcc-interface/trans.c:6404 +#: ada/gcc-interface/trans.c:6401 #, gcc-internal-format msgid "out-of-bounds access may be optimized away" msgstr "" -#: ada/gcc-interface/trans.c:6406 +#: ada/gcc-interface/trans.c:6403 #, fuzzy, gcc-internal-format #| msgid "% must be in loop" msgid "containing loop" msgstr "% debe estar dentro de un bucle" -#: ada/gcc-interface/utils.c:3887 +#: ada/gcc-interface/utils.c:3890 #, gcc-internal-format msgid "invalid element type for attribute %qs" msgstr "tipo de elemento no válido para el atributo %qs" -#: ada/gcc-interface/utils.c:3911 +#: ada/gcc-interface/utils.c:3914 #, gcc-internal-format msgid "number of components of vector not a power of two" msgstr "el número de componentes de vector no es una potencia de dos" -#: ada/gcc-interface/utils.c:6037 ada/gcc-interface/utils.c:6215 -#: ada/gcc-interface/utils.c:6322 +#: ada/gcc-interface/utils.c:6043 ada/gcc-interface/utils.c:6220 +#: ada/gcc-interface/utils.c:6327 #, gcc-internal-format msgid "%qs attribute ignored" msgstr "se descarta el atributo %qs" -#: ada/gcc-interface/utils.c:6158 +#: ada/gcc-interface/utils.c:6164 #, gcc-internal-format msgid "%qs attribute requires prototypes with named arguments" msgstr "el atributo %qs requiere prototipos con argumentos nombrados" -#: ada/gcc-interface/utils.c:6167 +#: ada/gcc-interface/utils.c:6173 #, gcc-internal-format msgid "%qs attribute only applies to variadic functions" msgstr "el atributo %qs se aplica solamente a funciones variadic" -#: ada/gcc-interface/utils.c:6282 +#: ada/gcc-interface/utils.c:6287 #, gcc-internal-format msgid "%qE attribute has no effect" msgstr "el atributo %qE no tiene efecto" -#: ada/gcc-interface/utils.c:6406 +#: ada/gcc-interface/utils.c:6411 #, gcc-internal-format msgid "attribute %qs applies to array types only" msgstr "el atributo %qs solamente se aplica a tipos de matriz" @@ -33195,7 +33244,7 @@ #. an unprototyped function, it is compile-time undefined; #. making it a constraint in that case was rejected in #. DR#252. -#: c/c-convert.c:101 c/c-typeck.c:2175 c/c-typeck.c:6507 c/c-typeck.c:12138 +#: c/c-convert.c:101 c/c-typeck.c:2175 c/c-typeck.c:6512 c/c-typeck.c:12143 #: cp/typeck.c:2027 cp/typeck.c:7977 cp/typeck.c:8742 #, gcc-internal-format msgid "void value not ignored as it ought to be" @@ -33256,7 +33305,7 @@ msgid "type of array %q+D completed incompatibly with implicit initialization" msgstr "el tipo de la matriz %q+D se completó de forma incompatible con la inicialización implícita" -#: c/c-decl.c:1567 c/c-decl.c:6701 c/c-decl.c:7574 c/c-decl.c:8381 +#: c/c-decl.c:1567 c/c-decl.c:6721 c/c-decl.c:7594 c/c-decl.c:8401 #, gcc-internal-format msgid "originally defined here" msgstr "se definió originalmente aquí" @@ -33661,16 +33710,11 @@ #. C99 6.7.5.2p4 #. A function definition isn't function prototype scope C99 6.2.1p4. #. C99 6.7.5.2p4 -#: c/c-decl.c:4548 c/c-decl.c:7147 +#: c/c-decl.c:4548 c/c-decl.c:7167 #, gcc-internal-format msgid "%<[*]%> not allowed in other than function prototype scope" msgstr "no se permite %<[*]%> en otro lugar que no sea el ámbido de prototipo de función" -#: c/c-decl.c:4635 cp/decl2.c:1520 -#, gcc-internal-format -msgid "%q+D in declare target directive does not have mappable type" -msgstr "" - #: c/c-decl.c:4693 #, gcc-internal-format msgid "%q+D is usually a function" @@ -33696,7 +33740,7 @@ #. of VLAs themselves count as VLAs, it does not make #. sense to permit them to be initialized given that #. ordinary VLAs may not be initialized. -#: c/c-decl.c:4732 c/c-decl.c:4747 c/c-typeck.c:7630 +#: c/c-decl.c:4732 c/c-decl.c:4747 c/c-typeck.c:7635 #, gcc-internal-format msgid "variable-sized object may not be initialized" msgstr "un objeto de tamaño variable puede no ser inicializado" @@ -33756,203 +33800,208 @@ msgid "uninitialized const %qD is invalid in C++" msgstr "const %qD sin inicializar es no válida en C++" -#: c/c-decl.c:5268 +#: c/c-decl.c:5224 cp/decl.c:7318 #, gcc-internal-format +msgid "%q+D in declare target directive does not have mappable type" +msgstr "" + +#: c/c-decl.c:5288 +#, gcc-internal-format msgid "ISO C forbids forward parameter declarations" msgstr "ISO C prohíbe declaraciones adelantadas de parámetros" -#: c/c-decl.c:5371 +#: c/c-decl.c:5391 #, gcc-internal-format msgid "defining a type in a compound literal is invalid in C++" msgstr "definir un tipo en una literal compuesta es no válido en C++" -#: c/c-decl.c:5425 c/c-decl.c:5440 +#: c/c-decl.c:5445 c/c-decl.c:5460 #, gcc-internal-format msgid "bit-field %qs width not an integer constant" msgstr "la anchura del campo de bits %qs no es una constante entera" -#: c/c-decl.c:5435 +#: c/c-decl.c:5455 #, gcc-internal-format msgid "bit-field %qs width not an integer constant expression" msgstr "la anchura del campo de bits %qs no es una expresión constante entera" -#: c/c-decl.c:5446 +#: c/c-decl.c:5466 #, gcc-internal-format msgid "negative width in bit-field %qs" msgstr "anchura negativa en el campo de bit %qs" -#: c/c-decl.c:5451 +#: c/c-decl.c:5471 #, gcc-internal-format msgid "zero width for bit-field %qs" msgstr "anchura cero para el campo de bits %qs" -#: c/c-decl.c:5461 +#: c/c-decl.c:5481 #, gcc-internal-format msgid "bit-field %qs has invalid type" msgstr "el campo de bits %qs tiene un tipo no válido" -#: c/c-decl.c:5467 +#: c/c-decl.c:5487 #, gcc-internal-format msgid "cannot declare bit-field %qs with % type" msgstr "no se puede declarar el campo de bits %qs con un tipo %" -#: c/c-decl.c:5478 +#: c/c-decl.c:5498 #, gcc-internal-format msgid "type of bit-field %qs is a GCC extension" msgstr "el tipo de campo de bits %qs es una extensión de GCC" -#: c/c-decl.c:5484 +#: c/c-decl.c:5504 #, gcc-internal-format msgid "width of %qs exceeds its type" msgstr "la anchura de %qs excede su tipo" -#: c/c-decl.c:5497 +#: c/c-decl.c:5517 #, gcc-internal-format msgid "%qs is narrower than values of its type" msgstr "%qs es más estrecho que los valores de su tipo" -#: c/c-decl.c:5512 +#: c/c-decl.c:5532 #, gcc-internal-format msgid "ISO C90 forbids array %qE whose size can%'t be evaluated" msgstr "ISO C90 prohíbe la matriz %qE cuyo tamaño no se puede evaluar" -#: c/c-decl.c:5515 +#: c/c-decl.c:5535 #, gcc-internal-format msgid "ISO C90 forbids array whose size can%'t be evaluated" msgstr "ISO C90 prohíbe la matriz cuyo tamaño no se puede evaluar" -#: c/c-decl.c:5522 +#: c/c-decl.c:5542 #, gcc-internal-format msgid "ISO C90 forbids variable length array %qE" msgstr "ISO C90 prohíbe la matriz de longitud variable %qE" -#: c/c-decl.c:5524 +#: c/c-decl.c:5544 #, gcc-internal-format msgid "ISO C90 forbids variable length array" msgstr "ISO C90 prohíbe la matriz de longitud variable" -#: c/c-decl.c:5733 c/c-decl.c:6107 c/c-decl.c:6117 +#: c/c-decl.c:5753 c/c-decl.c:6127 c/c-decl.c:6137 #, gcc-internal-format msgid "variably modified %qE at file scope" msgstr "%qE variablemente modificado en el ámbito del fichero" -#: c/c-decl.c:5735 +#: c/c-decl.c:5755 #, gcc-internal-format msgid "variably modified field at file scope" msgstr "campo variablemente modificado en el ámbito del fichero" -#: c/c-decl.c:5755 +#: c/c-decl.c:5775 #, gcc-internal-format msgid "type defaults to % in declaration of %qE" msgstr "el tipo de dato por defecto es % en la declaración de %qE" -#: c/c-decl.c:5759 +#: c/c-decl.c:5779 #, gcc-internal-format msgid "type defaults to % in type name" msgstr "el tipo de dato por defecto es % en el nombre de tipo" -#: c/c-decl.c:5791 +#: c/c-decl.c:5811 #, gcc-internal-format msgid "duplicate %" msgstr "% duplicado" -#: c/c-decl.c:5793 +#: c/c-decl.c:5813 #, gcc-internal-format msgid "duplicate %" msgstr "% duplicado" -#: c/c-decl.c:5795 +#: c/c-decl.c:5815 #, gcc-internal-format msgid "duplicate %" msgstr "% duplicado" -#: c/c-decl.c:5797 +#: c/c-decl.c:5817 #, gcc-internal-format msgid "duplicate %<_Atomic%>" msgstr "%<_Atomic%> duplicado" -#: c/c-decl.c:5800 +#: c/c-decl.c:5820 #, gcc-internal-format, gfc-internal-format msgid "conflicting named address spaces (%s vs %s)" msgstr "espacios de direcciones nombrados generan un conflicto (%s vs %s)" -#: c/c-decl.c:5823 c/c-parser.c:2821 +#: c/c-decl.c:5843 c/c-parser.c:2821 #, gcc-internal-format msgid "%<_Atomic%>-qualified array type" msgstr "tipo matriz cualificado %<_Atomic%>" -#: c/c-decl.c:5837 +#: c/c-decl.c:5857 #, gcc-internal-format msgid "function definition declared %" msgstr "la definición de la función se declaró como %" -#: c/c-decl.c:5839 +#: c/c-decl.c:5859 #, gcc-internal-format msgid "function definition declared %" msgstr "la definición de la función se declaró como %" -#: c/c-decl.c:5841 +#: c/c-decl.c:5861 #, gcc-internal-format msgid "function definition declared %" msgstr "la definición de la función se declaró como %" -#: c/c-decl.c:5843 +#: c/c-decl.c:5863 #, fuzzy, gcc-internal-format #| msgid "function definition declared %" msgid "function definition declared %qs" msgstr "la definición de la función se declaró como %" -#: c/c-decl.c:5861 +#: c/c-decl.c:5881 #, gcc-internal-format msgid "storage class specified for structure field %qE" msgstr "se especificó una clase de almacenamiento para el campo de la estructura %qE" -#: c/c-decl.c:5864 +#: c/c-decl.c:5884 #, gcc-internal-format msgid "storage class specified for structure field" msgstr "se especificó una clase de almacenamiento para el campo de la estructura" -#: c/c-decl.c:5868 +#: c/c-decl.c:5888 #, gcc-internal-format msgid "storage class specified for parameter %qE" msgstr "se especificó una clase de almacenamiento para el parámetro %qE" -#: c/c-decl.c:5871 +#: c/c-decl.c:5891 #, gcc-internal-format msgid "storage class specified for unnamed parameter" msgstr "se especificó una clase de almacenamiento para un parámetro sin nombre" -#: c/c-decl.c:5874 cp/decl.c:10935 +#: c/c-decl.c:5894 cp/decl.c:10959 #, gcc-internal-format msgid "storage class specified for typename" msgstr "se especificó una clase de almacenamiento para el nombre de tipo" -#: c/c-decl.c:5891 +#: c/c-decl.c:5911 #, gcc-internal-format msgid "%qE initialized and declared %" msgstr "%qE se inicializó y declaró como %" -#: c/c-decl.c:5895 +#: c/c-decl.c:5915 #, gcc-internal-format msgid "%qE has both % and initializer" msgstr "%qE tiene % e inicializador al mismo tiempo" -#: c/c-decl.c:5900 +#: c/c-decl.c:5920 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %" msgstr "la declaración del ámbito de fichero de %qE especifica %" -#: c/c-decl.c:5904 +#: c/c-decl.c:5924 #, gcc-internal-format msgid "file-scope declaration of %qE specifies %" msgstr "la declaración del ámbito de fichero de %qE especifica %" -#: c/c-decl.c:5909 +#: c/c-decl.c:5929 #, gcc-internal-format msgid "nested function %qE declared %" msgstr "la función anidada %qE se declaró %" -#: c/c-decl.c:5912 +#: c/c-decl.c:5932 #, gcc-internal-format msgid "function-scope %qE implicitly auto and declared %qs" msgstr "el ámbito de la función %qE es implícitamente auto y declarado %qs" @@ -33960,702 +34009,702 @@ #. Only the innermost declarator (making a parameter be of #. array type which is converted to pointer type) #. may have static or type qualifiers. -#: c/c-decl.c:5959 c/c-decl.c:6328 +#: c/c-decl.c:5979 c/c-decl.c:6348 #, gcc-internal-format msgid "static or type qualifiers in non-parameter array declarator" msgstr "static o calificadores de tipo en un declarador de matriz que no es parámetro" -#: c/c-decl.c:6007 +#: c/c-decl.c:6027 #, gcc-internal-format msgid "declaration of %qE as array of voids" msgstr "la declaración de %qE como una matriz de voids" -#: c/c-decl.c:6009 +#: c/c-decl.c:6029 #, gcc-internal-format msgid "declaration of type name as array of voids" msgstr "declaración de nombre de tipo como una matriz de voids" -#: c/c-decl.c:6016 +#: c/c-decl.c:6036 #, gcc-internal-format msgid "declaration of %qE as array of functions" msgstr "declaración de %qE como una matriz de funciones" -#: c/c-decl.c:6019 +#: c/c-decl.c:6039 #, gcc-internal-format msgid "declaration of type name as array of functions" msgstr "declaración de nombre de tipo como una matriz de funciones" -#: c/c-decl.c:6027 c/c-decl.c:8085 +#: c/c-decl.c:6047 c/c-decl.c:8105 #, gcc-internal-format msgid "invalid use of structure with flexible array member" msgstr "uso no válido de una estructura con un miembro de matriz flexible" -#: c/c-decl.c:6053 +#: c/c-decl.c:6073 #, gcc-internal-format msgid "size of array %qE has non-integer type" msgstr "el tamaño de la matriz %qE es de un tipo no entero" -#: c/c-decl.c:6057 +#: c/c-decl.c:6077 #, gcc-internal-format msgid "size of unnamed array has non-integer type" msgstr "el tamaño de la matriz sin nombre es de un tipo no entero" -#: c/c-decl.c:6064 +#: c/c-decl.c:6084 #, gcc-internal-format msgid "size of array %qE has incomplete type" msgstr "el tamaño de la matriz %qE es de un tipo incompleto" -#: c/c-decl.c:6067 +#: c/c-decl.c:6087 #, gcc-internal-format msgid "size of unnamed array has incomplete type" msgstr "el tamaño de la matriz sin nombre es de un tipo incompleto" -#: c/c-decl.c:6078 +#: c/c-decl.c:6098 #, gcc-internal-format msgid "ISO C forbids zero-size array %qE" msgstr "ISO C prohíbe la matriz %qE de tamaño cero" -#: c/c-decl.c:6081 +#: c/c-decl.c:6101 #, gcc-internal-format msgid "ISO C forbids zero-size array" msgstr "ISO C prohíbe matrices de tamaño cero" -#: c/c-decl.c:6090 +#: c/c-decl.c:6110 #, gcc-internal-format msgid "size of array %qE is negative" msgstr "el tamaño de la matriz %qE es negativo" -#: c/c-decl.c:6092 +#: c/c-decl.c:6112 #, gcc-internal-format msgid "size of unnamed array is negative" msgstr "el tamaño de la matriz sin nombre es negativo" -#: c/c-decl.c:6216 c/c-decl.c:6871 +#: c/c-decl.c:6236 c/c-decl.c:6891 #, gcc-internal-format msgid "ISO C90 does not support flexible array members" msgstr "ISO C90 no admite miembros de matriz flexibles" #. C99 6.7.5.2p4 -#: c/c-decl.c:6238 +#: c/c-decl.c:6258 #, gcc-internal-format msgid "%<[*]%> not in a declaration" msgstr "%<[*]%> fuera de una declaración" -#: c/c-decl.c:6251 +#: c/c-decl.c:6271 #, gcc-internal-format msgid "array type has incomplete element type %qT" msgstr "el tipo matriz tiene tipo de elemento %qT incompleto" -#: c/c-decl.c:6257 +#: c/c-decl.c:6277 #, gcc-internal-format msgid "declaration of %qE as multidimensional array must have bounds for all dimensions except the first" msgstr "la declaración de %qE como una matriz multidimensional debe tener límites para todas las dimensiones excepto la primera" -#: c/c-decl.c:6261 +#: c/c-decl.c:6281 #, gcc-internal-format msgid "declaration of multidimensional array must have bounds for all dimensions except the first" msgstr "la declaración de una matriz multidimensional debe tener límites para todas las dimensiones excepto la primera" -#: c/c-decl.c:6364 +#: c/c-decl.c:6384 #, gcc-internal-format msgid "%qE declared as function returning a function" msgstr "%qE que se declaró como función devuelve una función" -#: c/c-decl.c:6367 +#: c/c-decl.c:6387 #, gcc-internal-format msgid "type name declared as function returning a function" msgstr "el nombre de tipo que se declaró como función devuelve una función" -#: c/c-decl.c:6374 +#: c/c-decl.c:6394 #, gcc-internal-format msgid "%qE declared as function returning an array" msgstr "%qE que se declaró como función devuelve una matriz" -#: c/c-decl.c:6377 +#: c/c-decl.c:6397 #, gcc-internal-format msgid "type name declared as function returning an array" msgstr "el nombre de tipo que se declaró como función devuelve una matriz" -#: c/c-decl.c:6418 +#: c/c-decl.c:6438 #, gcc-internal-format msgid "function definition has qualified void return type" msgstr "la definición de la función tiene un tipo de devolución void calificado" -#: c/c-decl.c:6421 cp/decl.c:11201 +#: c/c-decl.c:6441 cp/decl.c:11225 #, gcc-internal-format msgid "type qualifiers ignored on function return type" msgstr "se descartan los calificadores de tipo en el tipo de devolución de la función" -#: c/c-decl.c:6459 c/c-decl.c:6668 c/c-decl.c:6721 c/c-decl.c:6805 -#: c/c-decl.c:6926 c/c-parser.c:2823 +#: c/c-decl.c:6479 c/c-decl.c:6688 c/c-decl.c:6741 c/c-decl.c:6825 +#: c/c-decl.c:6946 c/c-parser.c:2823 #, gcc-internal-format msgid "%<_Atomic%>-qualified function type" msgstr "tipo de función calificada %<_Atomic%>" -#: c/c-decl.c:6465 c/c-decl.c:6674 c/c-decl.c:6810 c/c-decl.c:6931 +#: c/c-decl.c:6485 c/c-decl.c:6694 c/c-decl.c:6830 c/c-decl.c:6951 #, gcc-internal-format msgid "ISO C forbids qualified function types" msgstr "ISO C prohíbe los tipos de función calificados" -#: c/c-decl.c:6559 +#: c/c-decl.c:6579 #, gcc-internal-format msgid "%qs combined with % qualifier for %qE" msgstr "%qs combinado con el calificador % para %qE" -#: c/c-decl.c:6563 +#: c/c-decl.c:6583 #, gcc-internal-format msgid "%qs combined with % qualifier for %qE" msgstr "%qs combinado con el calificador % para %qE" -#: c/c-decl.c:6569 +#: c/c-decl.c:6589 #, gcc-internal-format msgid "%qs specified for auto variable %qE" msgstr "se especificó %qs para la variable auto %qE" -#: c/c-decl.c:6585 +#: c/c-decl.c:6605 #, gcc-internal-format msgid "%qs specified for parameter %qE" msgstr "se especificó %qs para el parámetro %qE" -#: c/c-decl.c:6588 +#: c/c-decl.c:6608 #, gcc-internal-format msgid "%qs specified for unnamed parameter" msgstr "se especificó %qs para el parámetro sin nombre" -#: c/c-decl.c:6594 +#: c/c-decl.c:6614 #, gcc-internal-format msgid "%qs specified for structure field %qE" msgstr "se especificó %qs para el campo de estructura %qE" -#: c/c-decl.c:6597 +#: c/c-decl.c:6617 #, gcc-internal-format msgid "%qs specified for structure field" msgstr "se especificó %qs para el campo de estructura" -#: c/c-decl.c:6612 +#: c/c-decl.c:6632 #, gcc-internal-format msgid "bit-field %qE has atomic type" msgstr "el campo de bits %qE tiene un tipo atómico" -#: c/c-decl.c:6614 +#: c/c-decl.c:6634 #, gcc-internal-format msgid "bit-field has atomic type" msgstr "el campo de bits tiene un tipo no atómico" -#: c/c-decl.c:6623 +#: c/c-decl.c:6643 #, gcc-internal-format msgid "alignment specified for typedef %qE" msgstr "se especificó la alineación para la definición de tipo %qE" -#: c/c-decl.c:6625 +#: c/c-decl.c:6645 #, gcc-internal-format msgid "alignment specified for % object %qE" msgstr "se especificó la alineación para el objeto % %qE" -#: c/c-decl.c:6630 +#: c/c-decl.c:6650 #, gcc-internal-format msgid "alignment specified for parameter %qE" msgstr "se especificó la alineación para el parámetro %qE" -#: c/c-decl.c:6632 +#: c/c-decl.c:6652 #, gcc-internal-format msgid "alignment specified for unnamed parameter" msgstr "se especificó la alineación para el parámetro sin nombre" -#: c/c-decl.c:6637 +#: c/c-decl.c:6657 #, gcc-internal-format msgid "alignment specified for bit-field %qE" msgstr "se especificó la alineación para el campo de bits %qE" -#: c/c-decl.c:6639 +#: c/c-decl.c:6659 #, gcc-internal-format msgid "alignment specified for unnamed bit-field" msgstr "se especificó la alineación para el campo de bits sin nombre" -#: c/c-decl.c:6642 +#: c/c-decl.c:6662 #, gcc-internal-format msgid "alignment specified for function %qE" msgstr "se especificó la alineación para la función %qE" -#: c/c-decl.c:6649 +#: c/c-decl.c:6669 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of %qE" msgstr "los especificadores %<_Alignas%> no pueden reducir la alineación de %qE" -#: c/c-decl.c:6652 +#: c/c-decl.c:6672 #, gcc-internal-format msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field" msgstr "los especificadores %<_Alignas%> no pueden reducir la alineación del campo sin nombre" -#: c/c-decl.c:6683 +#: c/c-decl.c:6703 #, gcc-internal-format msgid "typedef %q+D declared %" msgstr "la definición de tipo %q+D se declaró como %" -#: c/c-decl.c:6685 +#: c/c-decl.c:6705 #, gcc-internal-format msgid "typedef %q+D declared %<_Noreturn%>" msgstr "la definición de tipo %q+D se declaró como %<_Noreturn%>" -#: c/c-decl.c:6727 +#: c/c-decl.c:6747 #, gcc-internal-format msgid "ISO C forbids const or volatile function types" msgstr "ISO C prohíbe los tipos de función const o volatile" #. C99 6.7.2.1p8 -#: c/c-decl.c:6738 +#: c/c-decl.c:6758 #, gcc-internal-format msgid "a member of a structure or union cannot have a variably modified type" msgstr "un miembro de una estructura o union no puede tener un tipo modificado variablemente" -#: c/c-decl.c:6755 cp/decl.c:9989 +#: c/c-decl.c:6775 cp/decl.c:10010 #, gcc-internal-format msgid "variable or field %qE declared void" msgstr "se declaró la variable o campo %qE como void" -#: c/c-decl.c:6795 +#: c/c-decl.c:6815 #, gcc-internal-format msgid "attributes in parameter array declarator ignored" msgstr "se descartan los atributos en los declaradores de parámetros de matriz" -#: c/c-decl.c:6837 +#: c/c-decl.c:6857 #, gcc-internal-format msgid "parameter %q+D declared %" msgstr "el parámetro %q+D se declaró %" -#: c/c-decl.c:6839 +#: c/c-decl.c:6859 #, gcc-internal-format msgid "parameter %q+D declared %<_Noreturn%>" msgstr "el parámetro %q+D se declaró %<_Noreturn%>" -#: c/c-decl.c:6852 +#: c/c-decl.c:6872 #, gcc-internal-format msgid "field %qE declared as a function" msgstr "el campo %qE se declaró como una función" -#: c/c-decl.c:6859 +#: c/c-decl.c:6879 #, gcc-internal-format msgid "field %qE has incomplete type" msgstr "el campo %qE tiene tipo de dato incompleto" -#: c/c-decl.c:6861 +#: c/c-decl.c:6881 #, gcc-internal-format msgid "unnamed field has incomplete type" msgstr "el campo sin nombre tiene tipo de dato incompleto" -#: c/c-decl.c:6897 c/c-decl.c:6908 c/c-decl.c:6911 +#: c/c-decl.c:6917 c/c-decl.c:6928 c/c-decl.c:6931 #, gcc-internal-format msgid "invalid storage class for function %qE" msgstr "clase de almacenamiento no válida para la función %qE" -#: c/c-decl.c:6968 +#: c/c-decl.c:6988 #, gcc-internal-format msgid "cannot inline function %" msgstr "no se puede incluir en línea la función %" -#: c/c-decl.c:6970 +#: c/c-decl.c:6990 #, gcc-internal-format msgid "% declared %<_Noreturn%>" msgstr "% se declaró como %<_Noreturn%>" -#: c/c-decl.c:6981 +#: c/c-decl.c:7001 #, gcc-internal-format msgid "ISO C99 does not support %<_Noreturn%>" msgstr "ISO C99 no admite %<_Noreturn%>" -#: c/c-decl.c:6984 +#: c/c-decl.c:7004 #, gcc-internal-format msgid "ISO C90 does not support %<_Noreturn%>" msgstr "ISO C90 no admite %<_Noreturn%>" -#: c/c-decl.c:7013 +#: c/c-decl.c:7033 #, gcc-internal-format msgid "variable previously declared % redeclared %" msgstr "una variable previamente declarada como % se redeclara como %" -#: c/c-decl.c:7023 +#: c/c-decl.c:7043 #, gcc-internal-format msgid "variable %q+D declared %" msgstr "la variable %q+D se declaró como %" -#: c/c-decl.c:7025 +#: c/c-decl.c:7045 #, gcc-internal-format msgid "variable %q+D declared %<_Noreturn%>" msgstr "la variable %q+D se declaró como %<_Noreturn%>" -#: c/c-decl.c:7060 +#: c/c-decl.c:7080 #, gcc-internal-format msgid "non-nested function with variably modified type" msgstr "función no anidada con tipo modificado variablemente" -#: c/c-decl.c:7062 +#: c/c-decl.c:7082 #, gcc-internal-format msgid "object with variably modified type must have no linkage" msgstr "un objeto con tipo modificado variablemente no debe tener enlace" -#: c/c-decl.c:7153 c/c-decl.c:8821 +#: c/c-decl.c:7173 c/c-decl.c:8841 #, gcc-internal-format msgid "function declaration isn%'t a prototype" msgstr "la declaración de la función no es un prototipo" -#: c/c-decl.c:7163 +#: c/c-decl.c:7183 #, gcc-internal-format msgid "parameter names (without types) in function declaration" msgstr "nombres de parámetros (sin tipos) en la declaración de la función" -#: c/c-decl.c:7201 +#: c/c-decl.c:7221 #, gcc-internal-format msgid "parameter %u (%q+D) has incomplete type" msgstr "el parámetro %u (%q+D) tiene tipo incompleto" -#: c/c-decl.c:7205 +#: c/c-decl.c:7225 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has incomplete type" msgstr "el parámetro %u tiene tipo incompleto" -#: c/c-decl.c:7216 +#: c/c-decl.c:7236 #, gcc-internal-format msgid "parameter %u (%q+D) has void type" msgstr "el parámetro %u (%q+D) tiene tipo void" -#: c/c-decl.c:7220 +#: c/c-decl.c:7240 #, gcc-internal-format, gfc-internal-format msgid "parameter %u has void type" msgstr "el parámetro %u tiene tipo void" -#: c/c-decl.c:7294 +#: c/c-decl.c:7314 #, gcc-internal-format msgid "% as only parameter may not be qualified" msgstr "no se puede calificar % si es el único parámetro" -#: c/c-decl.c:7298 c/c-decl.c:7334 +#: c/c-decl.c:7318 c/c-decl.c:7354 #, gcc-internal-format msgid "% must be the only parameter" msgstr "% debe ser el único parámetro" -#: c/c-decl.c:7328 +#: c/c-decl.c:7348 #, gcc-internal-format msgid "parameter %q+D has just a forward declaration" msgstr "el parámetro %q+D sólo tiene una declaración posterior" -#: c/c-decl.c:7374 +#: c/c-decl.c:7394 #, gcc-internal-format msgid "%<%s %E%> declared inside parameter list will not be visible outside of this definition or declaration" msgstr "" -#: c/c-decl.c:7380 +#: c/c-decl.c:7400 #, gcc-internal-format, gfc-internal-format msgid "anonymous %s declared inside parameter list will not be visible outside of this definition or declaration" msgstr "" -#: c/c-decl.c:7482 +#: c/c-decl.c:7502 #, gcc-internal-format msgid "enum type defined here" msgstr "se definió el tipo enum aquí" -#: c/c-decl.c:7488 +#: c/c-decl.c:7508 #, gcc-internal-format msgid "struct defined here" msgstr "se definió struct aquí" -#: c/c-decl.c:7494 +#: c/c-decl.c:7514 #, gcc-internal-format msgid "union defined here" msgstr "se definió union aquí" -#: c/c-decl.c:7570 +#: c/c-decl.c:7590 #, gcc-internal-format msgid "redefinition of %" msgstr "redefinición de %" -#: c/c-decl.c:7572 +#: c/c-decl.c:7592 #, gcc-internal-format msgid "redefinition of %" msgstr "redefinición de %" -#: c/c-decl.c:7581 +#: c/c-decl.c:7601 #, gcc-internal-format msgid "nested redefinition of %" msgstr "redefinición anidada de %" -#: c/c-decl.c:7583 +#: c/c-decl.c:7603 #, gcc-internal-format msgid "nested redefinition of %" msgstr "redefinición anidada de %" -#: c/c-decl.c:7613 c/c-decl.c:8400 +#: c/c-decl.c:7633 c/c-decl.c:8420 #, gcc-internal-format msgid "defining type in %qs expression is invalid in C++" msgstr "la definición de tipo en %qs es no válida en C++" -#: c/c-decl.c:7680 cp/decl.c:4802 +#: c/c-decl.c:7700 cp/decl.c:4802 #, gcc-internal-format msgid "declaration does not declare anything" msgstr "la declaración no declara nada" -#: c/c-decl.c:7685 +#: c/c-decl.c:7705 #, gcc-internal-format msgid "ISO C99 doesn%'t support unnamed structs/unions" msgstr "ISO C99 no admite structs/unions sin nombre" -#: c/c-decl.c:7688 +#: c/c-decl.c:7708 #, gcc-internal-format msgid "ISO C90 doesn%'t support unnamed structs/unions" msgstr "ISO C90 no admite structs/unions sin nombre" -#: c/c-decl.c:7781 c/c-decl.c:7799 c/c-decl.c:7860 +#: c/c-decl.c:7801 c/c-decl.c:7819 c/c-decl.c:7880 #, gcc-internal-format msgid "duplicate member %q+D" msgstr "miembro %q+D duplicado" -#: c/c-decl.c:7886 +#: c/c-decl.c:7906 #, gcc-internal-format msgid "empty struct has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:7889 +#: c/c-decl.c:7909 #, gcc-internal-format msgid "empty union has size 0 in C, size 1 in C++" msgstr "" -#: c/c-decl.c:7994 +#: c/c-decl.c:8014 #, gcc-internal-format msgid "union has no named members" msgstr "union no tiene miembros nombrados" -#: c/c-decl.c:7996 +#: c/c-decl.c:8016 #, gcc-internal-format msgid "union has no members" msgstr "union no tiene miembros" -#: c/c-decl.c:8001 +#: c/c-decl.c:8021 #, gcc-internal-format msgid "struct has no named members" msgstr "struct no tiene miembros nombrados" -#: c/c-decl.c:8003 +#: c/c-decl.c:8023 #, gcc-internal-format msgid "struct has no members" msgstr "struct no tiene miembros" -#: c/c-decl.c:8064 cp/decl.c:12069 +#: c/c-decl.c:8084 cp/decl.c:12093 #, gcc-internal-format msgid "flexible array member in union" msgstr "miembro de matriz flexible en union" -#: c/c-decl.c:8070 +#: c/c-decl.c:8090 #, gcc-internal-format msgid "flexible array member not at end of struct" msgstr "el miembro de matriz flexible no está al final del struct" -#: c/c-decl.c:8076 +#: c/c-decl.c:8096 #, gcc-internal-format msgid "flexible array member in a struct with no named members" msgstr "miembro de matriz flexible en estructura sin miembros con nombre" -#: c/c-decl.c:8107 +#: c/c-decl.c:8127 #, gcc-internal-format msgid "type %qT is too large" msgstr "el tipo %qT es demasiado grande" -#: c/c-decl.c:8230 +#: c/c-decl.c:8250 #, gcc-internal-format msgid "union cannot be made transparent" msgstr "union no se puede hacer transparente" -#: c/c-decl.c:8372 +#: c/c-decl.c:8392 #, gcc-internal-format msgid "nested redefinition of %" msgstr "redefinición anidada de %" #. This enum is a named one that has been declared already. -#: c/c-decl.c:8379 +#: c/c-decl.c:8399 #, gcc-internal-format msgid "redeclaration of %" msgstr "redeclaración de %" -#: c/c-decl.c:8458 cp/decl.c:14423 +#: c/c-decl.c:8478 cp/decl.c:14447 #, gcc-internal-format msgid "specified mode too small for enumeral values" msgstr "el modo especificado es demasiado pequeño para valores enumerados" -#: c/c-decl.c:8473 +#: c/c-decl.c:8493 #, gcc-internal-format msgid "enumeration values exceed range of largest integer" msgstr "los valores de enumeración exceden el rango del entero más grande" -#: c/c-decl.c:8587 c/c-decl.c:8603 +#: c/c-decl.c:8607 c/c-decl.c:8623 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant" msgstr "el valor de enumerador para %qE no es una constante entera" -#: c/c-decl.c:8598 +#: c/c-decl.c:8618 #, gcc-internal-format msgid "enumerator value for %qE is not an integer constant expression" msgstr "el valor de enumerador para %qE no es una expresión constante entera" -#: c/c-decl.c:8622 +#: c/c-decl.c:8642 #, gcc-internal-format msgid "overflow in enumeration values" msgstr "desbordamiento en valores de enumeración" -#: c/c-decl.c:8630 +#: c/c-decl.c:8650 #, gcc-internal-format msgid "ISO C restricts enumerator values to range of %" msgstr "ISO C restringe los valores de enumeración al rango de %" -#: c/c-decl.c:8715 cp/decl.c:5104 cp/decl.c:14955 +#: c/c-decl.c:8735 cp/decl.c:5104 cp/decl.c:14979 #, gcc-internal-format msgid "inline function %qD given attribute noinline" msgstr "se le dió a la función incluida en línea %qD un atributo noinline" -#: c/c-decl.c:8733 +#: c/c-decl.c:8753 #, gcc-internal-format msgid "return type is an incomplete type" msgstr "el tipo de devolución es un tipo de dato incompleto" -#: c/c-decl.c:8744 +#: c/c-decl.c:8764 #, gcc-internal-format msgid "return type defaults to %" msgstr "el tipo de devolución por defecto es %" -#: c/c-decl.c:8771 +#: c/c-decl.c:8791 #, fuzzy, gcc-internal-format #| msgid "Warn about global functions without prototypes" msgid "%q+D defined as variadic function without prototype" msgstr "Avisa sobre funciones globales sin prototipos" -#: c/c-decl.c:8830 +#: c/c-decl.c:8850 #, gcc-internal-format msgid "no previous prototype for %qD" msgstr "no hay un prototipo previo para %qD" -#: c/c-decl.c:8839 +#: c/c-decl.c:8859 #, gcc-internal-format msgid "%qD was used with no prototype before its definition" msgstr "se usó %qD sin prototipo antes de su definición" -#: c/c-decl.c:8847 cp/decl.c:15090 +#: c/c-decl.c:8867 cp/decl.c:15114 #, gcc-internal-format msgid "no previous declaration for %qD" msgstr "no hay declaración previa para %qD" -#: c/c-decl.c:8857 +#: c/c-decl.c:8877 #, gcc-internal-format msgid "%qD was used with no declaration before its definition" msgstr "se usó %qD sin declaración antes de su definición" -#: c/c-decl.c:8876 +#: c/c-decl.c:8896 #, gcc-internal-format msgid "return type of %qD is not %" msgstr "el tipo de devolución de %qD no es %" -#: c/c-decl.c:8878 +#: c/c-decl.c:8898 #, gcc-internal-format msgid "%<_Atomic%>-qualified return type of %qD" msgstr "" -#: c/c-decl.c:8885 +#: c/c-decl.c:8905 #, gcc-internal-format msgid "%qD is normally a non-static function" msgstr "%qD generalmente es una función que no es static" -#: c/c-decl.c:8922 +#: c/c-decl.c:8942 #, gcc-internal-format msgid "old-style parameter declarations in prototyped function definition" msgstr "declaraciones de parámetros de estilo antiguo en la definición de una función prototipo" -#: c/c-decl.c:8937 +#: c/c-decl.c:8957 #, gcc-internal-format msgid "traditional C rejects ISO C style function definitions" msgstr "C tradicional rechaza la definición de funciones de estilo ISO C" -#: c/c-decl.c:8953 +#: c/c-decl.c:8973 #, gcc-internal-format msgid "parameter name omitted" msgstr "se omitió el nombre del parámetro" -#: c/c-decl.c:8990 +#: c/c-decl.c:9010 #, gcc-internal-format msgid "old-style function definition" msgstr "definición de función de estilo antiguo" -#: c/c-decl.c:8999 +#: c/c-decl.c:9019 #, gcc-internal-format msgid "parameter name missing from parameter list" msgstr "falta el nombre del parámetro de la lista de parámetros" -#: c/c-decl.c:9015 +#: c/c-decl.c:9035 #, gcc-internal-format msgid "%qD declared as a non-parameter" msgstr "%qD se declaró como un no-parámetro" -#: c/c-decl.c:9023 +#: c/c-decl.c:9043 #, gcc-internal-format msgid "multiple parameters named %qD" msgstr "múltiples parámetros nombrados %qD" -#: c/c-decl.c:9032 +#: c/c-decl.c:9052 #, gcc-internal-format msgid "parameter %qD declared with void type" msgstr "el parámetro %qD se declaró con tipo void" -#: c/c-decl.c:9061 c/c-decl.c:9066 +#: c/c-decl.c:9081 c/c-decl.c:9086 #, gcc-internal-format msgid "type of %qD defaults to %" msgstr "el tipo de %qD es % por defecto" -#: c/c-decl.c:9086 +#: c/c-decl.c:9106 #, gcc-internal-format msgid "parameter %qD has incomplete type" msgstr "el parámetro %qD tiene tipo incompleto" -#: c/c-decl.c:9093 +#: c/c-decl.c:9113 #, gcc-internal-format msgid "declaration for parameter %qD but no such parameter" msgstr "existe la declaración para el parámetro %qD pero no hay tal parámetro" -#: c/c-decl.c:9146 +#: c/c-decl.c:9166 #, gcc-internal-format msgid "number of arguments doesn%'t match built-in prototype" msgstr "el número de argumentos no coinciden con el prototipo interno" -#: c/c-decl.c:9157 +#: c/c-decl.c:9177 #, gcc-internal-format msgid "number of arguments doesn%'t match prototype" msgstr "el número de argumentos no coinciden con el prototipo" -#: c/c-decl.c:9160 c/c-decl.c:9207 c/c-decl.c:9221 +#: c/c-decl.c:9180 c/c-decl.c:9227 c/c-decl.c:9241 #, gcc-internal-format msgid "prototype declaration" msgstr "declaración de prototipo" -#: c/c-decl.c:9199 +#: c/c-decl.c:9219 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match built-in prototype" msgstr "el argumento promovido %qD no coincide con el prototipo interno" -#: c/c-decl.c:9204 +#: c/c-decl.c:9224 #, gcc-internal-format msgid "promoted argument %qD doesn%'t match prototype" msgstr "el argumento promovido %qD no coincide con el prototipo" -#: c/c-decl.c:9214 +#: c/c-decl.c:9234 #, gcc-internal-format msgid "argument %qD doesn%'t match built-in prototype" msgstr "el argumento %qD no coincide con el prototipo interno" -#: c/c-decl.c:9219 +#: c/c-decl.c:9239 #, gcc-internal-format msgid "argument %qD doesn%'t match prototype" msgstr "el argumento %qD no coincide con el prototipo" -#: c/c-decl.c:9470 cp/decl.c:15873 +#: c/c-decl.c:9490 cp/decl.c:15897 #, gcc-internal-format msgid "no return statement in function returning non-void" msgstr "no hay una declaración de devolución en la función que no devuelve void" -#: c/c-decl.c:9490 cp/decl.c:15905 +#: c/c-decl.c:9510 cp/decl.c:15929 #, gcc-internal-format msgid "parameter %qD set but not used" msgstr "se definió el parámetro %qD pero no se usa" @@ -34663,247 +34712,247 @@ #. If we get here, declarations have been used in a for loop without #. the C99 for loop scope. This doesn't make much sense, so don't #. allow it. -#: c/c-decl.c:9586 +#: c/c-decl.c:9606 #, gcc-internal-format msgid "% loop initial declarations are only allowed in C99 or C11 mode" msgstr "sólo se permiten las declaraciones iniciales del bucle % en modo C99 o C11" -#: c/c-decl.c:9591 +#: c/c-decl.c:9611 #, gcc-internal-format msgid "use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code" msgstr "use la opción -std=c99, -std=gnu99, -std=c11 o -std=gnu11 para compilar su código" -#: c/c-decl.c:9626 +#: c/c-decl.c:9646 #, gcc-internal-format msgid "declaration of static variable %qD in % loop initial declaration" msgstr "declaración de la variable static %qD en la declaración inicial del bucle %" -#: c/c-decl.c:9630 +#: c/c-decl.c:9650 #, gcc-internal-format msgid "declaration of % variable %qD in % loop initial declaration" msgstr "declaración de la variable % %qD en la declaración inicial del bucle %" -#: c/c-decl.c:9637 +#: c/c-decl.c:9657 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "% se declaró en la declaración inicial del bucle %" -#: c/c-decl.c:9642 +#: c/c-decl.c:9662 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "% se declaró en la declaración inicial del bucle %" -#: c/c-decl.c:9646 +#: c/c-decl.c:9666 #, gcc-internal-format msgid "% declared in % loop initial declaration" msgstr "% se declaró en la declaración inicial del bucle %" -#: c/c-decl.c:9650 +#: c/c-decl.c:9670 #, gcc-internal-format msgid "declaration of non-variable %qD in % loop initial declaration" msgstr "declaración de %qD que no es variable en la declaración inicial del bucle %" -#: c/c-decl.c:9900 +#: c/c-decl.c:9920 #, gcc-internal-format msgid "incompatible address space qualifiers %qs and %qs" msgstr "calificadores de espacio de direcciones incompatibles %qs y %qs" -#: c/c-decl.c:9958 c/c-decl.c:9965 +#: c/c-decl.c:9978 c/c-decl.c:9985 #, gcc-internal-format msgid "duplicate %qE declaration specifier" msgstr "especificador %qE de declaración duplicado" -#: c/c-decl.c:9992 c/c-decl.c:10376 c/c-decl.c:10766 +#: c/c-decl.c:10012 c/c-decl.c:10396 c/c-decl.c:10786 #, gcc-internal-format msgid "two or more data types in declaration specifiers" msgstr "dos o más tipos de datos en los especificadores de la declaración" -#: c/c-decl.c:10004 cp/parser.c:28261 +#: c/c-decl.c:10024 cp/parser.c:28258 #, gcc-internal-format msgid "% is too long for GCC" msgstr "% es demasiado largo para GCC" -#: c/c-decl.c:10017 +#: c/c-decl.c:10037 #, gcc-internal-format msgid "ISO C90 does not support %" msgstr "ISO C90 no admite %" -#: c/c-decl.c:10246 c/c-parser.c:8848 +#: c/c-decl.c:10266 c/c-parser.c:8848 #, gcc-internal-format msgid "ISO C90 does not support complex types" msgstr "ISO C90 no admite tipos complejos" -#: c/c-decl.c:10292 +#: c/c-decl.c:10312 #, gcc-internal-format msgid "ISO C does not support saturating types" msgstr "ISO C no admite tipos saturantes" -#: c/c-decl.c:10363 c/c-decl.c:10923 +#: c/c-decl.c:10383 c/c-decl.c:10943 #, gcc-internal-format msgid "duplicate %qE" msgstr "%qE duplicado" -#: c/c-decl.c:10419 +#: c/c-decl.c:10439 #, gcc-internal-format msgid "ISO C does not support %<__int%d%> types" msgstr "ISO C no admite los tipos %<__int%d%>" -#: c/c-decl.c:10441 +#: c/c-decl.c:10461 #, gcc-internal-format msgid "%<__int%d%> is not supported on this target" msgstr "no se admite %<__int%d%> para este objetivo" -#: c/c-decl.c:10484 +#: c/c-decl.c:10504 #, gcc-internal-format msgid "ISO C90 does not support boolean types" msgstr "ISO C90 no admite tipos booleanos" -#: c/c-decl.c:10603 +#: c/c-decl.c:10623 #, gcc-internal-format msgid "ISO C does not support the %<_Float%d%s%> type" msgstr "ISO C no admite el tipo %<_float%d%s%>" -#: c/c-decl.c:10653 +#: c/c-decl.c:10673 #, gcc-internal-format msgid "%<_Float%d%s%> is not supported on this target" msgstr "no se admite %<_float%d%s%> para este objetivo" -#: c/c-decl.c:10724 +#: c/c-decl.c:10744 #, gcc-internal-format msgid "ISO C does not support decimal floating point" msgstr "ISO C no admite coma flotante decimal" -#: c/c-decl.c:10747 c/c-decl.c:11013 c/c-parser.c:7842 +#: c/c-decl.c:10767 c/c-decl.c:11033 c/c-parser.c:7842 #, gcc-internal-format msgid "fixed-point types not supported for this target" msgstr "no se admiten tipos de coma fija para este objetivo" -#: c/c-decl.c:10749 +#: c/c-decl.c:10769 #, gcc-internal-format msgid "ISO C does not support fixed-point types" msgstr "ISO C no admite tipos de coma fija" -#: c/c-decl.c:10784 +#: c/c-decl.c:10804 #, gcc-internal-format msgid "C++ lookup of %qD would return a field, not a type" msgstr "la búsqueda en C++ de %qD devolvería un campo, no un tipo" -#: c/c-decl.c:10797 +#: c/c-decl.c:10817 #, gcc-internal-format msgid "%qE fails to be a typedef or built in type" msgstr "%qE falla al ser un typedef o un tipo interno del compilador" -#: c/c-decl.c:10845 +#: c/c-decl.c:10865 #, gcc-internal-format msgid "%qE is not at beginning of declaration" msgstr "%qE no está al inicio de la declaración" -#: c/c-decl.c:10866 +#: c/c-decl.c:10886 #, gcc-internal-format msgid "%qE used with %" msgstr "se usó %qE con %" -#: c/c-decl.c:10868 +#: c/c-decl.c:10888 #, gcc-internal-format msgid "%qE used with %" msgstr "se usó %qE con %" -#: c/c-decl.c:10870 +#: c/c-decl.c:10890 #, gcc-internal-format msgid "%qE used with %" msgstr "se usó %qE con %" -#: c/c-decl.c:10884 c/c-parser.c:7360 +#: c/c-decl.c:10904 c/c-parser.c:7360 #, gcc-internal-format msgid "ISO C99 does not support %qE" msgstr "ISO C99 no admite %qE" -#: c/c-decl.c:10887 c/c-parser.c:7363 +#: c/c-decl.c:10907 c/c-parser.c:7363 #, gcc-internal-format msgid "ISO C90 does not support %qE" msgstr "ISO C90 no admite %qE" -#: c/c-decl.c:10899 +#: c/c-decl.c:10919 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "%<__thread%> antes de %" -#: c/c-decl.c:10908 +#: c/c-decl.c:10928 #, gcc-internal-format msgid "%<__thread%> before %" msgstr "%<__thread%> antes de %" -#: c/c-decl.c:10921 +#: c/c-decl.c:10941 #, gcc-internal-format msgid "duplicate %<_Thread_local%> or %<__thread%>" msgstr "%<_Thread_local%> o %<__thread%> duplicado" -#: c/c-decl.c:10929 +#: c/c-decl.c:10949 #, gcc-internal-format msgid "multiple storage classes in declaration specifiers" msgstr "múltiples clases de almacenamiento en los especificadores de declaración" -#: c/c-decl.c:10937 +#: c/c-decl.c:10957 #, gcc-internal-format msgid "%qs used with %qE" msgstr "se usó %qs con %qE" -#: c/c-decl.c:11010 +#: c/c-decl.c:11030 #, gcc-internal-format msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>" msgstr "se usó %<_Sat%> sin %<_Fract%> o %<_Accum%>" -#: c/c-decl.c:11025 +#: c/c-decl.c:11045 #, gcc-internal-format msgid "ISO C does not support plain % meaning %" msgstr "ISO C no admite % simples que significan %" -#: c/c-decl.c:11076 c/c-decl.c:11092 c/c-decl.c:11118 +#: c/c-decl.c:11096 c/c-decl.c:11112 c/c-decl.c:11138 #, gcc-internal-format msgid "ISO C does not support complex integer types" msgstr "ISO C no admite tipos enteros complejos" -#: c/c-decl.c:11514 cp/semantics.c:5348 +#: c/c-decl.c:11534 cp/semantics.c:5351 #, gcc-internal-format msgid "%<#pragma omp declare reduction%> combiner refers to variable %qD which is not % nor %" msgstr "el combinador %<#pragma omp declare reduction%> hace referencia a la variable %qD, la cual no es % ni %" -#: c/c-decl.c:11518 cp/semantics.c:5352 +#: c/c-decl.c:11538 cp/semantics.c:5355 #, gcc-internal-format msgid "%<#pragma omp declare reduction%> initializer refers to variable %qD which is not % nor %" msgstr "el nicializador %<#pragma omp declare reduction%> hace referencia a la variable %qD, la cual no es % ni %" -#: c/c-fold.c:385 c/c-typeck.c:11426 cp/typeck.c:4680 +#: c/c-fold.c:385 c/c-typeck.c:11431 cp/typeck.c:4680 #, gcc-internal-format msgid "left shift of negative value" msgstr "desplazamiento a la izquierda o valor negativo" -#: c/c-fold.c:395 c/c-typeck.c:11435 cp/typeck.c:4688 +#: c/c-fold.c:395 c/c-typeck.c:11440 cp/typeck.c:4688 #, gcc-internal-format msgid "left shift count is negative" msgstr "la cuenta de desplazamiento a la izquierda es negativa" -#: c/c-fold.c:396 c/c-typeck.c:11365 cp/typeck.c:4633 +#: c/c-fold.c:396 c/c-typeck.c:11370 cp/typeck.c:4633 #, gcc-internal-format msgid "right shift count is negative" msgstr "la cuenta de desplazamiento a la derecha es negativa" -#: c/c-fold.c:404 c/c-typeck.c:11454 cp/typeck.c:4696 +#: c/c-fold.c:404 c/c-typeck.c:11459 cp/typeck.c:4696 #, gcc-internal-format msgid "left shift count >= width of type" msgstr "cuenta de desplazamiento a la izquierda >= anchura del tipo" -#: c/c-fold.c:405 c/c-typeck.c:11389 cp/typeck.c:4641 +#: c/c-fold.c:405 c/c-typeck.c:11394 cp/typeck.c:4641 #, gcc-internal-format msgid "right shift count >= width of type" msgstr "cuenta de desplazamiento a la derecha >= anchura del tipo" -#: c/c-fold.c:412 c/c-typeck.c:11446 +#: c/c-fold.c:412 c/c-typeck.c:11451 #, gcc-internal-format msgid "left shift count >= width of vector element" msgstr "cuenta de desplazamiento a la izquierda >= anchura del elemento del vector" -#: c/c-fold.c:413 c/c-typeck.c:11376 +#: c/c-fold.c:413 c/c-typeck.c:11381 #, gcc-internal-format msgid "right shift count >= width of vector element" msgstr "cuenta de desplazamiento a la derecha >= anchura del elemento del vector" @@ -34924,7 +34973,7 @@ msgid "to match this %qs" msgstr "%J otro tipo aquí" -#: c/c-parser.c:1216 cp/parser.c:28484 +#: c/c-parser.c:1216 cp/parser.c:28481 #, gcc-internal-format msgid "expected end of line" msgstr "se esperaba fin de línea" @@ -34965,7 +35014,7 @@ msgstr "nombre de tipo %qE desconocido" #: c/c-parser.c:1848 c/c-parser.c:11129 c/c-parser.c:16147 c/c-parser.c:16585 -#: c/c-parser.c:17061 cp/parser.c:36007 cp/parser.c:38993 +#: c/c-parser.c:17061 cp/parser.c:36004 cp/parser.c:38990 #, gcc-internal-format msgid "expected declaration specifiers" msgstr "se esperaban especificadores de declaración" @@ -34980,7 +35029,7 @@ msgid "expected %<;%>, identifier or %<(%>" msgstr "se esperaba %<;>, identificador o %<(%>" -#: c/c-parser.c:1906 cp/parser.c:30161 cp/parser.c:30235 +#: c/c-parser.c:1906 cp/parser.c:30158 cp/parser.c:30232 #, gcc-internal-format msgid "prefix attributes are ignored for methods" msgstr "se descartan los atributos de prefijo para los métodos" @@ -35034,7 +35083,7 @@ msgid "%<__auto_type%> may only be used with a single declarator" msgstr "%<__auto_type%> sólo se puede utilizar con una declaración simple" -#: c/c-parser.c:2220 cp/parser.c:13002 cp/parser.c:13159 +#: c/c-parser.c:2220 cp/parser.c:12999 cp/parser.c:13156 #, gcc-internal-format msgid "expected %<,%> or %<;%>" msgstr "se esperaba %<,%> o %<;%>" @@ -35062,7 +35111,7 @@ msgid "ISO C90 does not support %<_Static_assert%>" msgstr "ISO C90 no admite %<_Static_assert%>" -#: c/c-parser.c:2448 c/c-parser.c:4160 c/c-parser.c:11187 cp/parser.c:38634 +#: c/c-parser.c:2448 c/c-parser.c:4160 c/c-parser.c:11187 cp/parser.c:38631 #, gcc-internal-format msgid "expected string literal" msgstr "se esperaba una cadena literal" @@ -35126,13 +35175,13 @@ #: c/c-parser.c:10745 c/c-parser.c:10798 c/c-parser.c:10814 c/c-parser.c:10860 #: c/c-parser.c:11496 c/c-parser.c:11537 c/c-parser.c:13445 c/c-parser.c:13681 #: c/c-parser.c:15544 c/c-parser.c:18218 c/gimple-parser.c:1058 -#: c/gimple-parser.c:1096 cp/parser.c:28487 cp/parser.c:31013 -#: cp/parser.c:31043 cp/parser.c:31113 cp/parser.c:33230 cp/parser.c:38350 +#: c/gimple-parser.c:1096 cp/parser.c:28484 cp/parser.c:31010 +#: cp/parser.c:31040 cp/parser.c:31110 cp/parser.c:33227 cp/parser.c:38347 #, gcc-internal-format msgid "expected identifier" msgstr "se esperaba un identificador" -#: c/c-parser.c:2995 cp/parser.c:18384 +#: c/c-parser.c:2995 cp/parser.c:18381 #, gcc-internal-format msgid "comma at end of enumerator list" msgstr "coma al final de la lista de enumeradores" @@ -35301,12 +35350,12 @@ msgid "expected statement" msgstr "se esperaba una declaración" -#: c/c-parser.c:5639 cp/parser.c:12516 +#: c/c-parser.c:5639 cp/parser.c:12513 #, gcc-internal-format msgid "suggest braces around empty body in an % statement" msgstr "se sugieren llaves alrededor del cuerpo vacío en una declaración %" -#: c/c-parser.c:5681 cp/parser.c:12519 +#: c/c-parser.c:5681 cp/parser.c:12516 #, gcc-internal-format msgid "suggest braces around empty body in an % statement" msgstr "se sugieren llaves alrededor del cuerpo vacío en una declaración %" @@ -35657,7 +35706,7 @@ msgid "%<__builtin_complex%> operands of different types" msgstr "los operandos de %<__builtin_complex%> son de tipos diferentes" -#: c/c-parser.c:8891 cp/parser.c:6918 +#: c/c-parser.c:8891 cp/parser.c:6921 #, gcc-internal-format msgid "wrong number of arguments to %<__builtin_shuffle%>" msgstr "número erróneo de argumentos para %<__builtin_shuffle%>" @@ -35717,76 +35766,76 @@ msgid "no type or storage class may be specified here," msgstr "ninguna clase de almacenamiento o tipo se puede especificar aquí," -#: c/c-parser.c:10661 c/c-parser.c:10718 cp/parser.c:31073 +#: c/c-parser.c:10661 c/c-parser.c:10718 cp/parser.c:31070 #, gcc-internal-format msgid "unknown property attribute" msgstr "atributo de propiedad desconocido" -#: c/c-parser.c:10682 cp/parser.c:31033 +#: c/c-parser.c:10682 cp/parser.c:31030 #, gcc-internal-format msgid "missing %<=%> (after % attribute)" msgstr "falta un %<=%> (después del atributo %)" -#: c/c-parser.c:10685 cp/parser.c:31036 +#: c/c-parser.c:10685 cp/parser.c:31033 #, gcc-internal-format msgid "missing %<=%> (after % attribute)" msgstr "falta un %<=%> (después del atributo %)" -#: c/c-parser.c:10699 cp/parser.c:31051 +#: c/c-parser.c:10699 cp/parser.c:31048 #, gcc-internal-format msgid "the % attribute may only be specified once" msgstr "el atributo % sólo se puede especificar una vez" -#: c/c-parser.c:10704 cp/parser.c:31057 +#: c/c-parser.c:10704 cp/parser.c:31054 #, gcc-internal-format msgid "setter name must terminate with %<:%>" msgstr "el nombre del setter debe terminar con %<:%>" -#: c/c-parser.c:10711 cp/parser.c:31065 +#: c/c-parser.c:10711 cp/parser.c:31062 #, gcc-internal-format msgid "the % attribute may only be specified once" msgstr "el atributo % sólo se puede especificar una vez" -#: c/c-parser.c:10905 cp/parser.c:38674 +#: c/c-parser.c:10905 cp/parser.c:38671 #, gcc-internal-format msgid "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a non-negative integral constant less than %u" msgstr "%<#pragma GCC unroll%> requiere una expresión de asignación que evaluada dé una constante entera no negativa menor que %u" #: c/c-parser.c:10949 c/c-parser.c:16582 c/c-parser.c:16840 c/c-parser.c:16899 -#: c/c-parser.c:16983 cp/parser.c:36004 cp/parser.c:36298 cp/parser.c:36386 -#: cp/parser.c:36457 cp/parser.c:38721 cp/parser.c:38736 cp/parser.c:38752 -#: cp/parser.c:38768 cp/parser.c:38784 cp/parser.c:38811 cp/parser.c:38824 -#: cp/parser.c:38847 cp/parser.c:38860 +#: c/c-parser.c:16983 cp/parser.c:36001 cp/parser.c:36295 cp/parser.c:36383 +#: cp/parser.c:36454 cp/parser.c:38718 cp/parser.c:38733 cp/parser.c:38749 +#: cp/parser.c:38765 cp/parser.c:38781 cp/parser.c:38808 cp/parser.c:38821 +#: cp/parser.c:38844 cp/parser.c:38857 #, gcc-internal-format msgid "%<#pragma %s%> may only be used in compound statements" msgstr "%<#pragma %s%> sólo se puede usar en declaraciones compuestas" -#: c/c-parser.c:10972 cp/parser.c:38837 +#: c/c-parser.c:10972 cp/parser.c:38834 #, gcc-internal-format msgid "%<#pragma acc routine%> must be at file scope" msgstr "%<#pragma acc routine%> debe estar en el alcance del fichero" -#: c/c-parser.c:11050 cp/parser.c:38918 +#: c/c-parser.c:11050 cp/parser.c:38915 #, gcc-internal-format msgid "%<#pragma omp section%> may only be used in %<#pragma omp sections%> construct" msgstr "%<#pragma omp section%> sólo se puede usar en construcciones %<#pragma omp sections%>" -#: c/c-parser.c:11074 c/c-parser.c:11098 cp/parser.c:38947 cp/parser.c:38980 +#: c/c-parser.c:11074 c/c-parser.c:11098 cp/parser.c:38944 cp/parser.c:38977 #, gcc-internal-format msgid "for, while or do statement expected" msgstr "se esperaba una declaración for, while o do" -#: c/c-parser.c:11111 cp/parser.c:38711 +#: c/c-parser.c:11111 cp/parser.c:38708 #, gcc-internal-format msgid "%<#pragma GCC pch_preprocess%> must be first" msgstr "%<#pragma GCC pch_preprocess%> debe ser primero" -#: c/c-parser.c:11421 cp/parser.c:31457 +#: c/c-parser.c:11421 cp/parser.c:31454 #, gcc-internal-format msgid "too many %qs clauses" msgstr "demasiadas cláusulas %qs" -#: c/c-parser.c:11443 cp/parser.c:31994 +#: c/c-parser.c:11443 cp/parser.c:31991 #, gcc-internal-format msgid "expected integer expression before ')'" msgstr "se esperaba una expresión entera delante de ')'" @@ -35801,53 +35850,53 @@ msgid "%qD is not a variable" msgstr "%qD no es una variable" -#: c/c-parser.c:11746 cp/semantics.c:6808 +#: c/c-parser.c:11746 cp/semantics.c:6811 #, gcc-internal-format msgid "%qD is not a pointer variable" msgstr "%qD no es una variable puntero" -#: c/c-parser.c:11788 cp/parser.c:32073 +#: c/c-parser.c:11788 cp/parser.c:32070 #, gcc-internal-format msgid "collapse argument needs positive constant integer expression" msgstr "el argumento de collapse necesita una expresión entera constante positiva" -#: c/c-parser.c:11865 cp/parser.c:32137 +#: c/c-parser.c:11865 cp/parser.c:32134 #, gcc-internal-format msgid "expected % or %" msgstr "se esperaba % o %" -#: c/c-parser.c:11867 cp/parser.c:32139 +#: c/c-parser.c:11867 cp/parser.c:32136 #, gcc-internal-format msgid "expected % or %" msgstr "se esperaba % o %" -#: c/c-parser.c:11968 cp/parser.c:32242 +#: c/c-parser.c:11968 cp/parser.c:32239 #, gcc-internal-format msgid "expected %, %, % or %" msgstr "se esperaba %, %, % o %" -#: c/c-parser.c:11988 c/c-parser.c:16892 c/c-parser.c:16976 cp/parser.c:32260 -#: cp/parser.c:36290 cp/parser.c:36378 +#: c/c-parser.c:11988 c/c-parser.c:16892 c/c-parser.c:16976 cp/parser.c:32257 +#: cp/parser.c:36287 cp/parser.c:36375 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:12035 cp/parser.c:32313 +#: c/c-parser.c:12035 cp/parser.c:32310 #, gcc-internal-format msgid "too many % clauses with %qs modifier" msgstr "demasiadas cláusulas % con el modificador %qs" -#: c/c-parser.c:12042 cp/parser.c:32320 +#: c/c-parser.c:12042 cp/parser.c:32317 #, gcc-internal-format msgid "too many % clauses" msgstr "demasiadas cláusulas %" -#: c/c-parser.c:12044 cp/parser.c:32322 +#: c/c-parser.c:12044 cp/parser.c:32319 #, gcc-internal-format msgid "too many % clauses without modifier" msgstr "demasiadas cláusulas % sin modificador" -#: c/c-parser.c:12050 cp/parser.c:32328 +#: c/c-parser.c:12050 cp/parser.c:32325 #, gcc-internal-format msgid "if any % clause has modifier, then all % clauses have to use modifier" msgstr "si alguna cláusula % tiene modificador, entonces todas las cláusulas % tienen que usar modificador" @@ -35869,84 +35918,84 @@ msgid "% value must be positive" msgstr "el valor de % debe ser positivo" -#: c/c-parser.c:12229 cp/semantics.c:6992 +#: c/c-parser.c:12229 cp/semantics.c:6995 #, gcc-internal-format msgid "% value must be positive" msgstr "el valor de % debe ser positivo" -#: c/c-parser.c:12276 cp/semantics.c:7021 +#: c/c-parser.c:12276 cp/semantics.c:7024 #, gcc-internal-format msgid "% value must be non-negative" msgstr "el valor de % debe ser no negativo" -#: c/c-parser.c:12341 c/c-parser.c:12347 cp/parser.c:32545 cp/parser.c:32552 +#: c/c-parser.c:12341 c/c-parser.c:12347 cp/parser.c:32542 cp/parser.c:32549 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:12355 c/c-parser.c:12361 cp/parser.c:32561 cp/parser.c:32568 +#: c/c-parser.c:12355 c/c-parser.c:12361 cp/parser.c:32558 cp/parser.c:32565 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:12425 cp/semantics.c:6299 +#: c/c-parser.c:12425 cp/semantics.c:6302 #, gcc-internal-format msgid "%qs expression must be integral" msgstr "la expresión %qs debe ser integral" -#: c/c-parser.c:12437 c/c-parser.c:12560 cp/semantics.c:6331 +#: c/c-parser.c:12437 c/c-parser.c:12560 cp/semantics.c:6334 #, gcc-internal-format msgid "%qs value must be positive" msgstr "el valor de %qs debe ser positivo" -#: c/c-parser.c:12499 cp/parser.c:31853 +#: c/c-parser.c:12499 cp/parser.c:31850 #, gcc-internal-format msgid "too many % arguments" msgstr "demasiados argumentos %" -#: c/c-parser.c:12533 cp/parser.c:31886 +#: c/c-parser.c:12533 cp/parser.c:31883 #, gcc-internal-format msgid "unexpected argument" msgstr "argumento inesperado" -#: c/c-parser.c:12699 cp/semantics.c:7120 +#: c/c-parser.c:12699 cp/semantics.c:7123 #, gcc-internal-format msgid "% argument needs positive integral constant" msgstr "el argumento de % necesita una constante entera positiva" -#: c/c-parser.c:12765 cp/parser.c:32626 +#: c/c-parser.c:12765 cp/parser.c:32623 #, fuzzy, gcc-internal-format #| msgid "collapse argument needs positive constant integer expression" msgid "ordered argument needs positive constant integer expression" msgstr "el argumento de collapse necesita una expresión entera constante positiva" -#: c/c-parser.c:12857 c/c-parser.c:17625 cp/parser.c:37643 +#: c/c-parser.c:12857 c/c-parser.c:17625 cp/parser.c:37640 #, gcc-internal-format msgid "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> or identifier" msgstr "se esperaba %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, %<||%> o identificador" -#: c/c-parser.c:12967 cp/parser.c:32840 +#: c/c-parser.c:12967 cp/parser.c:32837 #, gcc-internal-format msgid "both % and % modifiers specified" msgstr "se usaron al mismo tiempo los modificadores % y %" -#: c/c-parser.c:13021 cp/parser.c:32856 +#: c/c-parser.c:13021 cp/parser.c:32853 #, gcc-internal-format msgid "schedule % does not take a % parameter" msgstr "el planificador % no toma un parámetro %" -#: c/c-parser.c:13025 cp/parser.c:32859 +#: c/c-parser.c:13025 cp/parser.c:32856 #, gcc-internal-format msgid "schedule % does not take a % parameter" msgstr "el planificador % no toma un parámetro %" -#: c/c-parser.c:13037 cp/semantics.c:6389 +#: c/c-parser.c:13037 cp/semantics.c:6392 #, fuzzy, gcc-internal-format #| msgid "% value must be positive" msgid "chunk size value must be positive" msgstr "el valor de % debe ser positivo" -#: c/c-parser.c:13060 cp/parser.c:32879 +#: c/c-parser.c:13060 cp/parser.c:32876 #, gcc-internal-format msgid "invalid schedule kind" msgstr "género de planificador no válido" @@ -35956,12 +36005,12 @@ msgid "% value must be positive" msgstr "el valor de % debe ser positivo" -#: c/c-parser.c:13226 cp/semantics.c:6479 +#: c/c-parser.c:13226 cp/semantics.c:6482 #, gcc-internal-format msgid "% value must be positive" msgstr "el valor de % debe ser positivo" -#: c/c-parser.c:13271 cp/semantics.c:6589 +#: c/c-parser.c:13271 cp/semantics.c:6592 #, fuzzy, gcc-internal-format #| msgid "%Hcollapse argument needs positive constant integer expression" msgid "% clause alignment expression must be positive constant integer expression" @@ -35985,17 +36034,17 @@ msgid "% clause expression must be positive constant integer expression" msgstr "%Hel argumento de collapse necesita ser una expresión entera constante positiva" -#: c/c-parser.c:13584 cp/parser.c:33374 cp/parser.c:33599 +#: c/c-parser.c:13584 cp/parser.c:33371 cp/parser.c:33596 #, gcc-internal-format msgid "invalid depend kind" msgstr "tipo de dependencia no válida" -#: c/c-parser.c:13669 cp/parser.c:33447 +#: c/c-parser.c:13669 cp/parser.c:33444 #, gcc-internal-format msgid "invalid map kind" msgstr "tipo de mapa no válida" -#: c/c-parser.c:13767 cp/parser.c:33546 +#: c/c-parser.c:13767 cp/parser.c:33543 #, fuzzy, gcc-internal-format #| msgid "invalid schedule kind" msgid "invalid dist_schedule kind" @@ -36007,67 +36056,67 @@ msgid "invalid proc_bind kind" msgstr "género de planificador no válido" -#: c/c-parser.c:14059 cp/parser.c:33825 +#: c/c-parser.c:14059 cp/parser.c:33822 #, gcc-internal-format msgid "expected %<#pragma acc%> clause" msgstr "se esperaba una cláusula %<#pragma acc%>" -#: c/c-parser.c:14070 c/c-parser.c:14345 cp/parser.c:33836 cp/parser.c:34143 +#: c/c-parser.c:14070 c/c-parser.c:14345 cp/parser.c:33833 cp/parser.c:34140 #, gcc-internal-format msgid "%qs is not valid for %qs" msgstr "%qs no es válido para %qs" -#: c/c-parser.c:14214 cp/parser.c:34010 +#: c/c-parser.c:14214 cp/parser.c:34007 #, gcc-internal-format msgid "%qs must be the first clause of %qs" msgstr "%qs debe ser la primera cláusula de %qs" -#: c/c-parser.c:14334 cp/parser.c:34132 +#: c/c-parser.c:14334 cp/parser.c:34129 #, gcc-internal-format msgid "expected %<#pragma omp%> clause" msgstr "se esperaba una cláusula %<#pragma omp%>" -#: c/c-parser.c:14472 cp/parser.c:36803 +#: c/c-parser.c:14472 cp/parser.c:36800 #, gcc-internal-format msgid "no valid clauses specified in %<#pragma acc declare%>" msgstr "no hay cláusulas válidas especificadas en %<#pragma acc declare%>" -#: c/c-parser.c:14482 cp/parser.c:36813 +#: c/c-parser.c:14482 cp/parser.c:36810 #, gcc-internal-format msgid "array section in %<#pragma acc declare%>" msgstr "sección de matriz en %<#pragma acc declare%>" -#: c/c-parser.c:14502 cp/parser.c:36833 +#: c/c-parser.c:14502 cp/parser.c:36830 #, gcc-internal-format msgid "%qD must be a global variable in %<#pragma acc declare link%>" msgstr "%qD debe ser una variable global en %<#pragma acc declare link%>" -#: c/c-parser.c:14513 cp/parser.c:36844 +#: c/c-parser.c:14513 cp/parser.c:36841 #, gcc-internal-format msgid "invalid OpenACC clause at file scope" msgstr "cláusula OpenACC no válida en el alcance del fichero" -#: c/c-parser.c:14520 cp/parser.c:36851 +#: c/c-parser.c:14520 cp/parser.c:36848 #, gcc-internal-format msgid "invalid use of % variable %qD in %<#pragma acc declare%>" msgstr "uso no válido de la variable % %qD en %<#pragma acc declare%>" -#: c/c-parser.c:14528 cp/parser.c:36859 +#: c/c-parser.c:14528 cp/parser.c:36856 #, gcc-internal-format msgid "invalid use of % variable %qD in %<#pragma acc declare%>" msgstr "uso no válido de la variable % %qD en %<#pragma acc declare%>" -#: c/c-parser.c:14540 cp/parser.c:36871 +#: c/c-parser.c:14540 cp/parser.c:36868 #, gcc-internal-format msgid "variable %qD used more than once with %<#pragma acc declare%>" msgstr "La variable %qD se usa más de una vez con %<#pragma acc declare%>" -#: c/c-parser.c:14632 cp/parser.c:36957 +#: c/c-parser.c:14632 cp/parser.c:36954 #, gcc-internal-format msgid "expected % after %<#pragma acc %s%>" msgstr "se esperaba % después de %<#pragma acc %s%>" -#: c/c-parser.c:14648 cp/parser.c:36974 +#: c/c-parser.c:14648 cp/parser.c:36971 #, gcc-internal-format msgid "%<#pragma acc %s data%> has no data movement clause" msgstr "%<#pragma acc %s data%> no tiene cláusula de movimiento de datos" @@ -36082,7 +36131,7 @@ msgid "expected function name" msgstr "se esperaba nombre de función" -#: c/c-parser.c:14893 cp/parser.c:38064 +#: c/c-parser.c:14893 cp/parser.c:38061 #, gcc-internal-format msgid "%qD does not refer to a function" msgstr "%qD no hace referencia a una función" @@ -36092,42 +36141,42 @@ msgid "%<#pragma acc routine%> not immediately followed by function declaration or definition" msgstr "%<#pragma acc routine%> no está inmediatamente seguido de una declaración o definición de función" -#: c/c-parser.c:14953 cp/parser.c:38118 cp/parser.c:38160 +#: c/c-parser.c:14953 cp/parser.c:38115 cp/parser.c:38157 #, gcc-internal-format msgid "%<#pragma acc routine%> not immediately followed by a single function declaration or definition" msgstr "%<#pragma acc routine%> no está inmediatamente seguido de una única declaración o definición de función" -#: c/c-parser.c:14970 cp/parser.c:38174 +#: c/c-parser.c:14970 cp/parser.c:38171 #, gcc-internal-format msgid "%<#pragma acc routine%> already applied to %qD" msgstr "%<#pragma acc routine%> ya se le aplicó a %qD" -#: c/c-parser.c:14979 cp/parser.c:38183 +#: c/c-parser.c:14979 cp/parser.c:38180 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before use" msgstr "%<#pragma acc routine%> debe aplicarse antes de uso" -#: c/c-parser.c:14980 cp/parser.c:38184 +#: c/c-parser.c:14980 cp/parser.c:38181 #, gcc-internal-format msgid "%<#pragma acc routine%> must be applied before definition" msgstr "%<#pragma acc routine%> debe aplicarse antes de definición" -#: c/c-parser.c:15023 cp/parser.c:37152 +#: c/c-parser.c:15023 cp/parser.c:37149 #, gcc-internal-format msgid "%<#pragma acc update%> must contain at least one % or % or % clause" msgstr "%<#pragma acc update%> debe contener al menos una cláusula %, % o %" -#: c/c-parser.c:15435 cp/parser.c:34511 cp/parser.c:34537 +#: c/c-parser.c:15435 cp/parser.c:34508 cp/parser.c:34534 #, gcc-internal-format msgid "invalid form of %<#pragma omp atomic%>" msgstr "forma no válida de %<#pragma omp atomic%>" -#: c/c-parser.c:15439 cp/parser.c:34568 cp/parser.c:34584 +#: c/c-parser.c:15439 cp/parser.c:34565 cp/parser.c:34581 #, gcc-internal-format msgid "invalid operator for %<#pragma omp atomic%>" msgstr "operador no válido para %<#pragma omp atomic%>" -#: c/c-parser.c:15488 cp/semantics.c:8401 cp/semantics.c:8411 +#: c/c-parser.c:15488 cp/semantics.c:8404 cp/semantics.c:8414 #, gcc-internal-format msgid "%<#pragma omp atomic capture%> uses two different expressions for memory" msgstr "%<#pragma omp atomic capture%> usa dos expresiones diferentes para la memoria" @@ -36137,22 +36186,22 @@ msgid "expected %<(%> or end of line" msgstr "se esperaba %<(%> o fin de línea" -#: c/c-parser.c:15619 cp/parser.c:35103 +#: c/c-parser.c:15619 cp/parser.c:35100 #, gcc-internal-format msgid "% clause parameter is less than %" msgstr "el parámetro de la cláusula % es menor que %" -#: c/c-parser.c:15630 cp/parser.c:35114 +#: c/c-parser.c:15630 cp/parser.c:35111 #, gcc-internal-format msgid "% clause may not be specified together with % clause with a parameter" msgstr "la cláusula % no puede especificarse junto con la cláusula % con un parámetro" -#: c/c-parser.c:15648 cp/parser.c:35141 +#: c/c-parser.c:15648 cp/parser.c:35138 #, gcc-internal-format msgid "for statement expected" msgstr "se esperaba una declaración for" -#: c/c-parser.c:15718 cp/semantics.c:8066 cp/semantics.c:8153 +#: c/c-parser.c:15718 cp/semantics.c:8069 cp/semantics.c:8156 #, gcc-internal-format msgid "expected iteration declaration or initialization" msgstr "se esperaba una declaración de iteración o una inicialización" @@ -36162,73 +36211,73 @@ msgid "not enough perfectly nested loops" msgstr "no hay suficientes bucles perfectamente anidados" -#: c/c-parser.c:15862 cp/parser.c:35364 +#: c/c-parser.c:15862 cp/parser.c:35361 #, gcc-internal-format msgid "collapsed loops not perfectly nested" msgstr "los bucles colapsados no están perfectamente anidados" -#: c/c-parser.c:15909 cp/parser.c:35184 cp/parser.c:35226 cp/pt.c:16385 +#: c/c-parser.c:15909 cp/parser.c:35181 cp/parser.c:35223 cp/pt.c:16407 #, gcc-internal-format msgid "iteration variable %qD should not be firstprivate" msgstr "la variable de iteración %qD no debe ser firstprivate" -#: c/c-parser.c:16000 cp/parser.c:35437 +#: c/c-parser.c:16000 cp/parser.c:35434 #, gcc-internal-format msgid "% clause with parameter may not be specified on %qs construct" msgstr "la cláusula % con parámetro no se puede especificar en la construcción %qs" -#: c/c-parser.c:16166 cp/parser.c:35600 +#: c/c-parser.c:16166 cp/parser.c:35597 #, fuzzy, gcc-internal-format #| msgid "%<#pragma omp barrier%> may only be used in compound statements" msgid "%<#pragma omp ordered%> with % clause may only be used in compound statements" msgstr "%<#pragma omp barrier%> sólo se puede usar en declaraciones compuestas" -#: c/c-parser.c:16374 cp/parser.c:35799 +#: c/c-parser.c:16374 cp/parser.c:35796 #, gcc-internal-format msgid "expected % after %qs" msgstr "se esperaba % después de %qs" -#: c/c-parser.c:16573 cp/parser.c:35995 +#: c/c-parser.c:16573 cp/parser.c:35992 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:16793 cp/parser.c:36232 +#: c/c-parser.c:16793 cp/parser.c:36229 #, gcc-internal-format msgid "%<#pragma omp target data%> with map-type other than %, %, % or % on % clause" msgstr "%<#pragma omp target data%> con map-type distinto de %, %, % y % en la cláusula %" -#: c/c-parser.c:16806 cp/parser.c:36245 +#: c/c-parser.c:16806 cp/parser.c:36242 #, gcc-internal-format msgid "%<#pragma omp target data%> must contain at least one % clause" msgstr "%<#pragma omp target data%> debe contener al menos una cláusula %" -#: c/c-parser.c:16853 cp/parser.c:36470 +#: c/c-parser.c:16853 cp/parser.c:36467 #, gcc-internal-format msgid "%<#pragma omp target update%> must contain at least one % or % clauses" msgstr "%<#pragma omp target update%> debe contener al menos una cláusula % o %" -#: c/c-parser.c:16925 cp/parser.c:36325 +#: c/c-parser.c:16925 cp/parser.c:36322 #, gcc-internal-format msgid "%<#pragma omp target enter data%> with map-type other than % or % on % clause" msgstr "%<#pragma omp target enter data%> con map-type distinto de % y % en la cláusula %" -#: c/c-parser.c:16937 cp/parser.c:36337 +#: c/c-parser.c:16937 cp/parser.c:36334 #, gcc-internal-format msgid "%<#pragma omp target enter data%> must contain at least one % clause" msgstr "%<#pragma omp target enter data%> debe contener al menos una cláusula %" -#: c/c-parser.c:17011 cp/parser.c:36414 +#: c/c-parser.c:17011 cp/parser.c:36411 #, gcc-internal-format msgid "%<#pragma omp target exit data%> with map-type other than %, % or % on % clause" msgstr "%<#pragma omp target exit data%> con map-type distinto de %, % y % en la cláusula %" -#: c/c-parser.c:17024 cp/parser.c:36427 +#: c/c-parser.c:17024 cp/parser.c:36424 #, gcc-internal-format msgid "%<#pragma omp target exit data%> must contain at least one % clause" msgstr "%<#pragma omp target exit data%> debe contener al menos una cláusula %" -#: c/c-parser.c:17238 cp/parser.c:36680 +#: c/c-parser.c:17238 cp/parser.c:36677 #, gcc-internal-format msgid "%<#pragma omp target%> with map-type other than %, %, % or % on % clause" msgstr "%<#pragma omp target%> con map-type distinto de %, %, % y % en la cláusula %" @@ -36248,32 +36297,32 @@ msgid "%<#pragma omp declare simd%> not immediately followed by a function declaration or definition" msgstr "%<#pragma omp declare simd%> no inmediatamente seguida de una declaración o definición de función" -#: c/c-parser.c:17395 cp/parser.c:37273 +#: c/c-parser.c:17395 cp/parser.c:37270 #, gcc-internal-format msgid "%<#pragma omp declare simd%> not immediately followed by a single function declaration or definition" msgstr "%<#pragma omp declare simd%> no inmediatamente seguida de una declaración o definición de función sencilla" -#: c/c-parser.c:17474 cp/parser.c:37343 +#: c/c-parser.c:17474 cp/parser.c:37340 #, gcc-internal-format msgid "%<#pragma omp declare target%> with clauses in between %<#pragma omp declare target%> without clauses and %<#pragma omp end declare target%>" msgstr "%<#pragma omp declare simd%> con cláusulas en medio de %<#pragma omp declare target%> sin cláusulas y %<#pragma omp end declare target%>" -#: c/c-parser.c:17493 cp/parser.c:37362 +#: c/c-parser.c:17493 cp/parser.c:37359 #, gcc-internal-format msgid "%qD specified both in declare target % and % clauses" msgstr "" -#: c/c-parser.c:17534 cp/parser.c:37409 +#: c/c-parser.c:17534 cp/parser.c:37406 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:17541 cp/parser.c:37416 +#: c/c-parser.c:17541 cp/parser.c:37413 #, gcc-internal-format msgid "expected %" msgstr "se esperaba %" -#: c/c-parser.c:17547 cp/parser.c:37423 +#: c/c-parser.c:17547 cp/parser.c:37420 #, gcc-internal-format msgid "%<#pragma omp end declare target%> without corresponding %<#pragma omp declare target%>" msgstr "%<#pragma omp end declare target%> sin su correspondiente %<#pragma omp declare target%>" @@ -36328,47 +36377,47 @@ msgid "one of the initializer call arguments should be %<&omp_priv%>" msgstr "" -#: c/c-parser.c:17947 cp/parser.c:37868 +#: c/c-parser.c:17947 cp/parser.c:37865 #, gcc-internal-format msgid "expected % or % or %" msgstr "se esperaba %, % o %" -#: c/c-parser.c:18162 cp/semantics.c:7531 +#: c/c-parser.c:18162 cp/semantics.c:7534 #, gcc-internal-format msgid "%qE declared % after first use" msgstr "%qE se declaró % después del primer uso" -#: c/c-parser.c:18164 cp/semantics.c:7533 +#: c/c-parser.c:18164 cp/semantics.c:7536 #, gcc-internal-format msgid "automatic variable %qE cannot be %" msgstr "la variable automática %qE no puede ser %" -#: c/c-parser.c:18168 cp/semantics.c:7535 +#: c/c-parser.c:18168 cp/semantics.c:7538 #, gcc-internal-format msgid "% %qE has incomplete type" msgstr "% %qE tiene tipo incompleto" -#: c/c-parser.c:18368 cp/parser.c:38565 +#: c/c-parser.c:18368 cp/parser.c:38562 #, gcc-internal-format msgid "%<__transaction_cancel%> without transactional memory support enabled" msgstr "%<__transaction_cancel%> sin activar el soporte para memoria transaccional" -#: c/c-parser.c:18374 cp/parser.c:38571 +#: c/c-parser.c:18374 cp/parser.c:38568 #, gcc-internal-format msgid "%<__transaction_cancel%> within a %<__transaction_relaxed%>" msgstr "%<__transaction_cancel%> dentro de un %<__transaction_relaxed%>" -#: c/c-parser.c:18383 cp/parser.c:38580 +#: c/c-parser.c:18383 cp/parser.c:38577 #, gcc-internal-format msgid "outer %<__transaction_cancel%> not within outer %<__transaction_atomic%>" msgstr "%<__transaction_cancel%> más externo no está dentro del %<__transaction_atomic%> más externo" -#: c/c-parser.c:18385 cp/parser.c:38583 +#: c/c-parser.c:18385 cp/parser.c:38580 #, gcc-internal-format msgid " or a % function" msgstr " o una función %" -#: c/c-parser.c:18391 cp/parser.c:38589 +#: c/c-parser.c:18391 cp/parser.c:38586 #, gcc-internal-format msgid "%<__transaction_cancel%> not within %<__transaction_atomic%>" msgstr "%<__transaction_cancel%> no está dentro de %<__transaction_atomic%>" @@ -36383,7 +36432,7 @@ msgid "%qD has an incomplete type %qT" msgstr "%qD tiene un tipo de dato incompleto %qT" -#: c/c-typeck.c:237 c/c-typeck.c:9994 c/c-typeck.c:10036 cp/call.c:4147 +#: c/c-typeck.c:237 c/c-typeck.c:9999 c/c-typeck.c:10041 cp/call.c:4147 #, gcc-internal-format msgid "invalid use of void expression" msgstr "uso no válido de la expresión void" @@ -36459,12 +36508,12 @@ msgid "converting an array compound literal to a pointer is ill-formed in C++" msgstr "la conversión de una literal compuesta de matriz a un puntero está malformada en C++" -#: c/c-typeck.c:2417 c/c-typeck.c:8641 +#: c/c-typeck.c:2417 c/c-typeck.c:8646 #, gcc-internal-format msgid "%qT has no member named %qE; did you mean %qE?" msgstr "%qT no tiene un miembro llamado %qE; ¿quiso decir %qE?" -#: c/c-typeck.c:2421 c/c-typeck.c:8645 +#: c/c-typeck.c:2421 c/c-typeck.c:8650 #, gcc-internal-format msgid "%qT has no member named %qE" msgstr "%qT no tiene un miembro llamado %qE" @@ -36664,460 +36713,460 @@ msgid "pointer to a function used in subtraction" msgstr "se utilizó un puntero a una función en la sustracción" -#: c/c-typeck.c:3847 +#: c/c-typeck.c:3852 #, gcc-internal-format msgid "arithmetic on pointer to an incomplete type" msgstr "aritmética en puntero a un tipo de dato incompleto" -#: c/c-typeck.c:3852 cp/typeck.c:5562 +#: c/c-typeck.c:3857 cp/typeck.c:5562 #, gcc-internal-format msgid "arithmetic on pointer to an empty aggregate" msgstr "aritmética en puntero a un agregado vacío" -#: c/c-typeck.c:4283 +#: c/c-typeck.c:4288 #, gcc-internal-format msgid "%<~%> on a boolean expression" msgstr "%<~%> en una expresión booleana" -#: c/c-typeck.c:4287 +#: c/c-typeck.c:4292 #, gcc-internal-format msgid "did you mean to use logical not?" msgstr "¿pretendía utilizar la negación lógica?" -#: c/c-typeck.c:4296 +#: c/c-typeck.c:4301 #, gcc-internal-format msgid "ISO C does not support %<~%> for complex conjugation" msgstr "ISO C no admite %<~%> para conjugaciones complejas" -#: c/c-typeck.c:4335 +#: c/c-typeck.c:4340 #, gcc-internal-format msgid "wrong type argument to unary exclamation mark" msgstr "argumento de tipo erróneo para el signo de exclamación unario" -#: c/c-typeck.c:4393 +#: c/c-typeck.c:4398 #, gcc-internal-format msgid "increment of enumeration value is invalid in C++" msgstr "el incremento de un valor de enumeración es no válido en C++" -#: c/c-typeck.c:4396 +#: c/c-typeck.c:4401 #, gcc-internal-format msgid "decrement of enumeration value is invalid in C++" msgstr "el decremento de un valor de enumeración es no válido en C++" -#: c/c-typeck.c:4403 +#: c/c-typeck.c:4408 #, gcc-internal-format msgid "increment of a boolean expression" msgstr "incremento de una expresión booleana" -#: c/c-typeck.c:4406 +#: c/c-typeck.c:4411 #, gcc-internal-format msgid "decrement of a boolean expression" msgstr "decremento de una expresión booleana" -#: c/c-typeck.c:4422 +#: c/c-typeck.c:4427 #, gcc-internal-format msgid "ISO C does not support %<++%> and %<--%> on complex types" msgstr "ISO C no admite %<++%> y %<--%> en tipos complejos" -#: c/c-typeck.c:4447 c/c-typeck.c:4481 +#: c/c-typeck.c:4452 c/c-typeck.c:4486 #, gcc-internal-format msgid "wrong type argument to increment" msgstr "argumento de tipo erróneo para el incremento" -#: c/c-typeck.c:4449 c/c-typeck.c:4484 +#: c/c-typeck.c:4454 c/c-typeck.c:4489 #, gcc-internal-format msgid "wrong type argument to decrement" msgstr "argumento de tipo erróneo para el decremento" -#: c/c-typeck.c:4469 +#: c/c-typeck.c:4474 #, gcc-internal-format msgid "increment of pointer to an incomplete type %qT" msgstr "incremento de puntero a un tipo incompleto %qT" -#: c/c-typeck.c:4473 +#: c/c-typeck.c:4478 #, gcc-internal-format msgid "decrement of pointer to an incomplete type %qT" msgstr "decremento de puntero a un tipo incompleto %qT" -#: c/c-typeck.c:4577 +#: c/c-typeck.c:4582 #, gcc-internal-format msgid "taking address of expression of type %" msgstr "se toma la dirección de la expresión de tipo %" -#: c/c-typeck.c:4636 +#: c/c-typeck.c:4641 #, gcc-internal-format msgid "cannot take address of bit-field %qD" msgstr "no se puede tomar la dirección del campo de bits %qD" -#: c/c-typeck.c:4649 +#: c/c-typeck.c:4654 #, fuzzy, gcc-internal-format #| msgid "cannot take the address of an unaligned member" msgid "cannot take address of scalar with reverse storage order" msgstr "no se puede tomar la dirección de un miembro desalineado" -#: c/c-typeck.c:4657 +#: c/c-typeck.c:4662 #, fuzzy, gcc-internal-format #| msgid "address of register variable %qD requested" msgid "address of array with reverse scalar storage order requested" msgstr "se solicitó la dirección de la variable de registro %qD" -#: c/c-typeck.c:4838 +#: c/c-typeck.c:4843 #, gcc-internal-format msgid "global register variable %qD used in nested function" msgstr "se usó la variable de registro global %qD en la función anidada" -#: c/c-typeck.c:4841 +#: c/c-typeck.c:4846 #, gcc-internal-format msgid "register variable %qD used in nested function" msgstr "se usó la variable de registro %qD en la función anidada" -#: c/c-typeck.c:4846 +#: c/c-typeck.c:4851 #, gcc-internal-format msgid "address of global register variable %qD requested" msgstr "se solicitó la dirección de la variable de registro global %qD" -#: c/c-typeck.c:4848 +#: c/c-typeck.c:4853 #, gcc-internal-format msgid "address of register variable %qD requested" msgstr "se solicitó la dirección de la variable de registro %qD" -#: c/c-typeck.c:4951 +#: c/c-typeck.c:4956 #, gcc-internal-format msgid "non-lvalue array in conditional expression" msgstr "matriz no-lvaluada en la expresión condicional" -#: c/c-typeck.c:5033 +#: c/c-typeck.c:5038 #, gcc-internal-format msgid "implicit conversion from %qT to %qT to match other result of conditional" msgstr "conversión implícita de %qT a %qT para coincidir con otro resultado del condicional" -#: c/c-typeck.c:5092 c/c-typeck.c:5098 +#: c/c-typeck.c:5097 c/c-typeck.c:5103 #, gcc-internal-format msgid "operand of ?: changes signedness from %qT to %qT due to unsignedness of other operand" msgstr "" -#: c/c-typeck.c:5115 +#: c/c-typeck.c:5120 #, gcc-internal-format msgid "ISO C forbids conditional expr with only one void side" msgstr "ISO C prohíbe una expresión condicional con sólo un lado void" -#: c/c-typeck.c:5132 +#: c/c-typeck.c:5137 #, gcc-internal-format msgid "pointers to disjoint address spaces used in conditional expression" msgstr "se usaron punteros a espacios de direcciones discontinuos en la expresión condicional" -#: c/c-typeck.c:5143 c/c-typeck.c:5160 +#: c/c-typeck.c:5148 c/c-typeck.c:5165 #, gcc-internal-format msgid "pointer to array loses qualifier in conditional expression" msgstr "el puntero a matriz pierde el calificador en la expresión condicional" -#: c/c-typeck.c:5148 c/c-typeck.c:5165 +#: c/c-typeck.c:5153 c/c-typeck.c:5170 #, gcc-internal-format msgid "ISO C forbids conditional expr between % and function pointer" msgstr "ISO C prohíbe expresiones condicionales entre % y punteros de función" -#: c/c-typeck.c:5178 +#: c/c-typeck.c:5183 #, gcc-internal-format msgid "pointer type mismatch in conditional expression" msgstr "los tipos de datos punteros no coinciden en la expresión condicional" -#: c/c-typeck.c:5187 c/c-typeck.c:5198 +#: c/c-typeck.c:5192 c/c-typeck.c:5203 #, gcc-internal-format msgid "pointer/integer type mismatch in conditional expression" msgstr "los tipos de datos punteros/enteros no coinciden en la expresión condicional" -#: c/c-typeck.c:5336 +#: c/c-typeck.c:5341 #, gcc-internal-format msgid "left-hand operand of comma expression has no effect" msgstr "el operador del lado izquierdo de la expresión coma no tiene efecto" -#: c/c-typeck.c:5354 c/c-typeck.c:10636 +#: c/c-typeck.c:5359 c/c-typeck.c:10641 #, gcc-internal-format msgid "right-hand operand of comma expression has no effect" msgstr "el operador del lado derecho de la expresión coma no tiene efecto" -#: c/c-typeck.c:5423 +#: c/c-typeck.c:5428 msgid "cast adds %q#v qualifier to function type" msgstr "la conversión agrega el calificador %q#v al tipo de función" -#: c/c-typeck.c:5429 +#: c/c-typeck.c:5434 msgid "cast discards %qv qualifier from pointer target type" msgstr "la conversión descarta el calificador %qv del tipo del destino del puntero" -#: c/c-typeck.c:5464 +#: c/c-typeck.c:5469 #, gcc-internal-format msgid "to be safe all intermediate pointers in cast from %qT to %qT must be % qualified" msgstr "para estar seguro todos los punteros intermedios en la conversión de %qT a %qT se deben calificar como %" -#: c/c-typeck.c:5554 +#: c/c-typeck.c:5559 #, gcc-internal-format msgid "cast specifies array type" msgstr "la conversión especifica el tipo matriz" -#: c/c-typeck.c:5560 +#: c/c-typeck.c:5565 #, gcc-internal-format msgid "cast specifies function type" msgstr "la conversión especifica el tipo función" -#: c/c-typeck.c:5575 +#: c/c-typeck.c:5580 #, gcc-internal-format msgid "ISO C forbids casting nonscalar to the same type" msgstr "ISO C prohíbe la conversión de un no escalar al mismo tipo" -#: c/c-typeck.c:5595 +#: c/c-typeck.c:5600 #, gcc-internal-format msgid "ISO C forbids casts to union type" msgstr "ISO C prohíbe la conversión al tipo union" -#: c/c-typeck.c:5605 +#: c/c-typeck.c:5610 #, gcc-internal-format msgid "cast to union type from type not present in union" msgstr "conversión a tipo union desde un tipo no presente en union" -#: c/c-typeck.c:5640 +#: c/c-typeck.c:5645 #, gcc-internal-format, gfc-internal-format msgid "cast to %s address space pointer from disjoint generic address space pointer" msgstr "conversión al puntero de espacio de direcciones %s desde un puntero de espacio de direcciones genérico discontinuo" -#: c/c-typeck.c:5645 +#: c/c-typeck.c:5650 #, gcc-internal-format, gfc-internal-format msgid "cast to generic address space pointer from disjoint %s address space pointer" msgstr "conversión a un puntero de espacio de direcciones genérico desde un puntero de espacio de direcciones %s discontinuo" -#: c/c-typeck.c:5650 +#: c/c-typeck.c:5655 #, gcc-internal-format, gfc-internal-format msgid "cast to %s address space pointer from disjoint %s address space pointer" msgstr "conversión a un puntero de espacio de direcciones %s desde un puntero de espacio de direcciones %s discontinuo" -#: c/c-typeck.c:5670 +#: c/c-typeck.c:5675 #, gcc-internal-format msgid "cast increases required alignment of target type" msgstr "la conversión incrementa la alineación requerida del tipo del destino" -#: c/c-typeck.c:5681 +#: c/c-typeck.c:5686 #, gcc-internal-format msgid "cast from pointer to integer of different size" msgstr "conversión de puntero a entero de tamaño diferente" -#: c/c-typeck.c:5686 +#: c/c-typeck.c:5691 #, gcc-internal-format msgid "cast from function call of type %qT to non-matching type %qT" msgstr "conversión desde una llamada a función de tipo %qT al tipo %qT que no coincide" -#: c/c-typeck.c:5695 cp/typeck.c:7811 +#: c/c-typeck.c:5700 cp/typeck.c:7811 #, gcc-internal-format msgid "cast to pointer from integer of different size" msgstr "conversión a puntero desde un entero de tamaño diferente" -#: c/c-typeck.c:5709 +#: c/c-typeck.c:5714 #, gcc-internal-format msgid "ISO C forbids conversion of function pointer to object pointer type" msgstr "ISO C prohíbe la conversión de un apuntador a función a un tipo de objeto apuntador" -#: c/c-typeck.c:5718 +#: c/c-typeck.c:5723 #, gcc-internal-format msgid "ISO C forbids conversion of object pointer to function pointer type" msgstr "ISO C prohíbe la conversión de objeto apuntador a un tipo de apuntador a función" -#: c/c-typeck.c:5728 +#: c/c-typeck.c:5733 #, gcc-internal-format msgid "cast between incompatible function types from %qT to %qT" msgstr "conversión entre tipos de función incompatibles desde %qT a %qT" -#: c/c-typeck.c:5815 +#: c/c-typeck.c:5820 #, gcc-internal-format msgid "defining a type in a cast is invalid in C++" msgstr "definir un tipo en una conversión es no válido en C++" -#: c/c-typeck.c:5856 +#: c/c-typeck.c:5861 #, gcc-internal-format msgid "assignment to expression with array type" msgstr "asignación a expresión con tipo matriz" -#: c/c-typeck.c:5982 +#: c/c-typeck.c:5987 #, gcc-internal-format msgid "enum conversion in assignment is invalid in C++" msgstr "conversión de enum en una asignación es no válido en C++" -#: c/c-typeck.c:6180 c/c-typeck.c:6202 c/c-typeck.c:6226 +#: c/c-typeck.c:6185 c/c-typeck.c:6207 c/c-typeck.c:6231 #, gcc-internal-format msgid "(near initialization for %qs)" msgstr "(cerca de la inicialización de %qs)" -#: c/c-typeck.c:6241 +#: c/c-typeck.c:6246 #, gcc-internal-format msgid "array initialized from parenthesized string constant" msgstr "matriz inicializada con una constante de cadena entre paréntesis" -#: c/c-typeck.c:6284 c/c-typeck.c:6476 c/c-typeck.c:6908 +#: c/c-typeck.c:6289 c/c-typeck.c:6481 c/c-typeck.c:6913 #, gcc-internal-format msgid "expected %qT but argument is of type %qT" msgstr "se esperaba %qT pero el argumento es de tipo %qT" -#: c/c-typeck.c:6471 +#: c/c-typeck.c:6476 #, gcc-internal-format msgid "enum conversion when passing argument %d of %qE is invalid in C++" msgstr "la conversión de enum al pasar el argumento %d de %qE es no válido en C++" -#: c/c-typeck.c:6480 +#: c/c-typeck.c:6485 #, gcc-internal-format msgid "enum conversion from %qT to %qT in assignment is invalid in C++" msgstr "la conversión de enum desde %qT a %qT en una asignación no es válida en C++" -#: c/c-typeck.c:6484 +#: c/c-typeck.c:6489 #, gcc-internal-format msgid "enum conversion from %qT to %qT in initialization is invalid in C++" msgstr "la conversión de enum desde %qT a %qT en una inicialización no es válida en C++" -#: c/c-typeck.c:6489 +#: c/c-typeck.c:6494 #, gcc-internal-format msgid "enum conversion from %qT to %qT in return is invalid in C++" msgstr "la conversión de enum desde %qT a %qT en un return no es válida en C++" -#: c/c-typeck.c:6523 +#: c/c-typeck.c:6528 #, gcc-internal-format msgid "cannot pass rvalue to reference parameter" msgstr "no se puede pasar un valor-r a un parámetro de referencia" -#: c/c-typeck.c:6656 c/c-typeck.c:6942 +#: c/c-typeck.c:6661 c/c-typeck.c:6947 msgid "passing argument %d of %qE makes %q#v qualified function pointer from unqualified" msgstr "el paso del argumento %d de %qE hace que la función calificada con %q#v apunte desde una no calificada" -#: c/c-typeck.c:6659 c/c-typeck.c:6945 +#: c/c-typeck.c:6664 c/c-typeck.c:6950 msgid "assignment makes %q#v qualified function pointer from unqualified" msgstr "la asignación hace que la función calificada con %q#v apunte desde una no calificada" -#: c/c-typeck.c:6662 c/c-typeck.c:6947 +#: c/c-typeck.c:6667 c/c-typeck.c:6952 msgid "initialization makes %q#v qualified function pointer from unqualified" msgstr "la inicialización hace que la función calificada con %q#v apunte desde una no calificada" -#: c/c-typeck.c:6665 c/c-typeck.c:6949 +#: c/c-typeck.c:6670 c/c-typeck.c:6954 msgid "return makes %q#v qualified function pointer from unqualified" msgstr "la devolución hace que la función calificada con %q#v apunte desde una no calificada" -#: c/c-typeck.c:6673 c/c-typeck.c:6840 c/c-typeck.c:6883 +#: c/c-typeck.c:6678 c/c-typeck.c:6845 c/c-typeck.c:6888 msgid "passing argument %d of %qE discards %qv qualifier from pointer target type" msgstr "el paso del argumento %d de %qE descarta el calificador %qv del tipo del destino del puntero" -#: c/c-typeck.c:6675 c/c-typeck.c:6842 c/c-typeck.c:6885 +#: c/c-typeck.c:6680 c/c-typeck.c:6847 c/c-typeck.c:6890 msgid "assignment discards %qv qualifier from pointer target type" msgstr "la asignación descarta el calificador %qv del tipo del destino del puntero" -#: c/c-typeck.c:6677 c/c-typeck.c:6844 c/c-typeck.c:6887 +#: c/c-typeck.c:6682 c/c-typeck.c:6849 c/c-typeck.c:6892 msgid "initialization discards %qv qualifier from pointer target type" msgstr "la inicialización descarta el calificador %qv del tipo del destino del puntero" -#: c/c-typeck.c:6679 c/c-typeck.c:6846 c/c-typeck.c:6889 +#: c/c-typeck.c:6684 c/c-typeck.c:6851 c/c-typeck.c:6894 msgid "return discards %qv qualifier from pointer target type" msgstr "la devolución descarta el calificador %qv del tipo del destino del puntero" -#: c/c-typeck.c:6688 +#: c/c-typeck.c:6693 #, gcc-internal-format msgid "ISO C prohibits argument conversion to union type" msgstr "ISO C prohíbe la conversión de argumentos a tipo union" -#: c/c-typeck.c:6750 +#: c/c-typeck.c:6755 #, gcc-internal-format msgid "request for implicit conversion from %qT to %qT not permitted in C++" msgstr "no se permite la petición para la conversión implícita de %qT a %qT en C++" -#: c/c-typeck.c:6762 +#: c/c-typeck.c:6767 #, gcc-internal-format msgid "passing argument %d of %qE from pointer to non-enclosed address space" msgstr "se pasa el argumento %d de %qE desde un puntero a espacio de direcciones no contenido" -#: c/c-typeck.c:6766 +#: c/c-typeck.c:6771 #, gcc-internal-format msgid "assignment from pointer to non-enclosed address space" msgstr "asignación desde puntero a espacio de direcciones no contenido" -#: c/c-typeck.c:6770 +#: c/c-typeck.c:6775 #, gcc-internal-format msgid "initialization from pointer to non-enclosed address space" msgstr "inicialización desde puntero a espacio de direcciones no contenido" -#: c/c-typeck.c:6774 +#: c/c-typeck.c:6779 #, gcc-internal-format msgid "return from pointer to non-enclosed address space" msgstr "devolución desde puntero a espacio de direcciones no contenido" -#: c/c-typeck.c:6792 +#: c/c-typeck.c:6797 #, gcc-internal-format msgid "argument %d of %qE might be a candidate for a format attribute" msgstr "el argumento %d de %qE puede ser un candidato para un atributo de formato" -#: c/c-typeck.c:6798 +#: c/c-typeck.c:6803 #, gcc-internal-format msgid "assignment left-hand side might be a candidate for a format attribute" msgstr "el lado izquierdo de la asignación puede ser un candidato para un atributo de formato" -#: c/c-typeck.c:6803 +#: c/c-typeck.c:6808 #, gcc-internal-format msgid "initialization left-hand side might be a candidate for a format attribute" msgstr "el lado izquierdo de la inicialización puede ser un candidato para un atributo de formato" -#: c/c-typeck.c:6808 cp/typeck.c:8891 +#: c/c-typeck.c:6813 cp/typeck.c:8891 #, gcc-internal-format msgid "return type might be a candidate for a format attribute" msgstr "el tipo de devolución puede ser un candidato para un atributo de formato" -#: c/c-typeck.c:6857 +#: c/c-typeck.c:6862 #, gcc-internal-format msgid "ISO C forbids passing argument %d of %qE between function pointer and %" msgstr "ISO C prohíbe el paso del argumento %d de %qE entre un puntero a función y %" -#: c/c-typeck.c:6860 +#: c/c-typeck.c:6865 #, gcc-internal-format msgid "ISO C forbids assignment between function pointer and %" msgstr "ISO C prohíbe la asignación entre un puntero a función y %" -#: c/c-typeck.c:6862 +#: c/c-typeck.c:6867 #, gcc-internal-format msgid "ISO C forbids initialization between function pointer and %" msgstr "ISO C prohíbe la inicialización entre un puntero a función y %" -#: c/c-typeck.c:6864 +#: c/c-typeck.c:6869 #, gcc-internal-format msgid "ISO C forbids return between function pointer and %" msgstr "ISO C prohíbe la devolución entre un puntero a función y %" -#: c/c-typeck.c:6904 +#: c/c-typeck.c:6909 #, gcc-internal-format msgid "pointer targets in passing argument %d of %qE differ in signedness" msgstr "el puntero que apunta en el paso del argumento %d de %qE difiere en signo" -#: c/c-typeck.c:6913 +#: c/c-typeck.c:6918 #, gcc-internal-format msgid "pointer targets in assignment from %qT to %qT differ in signedness" msgstr "el puntero que apunta en la asignación de %qT a %qT difiere en signo" -#: c/c-typeck.c:6918 +#: c/c-typeck.c:6923 #, gcc-internal-format msgid "pointer targets in initialization of %qT from %qT differ in signedness" msgstr "el puntero que apunta en la inicialización de %qT a %qT difiere en signo" -#: c/c-typeck.c:6923 +#: c/c-typeck.c:6928 #, fuzzy, gcc-internal-format #| msgid "pointer targets in passing argument %d of %qE differ in signedness" msgid "pointer targets in returning %qT from a function with return type %qT differ in signedness" msgstr "el puntero que apunta en el paso del argumento %d de %qE difiere en signo" -#: c/c-typeck.c:6961 +#: c/c-typeck.c:6966 #, gcc-internal-format msgid "passing argument %d of %qE from incompatible pointer type" msgstr "se pasa el argumento %d de %qE desde un tipo de puntero incompatible" -#: c/c-typeck.c:6967 +#: c/c-typeck.c:6972 #, gcc-internal-format msgid "assignment to %qT from incompatible pointer type %qT" msgstr "asignación a %qT desde un tipo de puntero %qT incompatible" -#: c/c-typeck.c:6972 +#: c/c-typeck.c:6977 #, gcc-internal-format msgid "initialization of %qT from incompatible pointer type %qT" msgstr "inicialización de %qT desde un tipo de puntero %qT incompatible" -#: c/c-typeck.c:6977 +#: c/c-typeck.c:6982 #, gcc-internal-format msgid "returning %qT from a function with incompatible return type %qT" msgstr "se devuelve %qT desde una función con tipo de devolución %qT incompatible" @@ -37124,803 +37173,803 @@ #. ??? This should not be an error when inlining calls to #. unprototyped functions. -#: c/c-typeck.c:6991 c/c-typeck.c:7514 cp/typeck.c:2063 +#: c/c-typeck.c:6996 c/c-typeck.c:7519 cp/typeck.c:2063 #, gcc-internal-format msgid "invalid use of non-lvalue array" msgstr "uso no válido de matriz no-lvaluada" -#: c/c-typeck.c:7004 +#: c/c-typeck.c:7009 #, gcc-internal-format msgid "passing argument %d of %qE makes pointer from integer without a cast" msgstr "el paso del argumento %d de %qE crea un puntero desde un entero sin una conversión" -#: c/c-typeck.c:7010 +#: c/c-typeck.c:7015 #, gcc-internal-format msgid "assignment to %qT from %qT makes pointer from integer without a cast" msgstr "la asignación a %qT desde %qT crea un puntero desde un entero sin una conversión" -#: c/c-typeck.c:7015 +#: c/c-typeck.c:7020 #, gcc-internal-format msgid "initialization of %qT from %qT makes pointer from integer without a cast" msgstr "la inicialización de %qT desde %qT crea un puntero desde un entero sin una conversión" -#: c/c-typeck.c:7019 +#: c/c-typeck.c:7024 #, gcc-internal-format msgid "returning %qT from a function with return type %qT makes pointer from integer without a cast" msgstr "el retorno de %qT desde una función con tipo de retorno %qT crea un puntero desde un entero sin una conversión" -#: c/c-typeck.c:7035 +#: c/c-typeck.c:7040 #, gcc-internal-format msgid "passing argument %d of %qE makes integer from pointer without a cast" msgstr "el paso del argumento %d de %qE crea un entero desde un puntero sin una conversión" -#: c/c-typeck.c:7041 +#: c/c-typeck.c:7046 #, gcc-internal-format msgid "assignment to %qT from %qT makes integer from pointer without a cast" msgstr "la asignación a %qT desde %qT crea un entero desde un puntero sin una conversión" -#: c/c-typeck.c:7046 +#: c/c-typeck.c:7051 #, gcc-internal-format msgid "initialization of %qT from %qT makes integer from pointer without a cast" msgstr "la inicialización de %qT desde %qT crea un entero desde un puntero sin una conversión" -#: c/c-typeck.c:7050 +#: c/c-typeck.c:7055 #, gcc-internal-format msgid "returning %qT from a function with return type %qT makes integer from pointer without a cast" msgstr "el retorno de %qT desde una función con tipo de retorno %qT crea un entero desde un puntero sin una conversión" -#: c/c-typeck.c:7073 +#: c/c-typeck.c:7078 #, gcc-internal-format msgid "incompatible type for argument %d of %qE" msgstr "tipo incompatible para el argumento %d de %qE" -#: c/c-typeck.c:7078 +#: c/c-typeck.c:7083 #, gcc-internal-format msgid "incompatible types when assigning to type %qT from type %qT" msgstr "tipos incompatible en la asignación al tipo %qT del tipo %qT" -#: c/c-typeck.c:7083 +#: c/c-typeck.c:7088 #, gcc-internal-format msgid "incompatible types when initializing type %qT using type %qT" msgstr "tipos incompatibles en la inicialización del tipo %qT usando el tipo %qT" -#: c/c-typeck.c:7088 +#: c/c-typeck.c:7093 #, gcc-internal-format msgid "incompatible types when returning type %qT but %qT was expected" msgstr "tipos incompatible al devolver el tipo %qT pero se esperaba %qT" -#: c/c-typeck.c:7152 +#: c/c-typeck.c:7157 #, gcc-internal-format msgid "traditional C rejects automatic aggregate initialization" msgstr "C tradicional rechaza la inicialización automática de agregados" -#: c/c-typeck.c:7388 c/c-typeck.c:8284 cp/typeck2.c:1045 +#: c/c-typeck.c:7393 c/c-typeck.c:8289 cp/typeck2.c:1045 #, gcc-internal-format msgid "initialization of a flexible array member" msgstr "inicialización de un miembro de matriz flexible" -#: c/c-typeck.c:7398 cp/typeck2.c:1059 +#: c/c-typeck.c:7403 cp/typeck2.c:1059 #, gcc-internal-format msgid "char-array initialized from wide string" msgstr "matriz de tipo char inicializada con una cadena ancha" -#: c/c-typeck.c:7407 +#: c/c-typeck.c:7412 #, gcc-internal-format msgid "wide character array initialized from non-wide string" msgstr "matriz de caracteres anchos inicializada con una cadena que no es ancha" -#: c/c-typeck.c:7413 +#: c/c-typeck.c:7418 #, gcc-internal-format msgid "wide character array initialized from incompatible wide string" msgstr "matriz de caracteres anchos inicializada con una cadena ancha incompatible" -#: c/c-typeck.c:7446 +#: c/c-typeck.c:7451 #, gcc-internal-format msgid "array of inappropriate type initialized from string constant" msgstr "matriz de tipo inapropiado inicializada con una constante de cadena" -#: c/c-typeck.c:7533 c/c-typeck.c:7557 c/c-typeck.c:7560 c/c-typeck.c:7568 -#: c/c-typeck.c:7608 c/c-typeck.c:9131 c/c-typeck.c:9181 +#: c/c-typeck.c:7538 c/c-typeck.c:7562 c/c-typeck.c:7565 c/c-typeck.c:7573 +#: c/c-typeck.c:7613 c/c-typeck.c:9136 c/c-typeck.c:9186 #, gcc-internal-format msgid "initializer element is not constant" msgstr "el elemento inicializador no es una constante" -#: c/c-typeck.c:7542 +#: c/c-typeck.c:7547 #, gcc-internal-format msgid "array initialized from non-constant array expression" msgstr "matriz inicializada con una expresión matrizal que no es constante" -#: c/c-typeck.c:7573 c/c-typeck.c:7621 c/c-typeck.c:9191 +#: c/c-typeck.c:7578 c/c-typeck.c:7626 c/c-typeck.c:9196 #, gcc-internal-format msgid "initializer element is not a constant expression" msgstr "el elemento inicializador no es una expresión constante" -#: c/c-typeck.c:7615 c/c-typeck.c:9186 +#: c/c-typeck.c:7620 c/c-typeck.c:9191 #, gcc-internal-format msgid "initializer element is not computable at load time" msgstr "el elemento inicializador no es calculable al momento de la carga" -#: c/c-typeck.c:7634 +#: c/c-typeck.c:7639 #, gcc-internal-format msgid "invalid initializer" msgstr "inicializador no válido" -#: c/c-typeck.c:7912 cp/decl.c:6396 +#: c/c-typeck.c:7917 cp/decl.c:6396 #, gcc-internal-format msgid "opaque vector types cannot be initialized" msgstr "no se pueden inicializar los tipos de vector opacos" -#: c/c-typeck.c:8132 +#: c/c-typeck.c:8137 #, gcc-internal-format msgid "extra brace group at end of initializer" msgstr "grupo extra de llaves al final del inicializador" -#: c/c-typeck.c:8215 +#: c/c-typeck.c:8220 #, gcc-internal-format msgid "braces around scalar initializer" msgstr "llaves alrededor del inicializador escalar" -#: c/c-typeck.c:8281 c/c-typeck.c:9615 cp/typeck2.c:1084 cp/typeck2.c:1297 +#: c/c-typeck.c:8286 c/c-typeck.c:9620 cp/typeck2.c:1084 cp/typeck2.c:1297 #, gcc-internal-format msgid "initialization of flexible array member in a nested context" msgstr "inicialización de un miembro de matriz flexible en un contexto anidado" -#: c/c-typeck.c:8318 +#: c/c-typeck.c:8323 #, gcc-internal-format msgid "missing braces around initializer" msgstr "faltan llaves alrededor del inicializador" -#: c/c-typeck.c:8341 +#: c/c-typeck.c:8346 #, gcc-internal-format msgid "missing initializer for field %qD of %qT" msgstr "falta el inicializador para el campo %qD de %qT" -#: c/c-typeck.c:8365 +#: c/c-typeck.c:8370 #, gcc-internal-format msgid "empty scalar initializer" msgstr "inicializador escalar vacío" -#: c/c-typeck.c:8370 +#: c/c-typeck.c:8375 #, gcc-internal-format msgid "extra elements in scalar initializer" msgstr "elementos extras en el inicializador escalar" -#: c/c-typeck.c:8483 c/c-typeck.c:8565 +#: c/c-typeck.c:8488 c/c-typeck.c:8570 #, gcc-internal-format msgid "array index in non-array initializer" msgstr "índice de matriz en el inicializador que no es matriz" -#: c/c-typeck.c:8488 c/c-typeck.c:8627 +#: c/c-typeck.c:8493 c/c-typeck.c:8632 #, gcc-internal-format msgid "field name not in record or union initializer" msgstr "el nombre del campo no está en el inicializador de record o union" -#: c/c-typeck.c:8538 +#: c/c-typeck.c:8543 #, gcc-internal-format msgid "array index in initializer not of integer type" msgstr "el índice de matriz en el inicializador no es de tipo entero" -#: c/c-typeck.c:8547 c/c-typeck.c:8556 +#: c/c-typeck.c:8552 c/c-typeck.c:8561 #, gcc-internal-format msgid "array index in initializer is not an integer constant expression" msgstr "el índice de matriz en el inicializador no es una expresión constante entera" -#: c/c-typeck.c:8561 c/c-typeck.c:8563 +#: c/c-typeck.c:8566 c/c-typeck.c:8568 #, gcc-internal-format msgid "nonconstant array index in initializer" msgstr "el índice de matriz no es una constante en el inicializador" -#: c/c-typeck.c:8567 c/c-typeck.c:8570 +#: c/c-typeck.c:8572 c/c-typeck.c:8575 #, gcc-internal-format msgid "array index in initializer exceeds array bounds" msgstr "el índice de matriz en el inicializador excede los límites de la matriz" -#: c/c-typeck.c:8589 +#: c/c-typeck.c:8594 #, gcc-internal-format msgid "empty index range in initializer" msgstr "rango de índices vacío en el inicializador" -#: c/c-typeck.c:8598 +#: c/c-typeck.c:8603 #, gcc-internal-format msgid "array index range in initializer exceeds array bounds" msgstr "el rango de índices de la matriz en el inicializador excede los límites de la matriz" -#: c/c-typeck.c:8700 c/c-typeck.c:8730 c/c-typeck.c:9274 +#: c/c-typeck.c:8705 c/c-typeck.c:8735 c/c-typeck.c:9279 #, gcc-internal-format msgid "initialized field with side-effects overwritten" msgstr "campo inicializado con efectos colaterales sobreescritos" -#: c/c-typeck.c:8704 c/c-typeck.c:8734 c/c-typeck.c:9277 +#: c/c-typeck.c:8709 c/c-typeck.c:8739 c/c-typeck.c:9282 #, gcc-internal-format msgid "initialized field overwritten" msgstr "campo inicializado sobreescrito" -#: c/c-typeck.c:9208 +#: c/c-typeck.c:9213 #, gcc-internal-format msgid "enum conversion in initialization is invalid in C++" msgstr "la conversión de enum en la inicialización es no válida en C++" -#: c/c-typeck.c:9496 +#: c/c-typeck.c:9501 #, gcc-internal-format msgid "excess elements in char array initializer" msgstr "exceso de elementos en el inicializador de matriz de caracteres" -#: c/c-typeck.c:9503 c/c-typeck.c:9574 +#: c/c-typeck.c:9508 c/c-typeck.c:9579 #, gcc-internal-format msgid "excess elements in struct initializer" msgstr "exceso de elementos en el inicializador de struct" -#: c/c-typeck.c:9518 +#: c/c-typeck.c:9523 #, gcc-internal-format msgid "positional initialization of field in % declared with % attribute" msgstr "" -#: c/c-typeck.c:9589 +#: c/c-typeck.c:9594 #, gcc-internal-format msgid "non-static initialization of a flexible array member" msgstr "inicialización no estática de un miembro de matriz flexible" -#: c/c-typeck.c:9687 +#: c/c-typeck.c:9692 #, gcc-internal-format msgid "excess elements in union initializer" msgstr "exceso de elementos en el inicializador de union" -#: c/c-typeck.c:9709 +#: c/c-typeck.c:9714 #, gcc-internal-format msgid "traditional C rejects initialization of unions" msgstr "C tradicional rechaza la inicialización de unions" -#: c/c-typeck.c:9777 +#: c/c-typeck.c:9782 #, gcc-internal-format msgid "excess elements in array initializer" msgstr "exceso de elementos en el inicializador de matriz" -#: c/c-typeck.c:9811 +#: c/c-typeck.c:9816 #, gcc-internal-format msgid "excess elements in vector initializer" msgstr "exceso de elementos en el inicializador de vector" -#: c/c-typeck.c:9843 +#: c/c-typeck.c:9848 #, gcc-internal-format msgid "excess elements in scalar initializer" msgstr "exceso de elementos en el inicializador de escalar" -#: c/c-typeck.c:10086 +#: c/c-typeck.c:10091 #, gcc-internal-format msgid "ISO C forbids %" msgstr "ISO C prohíbe %" -#: c/c-typeck.c:10113 c/gimple-parser.c:1604 cp/typeck.c:9113 +#: c/c-typeck.c:10118 c/gimple-parser.c:1604 cp/typeck.c:9113 #, gcc-internal-format msgid "function declared % has a % statement" msgstr "la función declarada % tiene una declaración %" -#: c/c-typeck.c:10139 c/c-typeck.c:10143 +#: c/c-typeck.c:10144 c/c-typeck.c:10148 #, gcc-internal-format msgid "% with no value, in function returning non-void" msgstr "% sin valores, en una función que no devuelve void" -#: c/c-typeck.c:10157 c/gimple-parser.c:1614 +#: c/c-typeck.c:10162 c/gimple-parser.c:1614 #, gcc-internal-format msgid "% with a value, in function returning void" msgstr "% con valor, en una función que devuelve void" -#: c/c-typeck.c:10160 +#: c/c-typeck.c:10165 #, gcc-internal-format msgid "ISO C forbids % with expression, in function returning void" msgstr "ISO C prohíbe % con expresión, en una función que devuelve void" -#: c/c-typeck.c:10236 +#: c/c-typeck.c:10241 #, gcc-internal-format msgid "function returns address of label" msgstr "la función devuelve la dirección de una etiqueta" -#: c/c-typeck.c:10327 cp/semantics.c:1171 +#: c/c-typeck.c:10332 cp/semantics.c:1171 #, gcc-internal-format msgid "switch quantity not an integer" msgstr "la cantidad de switch no es un entero" -#: c/c-typeck.c:10352 +#: c/c-typeck.c:10357 #, gcc-internal-format msgid "% switch expression not converted to % in ISO C" msgstr "no se convierte la expresión de switch % a % en ISO C" -#: c/c-typeck.c:10390 c/c-typeck.c:10398 +#: c/c-typeck.c:10395 c/c-typeck.c:10403 #, gcc-internal-format msgid "case label is not an integer constant expression" msgstr "la etiqueta de case no es una expresion constante entera" -#: c/c-typeck.c:10404 cp/parser.c:11067 +#: c/c-typeck.c:10409 cp/parser.c:11067 #, gcc-internal-format msgid "case label not within a switch statement" msgstr "la etiqueta case no se encuentra dentro de una declaración switch" -#: c/c-typeck.c:10406 +#: c/c-typeck.c:10411 #, gcc-internal-format msgid "% label not within a switch statement" msgstr "la etiqueta % no está dentro de una declaración switch" -#: c/c-typeck.c:10578 cp/parser.c:12356 +#: c/c-typeck.c:10583 cp/parser.c:12353 #, gcc-internal-format msgid "break statement not within loop or switch" msgstr "la declaración break no está dentro de un bucle o switch" -#: c/c-typeck.c:10580 cp/parser.c:12379 +#: c/c-typeck.c:10585 cp/parser.c:12376 #, gcc-internal-format msgid "continue statement not within a loop" msgstr "la declaración continue no está dentro de un bucle" -#: c/c-typeck.c:10585 cp/parser.c:12369 +#: c/c-typeck.c:10590 cp/parser.c:12366 #, gcc-internal-format msgid "break statement used with OpenMP for loop" msgstr "se usó la declaración break en un bucle for de OpenMP" -#: c/c-typeck.c:10590 +#: c/c-typeck.c:10595 #, gcc-internal-format msgid "break statement within %<#pragma simd%> loop body" msgstr "la declaración break está dentro de un bucle %<#pragma simd%>" -#: c/c-typeck.c:10592 +#: c/c-typeck.c:10597 #, gcc-internal-format msgid "continue statement within %<#pragma simd%> loop body" msgstr "la declaración continue está dentro de un bucle %<#pragma simd%>" -#: c/c-typeck.c:10618 cp/cp-gimplify.c:432 +#: c/c-typeck.c:10623 cp/cp-gimplify.c:432 #, gcc-internal-format msgid "statement with no effect" msgstr "declaración sin efecto" -#: c/c-typeck.c:10662 +#: c/c-typeck.c:10667 #, gcc-internal-format msgid "expression statement has incomplete type" msgstr "la declaración de la expresión tiene tipo de dato incompleto" -#: c/c-typeck.c:11476 c/c-typeck.c:11644 cp/typeck.c:5017 +#: c/c-typeck.c:11481 c/c-typeck.c:11649 cp/typeck.c:5017 #, gcc-internal-format msgid "comparing vectors with different element types" msgstr "se comparan vectores con tipos de elemento diferentes" -#: c/c-typeck.c:11484 c/c-typeck.c:11652 cp/typeck.c:5030 +#: c/c-typeck.c:11489 c/c-typeck.c:11657 cp/typeck.c:5030 #, gcc-internal-format msgid "comparing vectors with different number of elements" msgstr "se comparan vectores con números de elementos diferentes" -#: c/c-typeck.c:11509 c/c-typeck.c:11677 cp/typeck.c:5058 +#: c/c-typeck.c:11514 c/c-typeck.c:11682 cp/typeck.c:5058 #, gcc-internal-format msgid "could not find an integer type of the same size as %qT" msgstr "no se puede encontrar un tipo entero del mismo tamaño que %qT" -#: c/c-typeck.c:11523 cp/typeck.c:4743 +#: c/c-typeck.c:11528 cp/typeck.c:4743 #, gcc-internal-format msgid "comparing floating point with == or != is unsafe" msgstr "no es segura la comparacion de coma flotante con == o !=" -#: c/c-typeck.c:11541 c/c-typeck.c:11562 +#: c/c-typeck.c:11546 c/c-typeck.c:11567 #, gcc-internal-format msgid "the comparison will always evaluate as % for the address of %qD will never be NULL" msgstr "la comparación siempre se evalúa como % para la dirección de %qD que nunca será NULL" -#: c/c-typeck.c:11547 c/c-typeck.c:11568 +#: c/c-typeck.c:11552 c/c-typeck.c:11573 #, gcc-internal-format msgid "the comparison will always evaluate as % for the address of %qD will never be NULL" msgstr "la comparación siempre se evalúa como % para la dirección de %qD que nunca será NULL" -#: c/c-typeck.c:11589 c/c-typeck.c:11718 +#: c/c-typeck.c:11594 c/c-typeck.c:11723 #, gcc-internal-format msgid "comparison of pointers to disjoint address spaces" msgstr "la comparación de punteros a espacios de direcciones discontinuos" -#: c/c-typeck.c:11596 c/c-typeck.c:11602 +#: c/c-typeck.c:11601 c/c-typeck.c:11607 #, gcc-internal-format msgid "ISO C forbids comparison of % with function pointer" msgstr "ISO C prohíbe la comparación de % con un puntero de función" -#: c/c-typeck.c:11609 c/c-typeck.c:11728 +#: c/c-typeck.c:11614 c/c-typeck.c:11733 #, gcc-internal-format msgid "comparison of distinct pointer types lacks a cast" msgstr "la comparación de diferentes tipos de puntero carece de una conversión" -#: c/c-typeck.c:11621 c/c-typeck.c:11626 c/c-typeck.c:11754 c/c-typeck.c:11759 +#: c/c-typeck.c:11626 c/c-typeck.c:11631 c/c-typeck.c:11759 c/c-typeck.c:11764 #, gcc-internal-format msgid "comparison between pointer and integer" msgstr "comparación entre puntero y entero" -#: c/c-typeck.c:11706 +#: c/c-typeck.c:11711 #, gcc-internal-format msgid "comparison of complete and incomplete pointers" msgstr "comparación de punteros completos e incompletos" -#: c/c-typeck.c:11708 +#: c/c-typeck.c:11713 #, gcc-internal-format msgid "ISO C forbids ordered comparisons of pointers to functions" msgstr "ISO C prohíbe la comparación entre punteros a funciones" -#: c/c-typeck.c:11713 +#: c/c-typeck.c:11718 #, gcc-internal-format msgid "ordered comparison of pointer with null pointer" msgstr "comparación ordenada de puntero con un puntero nulo" -#: c/c-typeck.c:11736 c/c-typeck.c:11739 c/c-typeck.c:11746 c/c-typeck.c:11749 +#: c/c-typeck.c:11741 c/c-typeck.c:11744 c/c-typeck.c:11751 c/c-typeck.c:11754 #: cp/typeck.c:5081 cp/typeck.c:5088 #, gcc-internal-format msgid "ordered comparison of pointer with integer zero" msgstr "comparación ordenada de puntero con el entero cero" -#: c/c-typeck.c:11811 +#: c/c-typeck.c:11816 #, gcc-internal-format msgid "implicit conversion from %qT to %qT to match other operand of binary expression" msgstr "conversión implícita de %qT a %qT para coincidir con otro operando de la expresión binaria" -#: c/c-typeck.c:12126 +#: c/c-typeck.c:12131 #, gcc-internal-format msgid "used array that cannot be converted to pointer where scalar is required" msgstr "se usa un valor de tipo matriz que no se puede cambiar a puntero cuando se requiere un escalar" -#: c/c-typeck.c:12130 +#: c/c-typeck.c:12135 #, gcc-internal-format msgid "used struct type value where scalar is required" msgstr "se usa un valor de tipo struct cuando se requiere un escalar" -#: c/c-typeck.c:12134 +#: c/c-typeck.c:12139 #, gcc-internal-format msgid "used union type value where scalar is required" msgstr "se usa un valor de tipo union cuando se requiere un escalar" -#: c/c-typeck.c:12150 +#: c/c-typeck.c:12155 #, gcc-internal-format msgid "used vector type where scalar is required" msgstr "se usa un tipo vector cuando se requiere un escalar" -#: c/c-typeck.c:12340 cp/semantics.c:8508 +#: c/c-typeck.c:12345 cp/semantics.c:8511 #, gcc-internal-format msgid "%<#pragma omp cancel%> must specify one of %, %, % or % clauses" msgstr "%<#pragma omp cancel%> debe especificar una de las cláusulas %, %, % o %" -#: c/c-typeck.c:12379 cp/semantics.c:8545 +#: c/c-typeck.c:12384 cp/semantics.c:8548 #, gcc-internal-format msgid "%<#pragma omp cancellation point%> must specify one of %, %, % or % clauses" msgstr "%<#pragma omp cancellation point%> debe especificar una de las cláusulas %, %, % o %" -#: c/c-typeck.c:12423 c/c-typeck.c:13581 c/c-typeck.c:13642 c/c-typeck.c:13704 +#: c/c-typeck.c:12428 c/c-typeck.c:13586 c/c-typeck.c:13647 c/c-typeck.c:13709 #, gcc-internal-format msgid "%<_Atomic%> %qE in %qs clause" msgstr "%<_Atomic%> %qE en cláusula %qs" -#: c/c-typeck.c:12436 c/c-typeck.c:13628 cp/semantics.c:4546 -#: cp/semantics.c:6717 +#: c/c-typeck.c:12441 c/c-typeck.c:13633 cp/semantics.c:4549 +#: cp/semantics.c:6720 #, gcc-internal-format msgid "bit-field %qE in %qs clause" msgstr "campo de bits %qE en cláusula %qs" -#: c/c-typeck.c:12445 c/c-typeck.c:13652 cp/semantics.c:4556 -#: cp/semantics.c:6735 +#: c/c-typeck.c:12450 c/c-typeck.c:13657 cp/semantics.c:4559 +#: cp/semantics.c:6738 #, gcc-internal-format msgid "%qE is a member of a union" msgstr "%qE no es un miembro de una unión" -#: c/c-typeck.c:12455 cp/semantics.c:4570 cp/semantics.c:6760 +#: c/c-typeck.c:12460 cp/semantics.c:4573 cp/semantics.c:6763 #, gcc-internal-format msgid "%qD is not a variable in %qs clause" msgstr "%qD no es una variable en la cláusula %qs" -#: c/c-typeck.c:12459 c/c-typeck.c:13669 cp/semantics.c:4574 -#: cp/semantics.c:6763 +#: c/c-typeck.c:12464 c/c-typeck.c:13674 cp/semantics.c:4577 +#: cp/semantics.c:6766 #, gcc-internal-format msgid "%qE is not a variable in %qs clause" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:12466 +#: c/c-typeck.c:12471 #, fuzzy, gcc-internal-format #| msgid "%Htoo many %qs clauses" msgid "%<_Atomic%> %qD in %qs clause" msgstr "%Hdemasiadas cláusulas %qs" -#: c/c-typeck.c:12475 c/c-typeck.c:13676 c/c-typeck.c:13778 -#: cp/semantics.c:4591 cp/semantics.c:6769 cp/semantics.c:6931 +#: c/c-typeck.c:12480 c/c-typeck.c:13681 c/c-typeck.c:13783 +#: cp/semantics.c:4594 cp/semantics.c:6772 cp/semantics.c:6934 #, fuzzy, gcc-internal-format #| msgid "%qD is not a variable in clause %qs" msgid "%qD is threadprivate variable in %qs clause" msgstr "%qD no es una variable en la cláusula %qs" -#: c/c-typeck.c:12511 cp/semantics.c:4623 +#: c/c-typeck.c:12516 cp/semantics.c:4626 #, fuzzy, gcc-internal-format #| msgid "size in array new must have integral type" msgid "low bound %qE of array section does not have integral type" msgstr "el tamaño de la matriz nueva debe tener un tipo integral" -#: c/c-typeck.c:12518 cp/semantics.c:4630 +#: c/c-typeck.c:12523 cp/semantics.c:4633 #, gcc-internal-format msgid "length %qE of array section does not have integral type" msgstr "la longitud %qE de la sección de matriz no es de tipo integral" -#: c/c-typeck.c:12545 c/c-typeck.c:12609 c/c-typeck.c:12867 -#: cp/semantics.c:4666 cp/semantics.c:4730 +#: c/c-typeck.c:12550 c/c-typeck.c:12614 c/c-typeck.c:12872 +#: cp/semantics.c:4669 cp/semantics.c:4733 #, gcc-internal-format msgid "zero length array section in %qs clause" msgstr "sección de matriz de longitud cero en la cláusula %qs" -#: c/c-typeck.c:12564 cp/semantics.c:4685 +#: c/c-typeck.c:12569 cp/semantics.c:4688 #, gcc-internal-format msgid "for unknown bound array type length expression must be specified" msgstr "" -#: c/c-typeck.c:12572 cp/semantics.c:4693 +#: c/c-typeck.c:12577 cp/semantics.c:4696 #, gcc-internal-format msgid "negative low bound in array section in %qs clause" msgstr "" -#: c/c-typeck.c:12581 c/c-typeck.c:12691 cp/semantics.c:4702 -#: cp/semantics.c:4812 +#: c/c-typeck.c:12586 c/c-typeck.c:12696 cp/semantics.c:4705 +#: cp/semantics.c:4815 #, fuzzy, gcc-internal-format #| msgid "variable length array is used" msgid "negative length in array section in %qs clause" msgstr "se usó la matriz de longitud variable" -#: c/c-typeck.c:12598 cp/semantics.c:4719 +#: c/c-typeck.c:12603 cp/semantics.c:4722 #, gcc-internal-format msgid "low bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:12635 cp/semantics.c:4756 +#: c/c-typeck.c:12640 cp/semantics.c:4759 #, gcc-internal-format msgid "length %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:12650 cp/semantics.c:4771 +#: c/c-typeck.c:12655 cp/semantics.c:4774 #, gcc-internal-format msgid "high bound %qE above array section size in %qs clause" msgstr "" -#: c/c-typeck.c:12683 cp/semantics.c:4804 +#: c/c-typeck.c:12688 cp/semantics.c:4807 #, fuzzy, gcc-internal-format #| msgid "for increment expression has no effect" msgid "for pointer type length expression must be specified" msgstr "la expresión de incremento for no tiene efecto" -#: c/c-typeck.c:12701 c/c-typeck.c:12810 cp/semantics.c:4822 -#: cp/semantics.c:4934 +#: c/c-typeck.c:12706 c/c-typeck.c:12815 cp/semantics.c:4825 +#: cp/semantics.c:4937 #, gcc-internal-format msgid "array section is not contiguous in %qs clause" msgstr "la sección de matriz no es contigua en la cláusula %qs" -#: c/c-typeck.c:12709 cp/semantics.c:4830 +#: c/c-typeck.c:12714 cp/semantics.c:4833 #, gcc-internal-format msgid "%qE does not have pointer or array type" msgstr "%qE no es de tipo puntero o matriz" -#: c/c-typeck.c:13103 c/c-typeck.c:13113 +#: c/c-typeck.c:13108 c/c-typeck.c:13118 #, gcc-internal-format msgid "%qD in % clause is a zero size array" msgstr "%qD en la cláusula % es una matriz de tamaño cero" -#: c/c-typeck.c:13130 +#: c/c-typeck.c:13135 #, fuzzy, gcc-internal-format #| msgid "ISO C forbids qualified function types" msgid "%<_Atomic%> %qE in % clause" msgstr "ISO C prohíbe los tipos de función calificados" -#: c/c-typeck.c:13178 +#: c/c-typeck.c:13183 #, gcc-internal-format msgid "%qE has invalid type for %" msgstr "%qE tiene tipo no válido para %" -#: c/c-typeck.c:13187 cp/semantics.c:5755 +#: c/c-typeck.c:13192 cp/semantics.c:5758 #, fuzzy, gcc-internal-format #| msgid "No label definition found for %qs" msgid "user defined reduction not found for %qE" msgstr "No se encontró una definición de etiqueta para %qs" -#: c/c-typeck.c:13275 +#: c/c-typeck.c:13280 #, fuzzy, gcc-internal-format #| msgid "variable length array is used" msgid "variable length element type in array % clause" msgstr "se usó la matriz de longitud variable" -#: c/c-typeck.c:13293 c/c-typeck.c:13836 cp/semantics.c:7249 +#: c/c-typeck.c:13298 c/c-typeck.c:13841 cp/semantics.c:7252 #, gcc-internal-format msgid "% clause must not be used together with %" msgstr "la cláusula % no debe utilizarse junto con %" -#: c/c-typeck.c:13305 cp/semantics.c:7289 +#: c/c-typeck.c:13310 cp/semantics.c:7292 #, gcc-internal-format msgid "%qE must be % for %" msgstr "%qE debe ser % para %" -#: c/c-typeck.c:13319 cp/semantics.c:5929 +#: c/c-typeck.c:13324 cp/semantics.c:5932 #, gcc-internal-format msgid "modifier should not be specified in % clause on % or % constructs" msgstr "" -#: c/c-typeck.c:13327 +#: c/c-typeck.c:13332 #, gcc-internal-format msgid "linear clause applied to non-integral non-pointer variable with type %qT" msgstr "cláusula lineal aplicada a variable no puntero no integral con tipo %qT" -#: c/c-typeck.c:13335 +#: c/c-typeck.c:13340 #, gcc-internal-format msgid "%<_Atomic%> %qD in % clause" msgstr "" -#: c/c-typeck.c:13354 cp/semantics.c:5999 +#: c/c-typeck.c:13359 cp/semantics.c:6002 #, gcc-internal-format msgid "% clause step %qE is neither constant nor a parameter" msgstr "" -#: c/c-typeck.c:13384 c/c-typeck.c:13771 cp/semantics.c:6083 -#: cp/semantics.c:6924 +#: c/c-typeck.c:13389 c/c-typeck.c:13776 cp/semantics.c:6086 +#: cp/semantics.c:6927 #, gcc-internal-format msgid "%qE is not a variable in clause %qs" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:13393 cp/semantics.c:6092 +#: c/c-typeck.c:13398 cp/semantics.c:6095 #, gcc-internal-format msgid "%qD appears more than once in reduction clauses" msgstr "%qD aparece más de una vez en las cláusulas de reducción" -#: c/c-typeck.c:13404 c/c-typeck.c:13434 c/c-typeck.c:13463 +#: c/c-typeck.c:13409 c/c-typeck.c:13439 c/c-typeck.c:13468 #, gcc-internal-format msgid "%qE appears more than once in data clauses" msgstr "%qE aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13411 c/c-typeck.c:13440 c/c-typeck.c:13600 c/c-typeck.c:13714 -#: c/c-typeck.c:13720 c/c-typeck.c:13733 c/c-typeck.c:13742 -#: cp/semantics.c:6102 cp/semantics.c:6109 cp/semantics.c:6160 -#: cp/semantics.c:6166 cp/semantics.c:6203 cp/semantics.c:6680 -#: cp/semantics.c:6817 cp/semantics.c:6823 cp/semantics.c:6836 -#: cp/semantics.c:6845 +#: c/c-typeck.c:13416 c/c-typeck.c:13445 c/c-typeck.c:13605 c/c-typeck.c:13719 +#: c/c-typeck.c:13725 c/c-typeck.c:13738 c/c-typeck.c:13747 +#: cp/semantics.c:6105 cp/semantics.c:6112 cp/semantics.c:6163 +#: cp/semantics.c:6169 cp/semantics.c:6206 cp/semantics.c:6683 +#: cp/semantics.c:6820 cp/semantics.c:6826 cp/semantics.c:6839 +#: cp/semantics.c:6848 #, gcc-internal-format msgid "%qD appears more than once in data clauses" msgstr "%qD aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13413 c/c-typeck.c:13442 c/c-typeck.c:13722 c/c-typeck.c:13744 -#: cp/semantics.c:6111 cp/semantics.c:6168 cp/semantics.c:6825 -#: cp/semantics.c:6847 +#: c/c-typeck.c:13418 c/c-typeck.c:13447 c/c-typeck.c:13727 c/c-typeck.c:13749 +#: cp/semantics.c:6114 cp/semantics.c:6171 cp/semantics.c:6828 +#: cp/semantics.c:6850 #, fuzzy, gcc-internal-format #| msgid "%qD appears more than once in data clauses" msgid "%qD appears both in data and map clauses" msgstr "%qD aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13427 cp/semantics.c:6154 +#: c/c-typeck.c:13432 cp/semantics.c:6157 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "%qE no es una variable en la cláusula %" -#: c/c-typeck.c:13456 cp/semantics.c:6197 +#: c/c-typeck.c:13461 cp/semantics.c:6200 #, gcc-internal-format msgid "%qE is not a variable in clause %" msgstr "%qE no es una variable en la cláusula %" -#: c/c-typeck.c:13475 cp/semantics.c:6545 +#: c/c-typeck.c:13480 cp/semantics.c:6548 #, gcc-internal-format msgid "%qE is not a variable in % clause" msgstr "%qE no es una variable en la cláusula %" -#: c/c-typeck.c:13482 +#: c/c-typeck.c:13487 #, gcc-internal-format msgid "%qE in % clause is neither a pointer nor an array" msgstr "%qE en la cláusula % no es un puntero ni una matriz" -#: c/c-typeck.c:13489 +#: c/c-typeck.c:13494 #, fuzzy, gcc-internal-format #| msgid "%qD is not a variable in clause %qs" msgid "%<_Atomic%> %qD in % clause" msgstr "%qD no es una variable en la cláusula %qs" -#: c/c-typeck.c:13496 +#: c/c-typeck.c:13501 #, fuzzy, gcc-internal-format #| msgid "%qE appears more than once in data clauses" msgid "%qE appears more than once in % clauses" msgstr "%qE aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13551 cp/semantics.c:6627 +#: c/c-typeck.c:13556 cp/semantics.c:6630 #, fuzzy, gcc-internal-format #| msgid "%qE is not a variable in clause %qs" msgid "%qE is not a variable in % clause" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:13573 cp/semantics.c:6658 +#: c/c-typeck.c:13578 cp/semantics.c:6661 #, fuzzy, gcc-internal-format #| msgid "Array section not permitted in '%s' call at %L" msgid "array section does not have mappable type in %qs clause" msgstr "No se permite una sección de matriz en la llamada '%s' en %L" -#: c/c-typeck.c:13597 c/c-typeck.c:13731 cp/semantics.c:6677 -#: cp/semantics.c:6834 +#: c/c-typeck.c:13602 c/c-typeck.c:13736 cp/semantics.c:6680 +#: cp/semantics.c:6837 #, fuzzy, gcc-internal-format #| msgid "%qD appears more than once in data clauses" msgid "%qD appears more than once in motion clauses" msgstr "%qD aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13603 c/c-typeck.c:13735 cp/semantics.c:6683 -#: cp/semantics.c:6838 +#: c/c-typeck.c:13608 c/c-typeck.c:13740 cp/semantics.c:6686 +#: cp/semantics.c:6841 #, fuzzy, gcc-internal-format #| msgid "%qD appears more than once in data clauses" msgid "%qD appears more than once in map clauses" msgstr "%qD aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13635 cp/semantics.c:6724 +#: c/c-typeck.c:13640 cp/semantics.c:6727 #, fuzzy, gcc-internal-format #| msgid "%qE is not a variable in clause %qs" msgid "%qE does not have a mappable type in %qs clause" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:13695 c/c-typeck.c:13785 cp/semantics.c:6799 -#: cp/semantics.c:6938 +#: c/c-typeck.c:13700 c/c-typeck.c:13790 cp/semantics.c:6802 +#: cp/semantics.c:6941 #, fuzzy, gcc-internal-format #| msgid "%qD is not a variable in clause %qs" msgid "%qD does not have a mappable type in %qs clause" msgstr "%qD no es una variable en la cláusula %qs" -#: c/c-typeck.c:13766 cp/semantics.c:6918 +#: c/c-typeck.c:13771 cp/semantics.c:6921 #, fuzzy, gcc-internal-format #| msgid "%qE is not a variable in clause %qs" msgid "%qE is neither a variable nor a function name in clause %qs" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:13794 cp/semantics.c:6947 +#: c/c-typeck.c:13799 cp/semantics.c:6950 #, fuzzy, gcc-internal-format #| msgid "%qE appears more than once in data clauses" msgid "%qE appears more than once on the same % directive" msgstr "%qE aparece más de una vez en las cláusulas de datos" -#: c/c-typeck.c:13808 cp/semantics.c:6962 +#: c/c-typeck.c:13813 cp/semantics.c:6965 #, fuzzy, gcc-internal-format #| msgid "%qD is not a variable in clause %qs" msgid "%qD is not an argument in % clause" msgstr "%qD no es una variable en la cláusula %qs" -#: c/c-typeck.c:13811 cp/semantics.c:6964 +#: c/c-typeck.c:13816 cp/semantics.c:6967 #, fuzzy, gcc-internal-format #| msgid "%qE is not a variable in clause %qs" msgid "%qE is not an argument in % clause" msgstr "%qE no es una variable en la cláusula %qs" -#: c/c-typeck.c:13826 +#: c/c-typeck.c:13831 #, gcc-internal-format msgid "%qs variable is neither a pointer nor an array" msgstr "la variable %qs no es un puntero ni una matriz" -#: c/c-typeck.c:13900 cp/semantics.c:6359 +#: c/c-typeck.c:13905 cp/semantics.c:6362 #, gcc-internal-format msgid "% modifier specified for %qs schedule kind" msgstr "" -#: c/c-typeck.c:13931 cp/semantics.c:7141 +#: c/c-typeck.c:13936 cp/semantics.c:7144 #, gcc-internal-format msgid "% clause is incompatible with %" msgstr "la cláusula % es incompatible con %" -#: c/c-typeck.c:13981 cp/semantics.c:7332 +#: c/c-typeck.c:13986 cp/semantics.c:7335 #, gcc-internal-format msgid "%qE is predetermined %qs for %qs" msgstr "%qE está predeterminado como %qs para %qs" -#: c/c-typeck.c:14001 cp/semantics.c:7223 +#: c/c-typeck.c:14006 cp/semantics.c:7226 #, gcc-internal-format msgid "% clause value is bigger than % clause value" msgstr "el valor de la cláusula % es mayor que el valor de la cláusula %" -#: c/c-typeck.c:14013 cp/semantics.c:7236 +#: c/c-typeck.c:14018 cp/semantics.c:7239 #, gcc-internal-format msgid "% schedule modifier specified together with % clause" msgstr "" -#: c/c-typeck.c:14031 cp/semantics.c:7203 +#: c/c-typeck.c:14036 cp/semantics.c:7206 #, gcc-internal-format msgid "% clause step is a parameter %qD not specified in % clause" msgstr "" -#: c/c-typeck.c:14204 +#: c/c-typeck.c:14209 #, gcc-internal-format msgid "cannot use % with reverse storage order" msgstr "no se puede utilizar % con orden de almacenamiento inverso" -#: c/c-typeck.c:14209 +#: c/c-typeck.c:14214 #, gcc-internal-format msgid "second argument to % is of incomplete type %qT" msgstr "el segundo argumento para % es del tipo incompleto %qT" -#: c/c-typeck.c:14215 +#: c/c-typeck.c:14220 #, gcc-internal-format msgid "C++ requires promoted type, not enum type, in %" msgstr "C++ requiere un tipo promovido, no un tipo enum, en %" @@ -38042,7 +38091,7 @@ msgid " no known conversion for argument %d from %qH to %qI" msgstr " no hay una conversión conocida para el argumento %d de %qH a %qI" -#: cp/call.c:3441 cp/pt.c:6495 +#: cp/call.c:3441 cp/pt.c:6509 #, gcc-internal-format, gfc-internal-format msgid " candidate expects %d argument, %d provided" msgid_plural " candidate expects %d arguments, %d provided" @@ -38338,7 +38387,7 @@ msgid "%q#D is private within this context" msgstr "desde este contexto" -#: cp/call.c:6478 cp/decl.c:7343 +#: cp/call.c:6478 cp/decl.c:7364 #, fuzzy, gcc-internal-format #| msgid "declared here" msgid "declared private here" @@ -38350,7 +38399,7 @@ msgid "%q#D is protected within this context" msgstr "desde este contexto" -#: cp/call.c:6486 cp/decl.c:7344 +#: cp/call.c:6486 cp/decl.c:7365 #, fuzzy, gcc-internal-format #| msgid "declared here" msgid "declared protected here" @@ -38684,7 +38733,7 @@ msgid "call to non-function %qD" msgstr "llamada a %qD que no es función" -#: cp/call.c:9119 cp/pt.c:15053 cp/typeck.c:2901 +#: cp/call.c:9119 cp/pt.c:15075 cp/typeck.c:2901 #, gcc-internal-format msgid "cannot call constructor %<%T::%D%> directly" msgstr "no se puede llamar directamente al constructor %<%T::%D%>" @@ -38921,285 +38970,285 @@ msgid "cannot derive from % base %qT in derived type %qT" msgstr "no se puede derivar de la base % %qT al tipo derivado %qT" -#: cp/class.c:2098 +#: cp/class.c:2103 #, gcc-internal-format msgid "all member functions in class %qT are private" msgstr "todos las funciones miembros en la clase %qT son privadas" -#: cp/class.c:2110 +#: cp/class.c:2115 #, gcc-internal-format msgid "%q#T only defines a private destructor and has no friends" msgstr "%q#T solamente define un destructor privado y no tiene friends" -#: cp/class.c:2152 +#: cp/class.c:2156 #, gcc-internal-format msgid "%q#T only defines private constructors and has no friends" msgstr "%q#T solamente define constructores privados y no tiene friends" -#: cp/class.c:2156 +#: cp/class.c:2160 #, gcc-internal-format msgid "%q#D is public, but requires an existing %q#T object" msgstr "" # Ojo, no es impostor, sino impositor, el que impone. cfuga -#: cp/class.c:2430 +#: cp/class.c:2434 #, gcc-internal-format msgid "no unique final overrider for %qD in %qT" msgstr "no hay un impositor único final para %qD en %qT" -#: cp/class.c:2785 +#: cp/class.c:2789 #, fuzzy, gcc-internal-format #| msgid "%q+#D cannot be overloaded" msgid "%qD can be marked override" msgstr "no se puede sobrecargar %q+#D" -#: cp/class.c:2797 +#: cp/class.c:2801 #, fuzzy, gcc-internal-format #| msgid "%q+#D marked final, but is not virtual" msgid "%q+#D marked %, but is not virtual" msgstr "se marca %q+#D como final, pero no es virtual" -#: cp/class.c:2799 +#: cp/class.c:2803 #, fuzzy, gcc-internal-format #| msgid "%q+#D marked override, but does not override" msgid "%q+#D marked %, but does not override" msgstr "%q+#D se marca como override, pero no hace override" -#: cp/class.c:2861 +#: cp/class.c:2865 #, fuzzy, gcc-internal-format #| msgid "%q+D was hidden" msgid "%qD was hidden" msgstr "%q+D estaba escondido" -#: cp/class.c:2863 +#: cp/class.c:2867 #, fuzzy, gcc-internal-format #| msgid " by %q+D" msgid " by %qD" msgstr " por %q+D" -#: cp/class.c:2896 +#: cp/class.c:2900 #, fuzzy, gcc-internal-format #| msgid "%q+#D invalid; an anonymous union can only have non-static data members" msgid "%q#D invalid; an anonymous union may only have public non-static data members" msgstr "%q+#D no válido; un union anónimo sólo puede tener miembros con datos no estáticos" -#: cp/class.c:2906 cp/name-lookup.c:3293 cp/parser.c:19720 +#: cp/class.c:2910 cp/name-lookup.c:3293 cp/parser.c:19717 #, fuzzy, gcc-internal-format #| msgid "-traditional is deprecated and may be removed" msgid "this flexibility is deprecated and will be removed" msgstr "-traditional es obsoleto y será eliminado" -#: cp/class.c:3097 +#: cp/class.c:3101 #, gcc-internal-format msgid "the ellipsis in %qD is not inherited" msgstr "" -#: cp/class.c:3213 +#: cp/class.c:3217 #, gcc-internal-format msgid "bit-field %q+#D with non-integral type" msgstr "campo de bits %q+#D con tipo no entero" -#: cp/class.c:3229 +#: cp/class.c:3233 #, gcc-internal-format msgid "bit-field %q+D width not an integer constant" msgstr "la anchura del campo de bits %q+D no es una constante entera" -#: cp/class.c:3234 +#: cp/class.c:3238 #, gcc-internal-format msgid "negative width in bit-field %q+D" msgstr "anchura negativa en el campo de bits %q+D" -#: cp/class.c:3239 +#: cp/class.c:3243 #, gcc-internal-format msgid "zero width for bit-field %q+D" msgstr "anchura cero para el campo de bits %q+D" -#: cp/class.c:3249 +#: cp/class.c:3253 #, fuzzy, gcc-internal-format #| msgid "width of %q+D exceeds its type" msgid "width of %qD exceeds its type" msgstr "la anchura de %q+D excede su tipo" -#: cp/class.c:3255 +#: cp/class.c:3259 #, fuzzy, gcc-internal-format #| msgid "%q+D is too small to hold all values of %q#T" msgid "%qD is too small to hold all values of %q#T" msgstr "%q+D es demasiado pequeño para contener todos los valores de %q#T" -#: cp/class.c:3316 +#: cp/class.c:3320 #, gcc-internal-format msgid "member %q+#D with constructor not allowed in union" msgstr "no se permite el miembro %q+#D con constructor en la union" -#: cp/class.c:3319 +#: cp/class.c:3323 #, gcc-internal-format msgid "member %q+#D with destructor not allowed in union" msgstr "no se permite el miembro %q+#D con destructor en la union" -#: cp/class.c:3321 +#: cp/class.c:3325 #, gcc-internal-format msgid "member %q+#D with copy assignment operator not allowed in union" msgstr "no se permite el miembro %q+#D con operador de asignación de copia en la union" -#: cp/class.c:3325 +#: cp/class.c:3329 #, gcc-internal-format msgid "unrestricted unions only available with -std=c++11 or -std=gnu++11" msgstr "las uniones sin restricción sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/class.c:3453 +#: cp/class.c:3457 #, fuzzy, gcc-internal-format #| msgid "%q+D may not be static because it is a member of a union" msgid "in C++98 %q+D may not be static because it is a member of a union" msgstr "%q+D no debe ser static porque es el miembro de una unión" -#: cp/class.c:3460 +#: cp/class.c:3464 #, fuzzy, gcc-internal-format #| msgid "non-static data member %qD has Java class type" msgid "non-static data member %q+D in a union may not have reference type %qT" msgstr "el dato miembro que no es estático %qD tiene un tipo de clase Java" -#: cp/class.c:3470 +#: cp/class.c:3474 #, gcc-internal-format msgid "field %q+D invalidly declared function type" msgstr "el campo %q+D no válidamente se declara como un tipo de función" -#: cp/class.c:3476 +#: cp/class.c:3480 #, gcc-internal-format msgid "field %q+D invalidly declared method type" msgstr "el campo %q+D no válidamente se declara como un tipo de método" -#: cp/class.c:3536 +#: cp/class.c:3540 #, fuzzy, gcc-internal-format #| msgid "ignoring packed attribute because of unpacked non-POD field %q+#D" msgid "ignoring packed attribute because of unpacked non-POD field %q#D" msgstr "se descartan los atributos packed por el campo %q+#D sin empacar que no es POD" -#: cp/class.c:3585 +#: cp/class.c:3589 #, fuzzy, gcc-internal-format #| msgid "non-member %qs cannot be declared %" msgid "member %q+D cannot be declared both % and %" msgstr "el no-miembro %qs no se puede declarar %" -#: cp/class.c:3591 +#: cp/class.c:3595 #, fuzzy, gcc-internal-format #| msgid "non-member %qs cannot be declared %" msgid "member %q+D cannot be declared as a % reference" msgstr "el no-miembro %qs no se puede declarar %" -#: cp/class.c:3617 +#: cp/class.c:3621 #, gcc-internal-format msgid "multiple fields in union %qT initialized" msgstr "múltiples campos inicializados en la unión %qT" -#: cp/class.c:3658 +#: cp/class.c:3662 #, fuzzy, gcc-internal-format #| msgid "field %q+#D with same name as class" msgid "field %q#D with same name as class" msgstr "campo %q+#D con el mismo nombre que la clase" -#: cp/class.c:3681 +#: cp/class.c:3685 #, gcc-internal-format msgid "%q#T has pointer data members" msgstr "%q#T tiene miembros punteros a datos" -#: cp/class.c:3686 +#: cp/class.c:3690 #, gcc-internal-format msgid " but does not override %<%T(const %T&)%>" msgstr " pero no se impone a %<%T(const %T&)%>" -#: cp/class.c:3688 +#: cp/class.c:3692 #, gcc-internal-format msgid " or %" msgstr " o a %" -#: cp/class.c:3692 +#: cp/class.c:3696 #, gcc-internal-format msgid " but does not override %" msgstr " pero no se impone a %" -#: cp/class.c:4097 +#: cp/class.c:4101 #, gcc-internal-format msgid "alignment of %qD increased in -fabi-version=9 (GCC 5.2)" msgstr "" -#: cp/class.c:4100 +#: cp/class.c:4104 #, fuzzy, gcc-internal-format #| msgid "alignment of %qD is bigger than original declaration" msgid "alignment of %qD will increase in -fabi-version=9" msgstr "la alineación de %qD es más grande que la declaración original" -#: cp/class.c:4378 +#: cp/class.c:4382 #, gcc-internal-format msgid "initializer specified for non-virtual method %q+D" msgstr "se especificó un inicializador para el método %q+D que no es virtual" -#: cp/class.c:4813 +#: cp/class.c:4817 #, gcc-internal-format msgid "method overrides both % and %qE methods" msgstr "el método anula tanto % como los métodos %qE" -#: cp/class.c:4834 +#: cp/class.c:4838 #, gcc-internal-format msgid "method declared %qE overriding %qE method" msgstr "el método declarado como %qE anula el método %qE" -#: cp/class.c:5350 cp/constexpr.c:237 +#: cp/class.c:5367 cp/constexpr.c:237 #, fuzzy, gcc-internal-format #| msgid "enclosing class of constexpr non-static member function %q+#D is not a literal type" msgid "enclosing class of % non-static member function %q+#D is not a literal type" msgstr "la clase envolvente de la función miembro que no es estática constexpr %q+#D no es un tipo literal" -#: cp/class.c:5374 +#: cp/class.c:5391 #, gcc-internal-format msgid "%q+T is not literal because:" msgstr "%q+T no es literal porque:" -#: cp/class.c:5377 +#: cp/class.c:5394 #, gcc-internal-format msgid " %qT is a closure type, which is only literal in C++17 and later" msgstr "" -#: cp/class.c:5380 +#: cp/class.c:5397 #, gcc-internal-format msgid " %q+T has a non-trivial destructor" msgstr " %q+T tiene un destructor que no es trivial" -#: cp/class.c:5387 +#: cp/class.c:5404 #, fuzzy, gcc-internal-format #| msgid " %q+T is not an aggregate, does not have a trivial default constructor, and has no constexpr constructor that is not a copy or move constructor" msgid " %q+T is not an aggregate, does not have a trivial default constructor, and has no % constructor that is not a copy or move constructor" msgstr " %q+T no es un agregado, no tiene un constructor trivial por defecto y no tiene un constructor constexpr que no es un constructor copy o move" -#: cp/class.c:5420 +#: cp/class.c:5437 #, gcc-internal-format msgid " base class %qT of %q+T is non-literal" msgstr " la clase base %qT de %q+T no es literal" -#: cp/class.c:5435 +#: cp/class.c:5452 #, fuzzy, gcc-internal-format #| msgid " non-static data member %q+D has non-literal type" msgid " non-static data member %qD has non-literal type" msgstr " el dato miembro que no es estático %q+D tiene un tipo que no es literal" -#: cp/class.c:5442 +#: cp/class.c:5459 #, fuzzy, gcc-internal-format #| msgid " non-static data member %q+D has non-literal type" msgid " non-static data member %qD has volatile type" msgstr " el dato miembro que no es estático %q+D tiene un tipo que no es literal" -#: cp/class.c:5561 +#: cp/class.c:5578 #, fuzzy, gcc-internal-format #| msgid "base class %q#T has a non-virtual destructor" msgid "base class %q#T has accessible non-virtual destructor" msgstr "la clase base %q#T tiene un destructor no virtual" -#: cp/class.c:5590 +#: cp/class.c:5607 #, fuzzy, gcc-internal-format #| msgid "non-static reference %q+#D in class without a constructor" msgid "non-static reference %q#D in class without a constructor" msgstr "referencia %q+#D que no es static en una clase sin un constructor" -#: cp/class.c:5596 +#: cp/class.c:5613 #, fuzzy, gcc-internal-format #| msgid "non-static const member %q+#D in class without a constructor" msgid "non-static const member %q#D in class without a constructor" @@ -39207,165 +39256,165 @@ #. If the function is defaulted outside the class, we just #. give the synthesis error. -#: cp/class.c:5624 +#: cp/class.c:5641 #, gcc-internal-format msgid "%q+D declared to take const reference, but implicit declaration would take non-const" msgstr "se declaró %q+D para tomar referencia const, pero la declaración implícita tomaría algo que no es const" -#: cp/class.c:5898 +#: cp/class.c:5915 #, gcc-internal-format msgid "direct base %qT inaccessible in %qT due to ambiguity" msgstr "base directa %qT inaccesible en %qT debido a ambigüedad" -#: cp/class.c:5910 +#: cp/class.c:5927 #, gcc-internal-format msgid "virtual base %qT inaccessible in %qT due to ambiguity" msgstr "base virtual %qT inaccesible en %qT debido a ambigüedad" -#: cp/class.c:6133 +#: cp/class.c:6150 #, fuzzy, gcc-internal-format #| msgid "offset of %q+D is not ABI-compliant and may change in a future version of GCC" msgid "offset of %qD is not ABI-compliant and may change in a future version of GCC" msgstr "el desplazamiento de %q+D no cumple con la ABI y puede cambiar en una versión futura de GCC" -#: cp/class.c:6291 +#: cp/class.c:6308 #, fuzzy, gcc-internal-format #| msgid "size of array %qE is too large" msgid "size of type %qT is too large (%qE bytes)" msgstr "el tamaño de la matriz %qE es demasiado grande" -#: cp/class.c:6576 +#: cp/class.c:6593 #, fuzzy, gcc-internal-format #| msgid "invalid use of %<...%> with non-slice" msgid "invalid use of %q#T with a zero-size array in %q#D" msgstr "uso no válido de %<...%> con algo que no es rebanada" -#: cp/class.c:6578 +#: cp/class.c:6595 #, fuzzy, gcc-internal-format #| msgid "invalid use of structure with flexible array member" msgid "invalid use of %q#T with a flexible array member in %q#T" msgstr "uso no válido de una estructura con un miembro de matriz flexible" -#: cp/class.c:6583 +#: cp/class.c:6600 #, fuzzy, gcc-internal-format #| msgid " %q+#D declared here" msgid "array member %q#D declared here" msgstr " %q+#D se declaró aquí" -#: cp/class.c:6610 +#: cp/class.c:6627 #, fuzzy, gcc-internal-format #| msgid "flexible array member not at end of struct" msgid "zero-size array member %qD not at end of %q#T" msgstr "el miembro de matriz flexible no está al final del struct" -#: cp/class.c:6612 +#: cp/class.c:6629 #, fuzzy, gcc-internal-format #| msgid "flexible array member in otherwise empty struct" msgid "zero-size array member %qD in an otherwise empty %q#T" msgstr "el miembro de matriz flexible sería de otra manera un struct vacío" -#: cp/class.c:6620 cp/class.c:6650 +#: cp/class.c:6637 cp/class.c:6667 #, fuzzy, gcc-internal-format #| msgid "redefinition of %q#T" msgid "in the definition of %q#T" msgstr "redefinición de %q#T" -#: cp/class.c:6628 +#: cp/class.c:6645 #, fuzzy, gcc-internal-format #| msgid "flexible array member not at end of struct" msgid "flexible array member %qD not at end of %q#T" msgstr "el miembro de matriz flexible no está al final del struct" -#: cp/class.c:6630 +#: cp/class.c:6647 #, fuzzy, gcc-internal-format #| msgid "flexible array member in otherwise empty struct" msgid "flexible array member %qD in an otherwise empty %q#T" msgstr "el miembro de matriz flexible sería de otra manera un struct vacío" -#: cp/class.c:6648 +#: cp/class.c:6665 #, fuzzy, gcc-internal-format #| msgid " %q+#D declared here" msgid "next member %q#D declared here" msgstr " %q+#D se declaró aquí" -#: cp/class.c:6760 cp/parser.c:23239 +#: cp/class.c:6777 cp/parser.c:23236 #, gcc-internal-format msgid "redefinition of %q#T" msgstr "redefinición de %q#T" -#: cp/class.c:6897 +#: cp/class.c:6914 #, gcc-internal-format msgid "%q#T has virtual functions and accessible non-virtual destructor" msgstr "%q#T tiene funciones virtuales y destructor no virtual accesible" -#: cp/class.c:6925 +#: cp/class.c:6942 #, fuzzy, gcc-internal-format #| msgid "type transparent class %qT does not have any fields" msgid "type transparent %q#T does not have any fields" msgstr "la clase transparente tipo %qT no tiene ningún campo" -#: cp/class.c:6931 +#: cp/class.c:6948 #, gcc-internal-format msgid "type transparent class %qT has base classes" msgstr "la clase transparente tipo %qT tiene clases base" -#: cp/class.c:6935 +#: cp/class.c:6952 #, gcc-internal-format msgid "type transparent class %qT has virtual functions" msgstr "la clase transparente tipo %qT tiene funciones virtuales" -#: cp/class.c:6941 +#: cp/class.c:6958 #, gcc-internal-format msgid "type transparent %q#T cannot be made transparent because the type of the first field has a different ABI from the class overall" msgstr "" -#: cp/class.c:7071 +#: cp/class.c:7088 #, fuzzy, gcc-internal-format #| msgid "deducing from brace-enclosed initializer list requires #include " msgid "definition of %qD does not match %<#include %>" msgstr "la deducción de una lista inicializadora encerrada entre llaves requiere #include " -#: cp/class.c:7082 +#: cp/class.c:7099 #, gcc-internal-format msgid "trying to finish struct, but kicked out due to previous parse errors" msgstr "se trató de terminar struct, pero fue sacado debido a errores previos de decodificación" -#: cp/class.c:7582 +#: cp/class.c:7599 #, gcc-internal-format msgid "language string %<\"%E\"%> not recognized" msgstr "no se reconoce la cadena de lenguaje %<\"%E\"%>" -#: cp/class.c:7672 +#: cp/class.c:7689 #, gcc-internal-format msgid "cannot resolve overloaded function %qD based on conversion to type %qT" msgstr "no se puede resolver la función sobrecargada %qD basándose en la conversión al tipo %qT" -#: cp/class.c:7817 +#: cp/class.c:7834 #, gcc-internal-format msgid "no matches converting function %qD to type %q#T" msgstr "no hay coincidencias al convertir la función %qD al tipo %q#T" -#: cp/class.c:7844 +#: cp/class.c:7861 #, gcc-internal-format msgid "converting overloaded function %qD to type %q#T is ambiguous" msgstr "la conversión de la función sobrecargada %qD al tipo %q#T es ambigua" -#: cp/class.c:7870 +#: cp/class.c:7887 #, gcc-internal-format msgid "assuming pointer to member %qD" msgstr "asumiendo el puntero a miembro %qD" -#: cp/class.c:7873 +#: cp/class.c:7890 #, gcc-internal-format msgid "(a pointer to member can only be formed with %<&%E%>)" msgstr "(un puntero a miembro solamente se puede formar con %<&%E%>)" -#: cp/class.c:7948 cp/class.c:7990 +#: cp/class.c:7965 cp/class.c:8007 #, gcc-internal-format msgid "not enough type information" msgstr "no hay suficiente información de tipo" -#: cp/class.c:7968 +#: cp/class.c:7985 #, gcc-internal-format msgid "cannot convert %qE from type %qT to type %qT" msgstr "no se puede convertir %qE desde el tipo %qT al tipo %qT" @@ -39375,12 +39424,12 @@ #. A name N used in a class S shall refer to the same declaration #. in its context and when re-evaluated in the completed scope of #. S. -#: cp/class.c:8235 +#: cp/class.c:8252 #, gcc-internal-format msgid "declaration of %q#D" msgstr "la declaración de %q#D" -#: cp/class.c:8237 +#: cp/class.c:8254 #, fuzzy, gcc-internal-format #| msgid "changes meaning of %qD from %q+#D" msgid "changes meaning of %qD from %q#D" @@ -39820,17 +39869,17 @@ msgid "unexpected AST of kind %s" msgstr "AST inesperado de género %s" -#: cp/cp-gimplify.c:1415 +#: cp/cp-gimplify.c:1416 #, gcc-internal-format msgid "throw will always call terminate()" msgstr "" -#: cp/cp-gimplify.c:1418 +#: cp/cp-gimplify.c:1419 #, gcc-internal-format msgid "in C++11 destructors default to noexcept" msgstr "" -#: cp/cp-gimplify.c:1429 +#: cp/cp-gimplify.c:1430 #, gcc-internal-format msgid "in C++11 this throw will terminate because destructors default to noexcept" msgstr "" @@ -40257,7 +40306,7 @@ msgid "redeclaration %qD differs in % from previous declaration" msgstr "la redeclaración de %qD difiere en %" -#: cp/decl.c:1304 cp/decl.c:13843 +#: cp/decl.c:1304 cp/decl.c:13867 #, fuzzy, gcc-internal-format #| msgid "previous declaration %q+#D" msgid "previous declaration %qD" @@ -40617,7 +40666,7 @@ msgid " enters OpenMP structured block" msgstr " entra al bloque estructurado OpenMP" -#: cp/decl.c:3434 cp/parser.c:12366 cp/parser.c:12387 +#: cp/decl.c:3434 cp/parser.c:12363 cp/parser.c:12384 #, gcc-internal-format msgid "invalid exit from OpenMP structured block" msgstr "salida no válida de un bloque estructurado OpenMP" @@ -40627,7 +40676,7 @@ msgid "%qD is not a type" msgstr "%qD no es un tipo" -#: cp/decl.c:3838 cp/parser.c:6366 +#: cp/decl.c:3838 cp/parser.c:6369 #, gcc-internal-format msgid "%qD used without template parameters" msgstr "se usa %qD sin parámetros de plantilla" @@ -41028,8 +41077,8 @@ msgid "C99 designator %qE outside aggregate initializer" msgstr "asignador C99 %qE fuera del inicializador agregado" -#: cp/decl.c:6011 cp/decl.c:6234 cp/typeck2.c:1310 cp/typeck2.c:1590 -#: cp/typeck2.c:1638 cp/typeck2.c:1685 +#: cp/decl.c:6011 cp/decl.c:6234 cp/typeck2.c:1310 cp/typeck2.c:1593 +#: cp/typeck2.c:1641 cp/typeck2.c:1688 #, gcc-internal-format msgid "too many initializers for %qT" msgstr "demasiados inicializadores para %qT" @@ -41106,13 +41155,13 @@ msgid "assignment (not initialization) in declaration" msgstr "asignación (no inicialización) en la declaración" -#: cp/decl.c:6873 cp/decl.c:12605 +#: cp/decl.c:6873 cp/decl.c:12629 #, fuzzy, gcc-internal-format #| msgid "ISO C++ does not allow designated initializers" msgid "ISO C++17 does not allow % storage class specifier" msgstr "ISO C++ no permite inicializadores designados" -#: cp/decl.c:6877 cp/decl.c:12609 +#: cp/decl.c:6877 cp/decl.c:12633 #, fuzzy, gcc-internal-format #| msgid "storage class specified for %qs" msgid "% storage class specifier used" @@ -41140,46 +41189,46 @@ msgid "function %q#D is initialized like a variable" msgstr "la función %q#D se inicializa como una variable" -#: cp/decl.c:7329 +#: cp/decl.c:7350 #, fuzzy, gcc-internal-format #| msgid " cannot use obsolete binding at %q+D because it has a destructor" msgid "cannot decompose class type %qT because it has an anonymous struct member" msgstr " no se puede usar la asignación obsoleta en %q+D porque tiene un destructor" -#: cp/decl.c:7332 +#: cp/decl.c:7353 #, gcc-internal-format msgid "cannot decompose class type %qT because it has an anonymous union member" msgstr "" -#: cp/decl.c:7339 +#: cp/decl.c:7360 #, fuzzy, gcc-internal-format #| msgid "cannot form pointer to member of non-class %q#T" msgid "cannot decompose inaccessible member %qD of %qT" msgstr "no se puede formar un puntero al miembro de %q#T que no es clase" -#: cp/decl.c:7365 +#: cp/decl.c:7386 #, gcc-internal-format msgid "cannot decompose class type %qT: both it and its base class %qT have non-static data members" msgstr "" -#: cp/decl.c:7374 +#: cp/decl.c:7395 #, gcc-internal-format msgid "cannot decompose class type %qT: its base classes %qT and %qT have non-static data members" msgstr "" -#: cp/decl.c:7592 +#: cp/decl.c:7613 #, fuzzy, gcc-internal-format #| msgid "dereferencing pointer to incomplete type" msgid "structured binding refers to incomplete type %qT" msgstr "puntero deferenciado a tipo de dato incompleto" -#: cp/decl.c:7608 +#: cp/decl.c:7629 #, fuzzy, gcc-internal-format #| msgid "ISO C90 forbids variable length array %qE" msgid "cannot decompose variable length array %qT" msgstr "ISO C90 prohíbe la matriz de longitud variable %qE" -#: cp/decl.c:7617 cp/decl.c:7702 +#: cp/decl.c:7638 cp/decl.c:7723 #, fuzzy, gcc-internal-format, gfc-internal-format #| msgid "%qs specified for structure field" msgid "%u name provided for structured binding" @@ -41187,7 +41236,7 @@ msgstr[0] "se especificó %qs para el campo de estructura" msgstr[1] "se especificó %qs para el campo de estructura" -#: cp/decl.c:7621 +#: cp/decl.c:7642 #, fuzzy, gcc-internal-format, gfc-internal-format #| msgid "invalid initializer for bit string" msgid "only %u name provided for structured binding" @@ -41195,7 +41244,7 @@ msgstr[0] "inicializador no válido para la cadena de bits" msgstr[1] "inicializador no válido para la cadena de bits" -#: cp/decl.c:7624 +#: cp/decl.c:7645 #, gcc-internal-format msgid "while %qT decomposes into %wu element" msgid_plural "while %qT decomposes into %wu elements" @@ -41202,264 +41251,264 @@ msgstr[0] "" msgstr[1] "" -#: cp/decl.c:7669 +#: cp/decl.c:7690 #, fuzzy, gcc-internal-format #| msgid "ISO C90 forbids variable length array %qE" msgid "cannot decompose variable length vector %qT" msgstr "ISO C90 prohíbe la matriz de longitud variable %qE" -#: cp/decl.c:7695 +#: cp/decl.c:7716 #, fuzzy, gcc-internal-format #| msgid "size of array is not an integral constant-expression" msgid "%::value%> is not an integral constant expression" msgstr "el tamaño de la matriz no es una expresion constante integral" -#: cp/decl.c:7704 +#: cp/decl.c:7725 #, gcc-internal-format msgid "while %qT decomposes into %E elements" msgstr "" -#: cp/decl.c:7725 +#: cp/decl.c:7746 #, fuzzy, gcc-internal-format #| msgid "invalid type for iteration variable %qE" msgid "in initialization of structured binding variable %qD" msgstr "tipo no válido para la variable de iteración %qE" -#: cp/decl.c:7751 +#: cp/decl.c:7772 #, fuzzy, gcc-internal-format #| msgid "cannot declare pointer to qualified function type %qT" msgid "cannot decompose union type %qT" msgstr "no se puede declarar el puntero para el tipo de función calificado %qT" -#: cp/decl.c:7756 +#: cp/decl.c:7777 #, fuzzy, gcc-internal-format #| msgid "creating pointer to member of non-class type %qT" msgid "cannot decompose non-array non-class type %qT" msgstr "se crea un puntero al miembro del tipo %qT que no es clase" -#: cp/decl.c:7761 +#: cp/decl.c:7782 #, fuzzy, gcc-internal-format #| msgid "cannot declare pointer to qualified function type %qT" msgid "cannot decompose lambda closure type %qT" msgstr "no se puede declarar el puntero para el tipo de función calificado %qT" -#: cp/decl.c:7765 +#: cp/decl.c:7786 #, fuzzy, gcc-internal-format #| msgid "dereferencing pointer to incomplete type" msgid "structured binding refers to incomplete class type %qT" msgstr "puntero deferenciado a tipo de dato incompleto" -#: cp/decl.c:7774 +#: cp/decl.c:7795 #, fuzzy, gcc-internal-format #| msgid "cannot apply % to static data member %qD" msgid "cannot decompose class type %qT without non-static data members" msgstr "no se puede aplicar % al dato miembro static %qD" -#: cp/decl.c:8213 +#: cp/decl.c:8234 #, gcc-internal-format msgid "non-local variable %qD declared %<__thread%> needs dynamic initialization" msgstr "" -#: cp/decl.c:8216 +#: cp/decl.c:8237 #, fuzzy, gcc-internal-format #| msgid " %q+T has a non-trivial destructor" msgid "non-local variable %qD declared %<__thread%> has a non-trivial destructor" msgstr " %q+T tiene un destructor que no es trivial" -#: cp/decl.c:8222 +#: cp/decl.c:8243 #, gcc-internal-format msgid "C++11 % allows dynamic initialization and destruction" msgstr "" -#: cp/decl.c:8450 +#: cp/decl.c:8471 #, gcc-internal-format msgid "initializer fails to determine size of %qT" msgstr "el inicializador no puede determinar el tamaño de %qT" -#: cp/decl.c:8454 +#: cp/decl.c:8475 #, gcc-internal-format msgid "array size missing in %qT" msgstr "falta el tamaño de la matriz en %qT" -#: cp/decl.c:8457 +#: cp/decl.c:8478 #, gcc-internal-format msgid "zero-size array %qT" msgstr "matriz %qT de tamaño cero" -#: cp/decl.c:8473 +#: cp/decl.c:8494 #, gcc-internal-format msgid "destructor for alien class %qT cannot be a member" msgstr "el destructor para la clase extranjera %qT no puede ser un miembro" -#: cp/decl.c:8475 +#: cp/decl.c:8496 #, gcc-internal-format msgid "constructor for alien class %qT cannot be a member" msgstr "el constructor para la clase extranjera %qT no puede ser un miembro" -#: cp/decl.c:8499 +#: cp/decl.c:8520 #, gcc-internal-format msgid "%qD declared as a % variable" msgstr "%qD se declaró como una variable %" -#: cp/decl.c:8501 +#: cp/decl.c:8522 #, gcc-internal-format msgid "% and % function specifiers on %qD invalid in variable declaration" msgstr "los especificadores de función % y % en %qD son no válidos en la declaración de variable" -#: cp/decl.c:8506 +#: cp/decl.c:8527 #, gcc-internal-format msgid "%qD declared as a % parameter" msgstr "%qD se declaró como un parámetro %" -#: cp/decl.c:8508 +#: cp/decl.c:8529 #, gcc-internal-format msgid "%qD declared as an % parameter" msgstr "%qD se declaró como un parámetro %" -#: cp/decl.c:8510 +#: cp/decl.c:8531 #, gcc-internal-format msgid "% and % function specifiers on %qD invalid in parameter declaration" msgstr "los especificadores de función % y % en %qD son no válidos en la declaración de parámetro" -#: cp/decl.c:8515 +#: cp/decl.c:8536 #, gcc-internal-format msgid "%qD declared as a % type" msgstr "%qD se declaró como un tipo %" -#: cp/decl.c:8517 +#: cp/decl.c:8538 #, gcc-internal-format msgid "%qD declared as an % type" msgstr "%qD se declaró como un tipo %" -#: cp/decl.c:8519 +#: cp/decl.c:8540 #, gcc-internal-format msgid "% and % function specifiers on %qD invalid in type declaration" msgstr "los especificadores de función % y % en %qD son no válidos en la declaración de tipo" -#: cp/decl.c:8524 +#: cp/decl.c:8545 #, gcc-internal-format msgid "%qD declared as a % field" msgstr "%qD se declaró como un campo %" -#: cp/decl.c:8526 +#: cp/decl.c:8547 #, gcc-internal-format msgid "%qD declared as an % field" msgstr "%qD se declaró como un campo %" -#: cp/decl.c:8528 +#: cp/decl.c:8549 #, gcc-internal-format msgid "% and % function specifiers on %qD invalid in field declaration" msgstr "los especificadores de función % y % en %qD son no válidos en la declaración de campo" -#: cp/decl.c:8535 +#: cp/decl.c:8556 #, gcc-internal-format msgid "%q+D declared as a friend" msgstr "%q+D se declaró como friend" -#: cp/decl.c:8542 +#: cp/decl.c:8563 #, gcc-internal-format msgid "%q+D declared with an exception specification" msgstr "%q+D se declaró con una especificación de excepción" -#: cp/decl.c:8574 +#: cp/decl.c:8595 #, gcc-internal-format msgid "definition of %qD is not in namespace enclosing %qT" msgstr "la definición de %qD no está en un espacio de nombres que contenga a %qT" -#: cp/decl.c:8614 +#: cp/decl.c:8635 #, gcc-internal-format msgid "static member function %q#D declared with type qualifiers" msgstr "la función miembro static %q#D se declara con calificadores de tipo" -#: cp/decl.c:8624 +#: cp/decl.c:8645 #, fuzzy, gcc-internal-format #| msgid "%qD declared as a non-parameter" msgid "concept %q#D declared with function parameters" msgstr "%qD se declaró como un no-parámetro" -#: cp/decl.c:8630 +#: cp/decl.c:8651 #, fuzzy, gcc-internal-format #| msgid "parameter %qD declared with void type" msgid "concept %q#D declared with a deduced return type" msgstr "el parámetro %qD se declaró con tipo void" -#: cp/decl.c:8632 +#: cp/decl.c:8653 #, fuzzy, gcc-internal-format #| msgid "Java method %qD has non-Java return type %qT" msgid "concept %q#D with non-% return type %qT" msgstr "el método Java %qD tiene un tipo de devolución %qT que no es de Java" -#: cp/decl.c:8703 +#: cp/decl.c:8724 #, fuzzy, gcc-internal-format #| msgid "expected %<;%> after union definition" msgid "concept %qD has no definition" msgstr "se esperaba %<;%> después de la definición de union" -#: cp/decl.c:8772 +#: cp/decl.c:8793 #, gcc-internal-format msgid "defining explicit specialization %qD in friend declaration" msgstr "definiendo la especialización explícita %qD en la declaración friend" #. Something like `template friend void f()'. -#: cp/decl.c:8782 +#: cp/decl.c:8803 #, gcc-internal-format msgid "invalid use of template-id %qD in declaration of primary template" msgstr "uso no válido del id de plantilla %qD en la declaración de la plantilla primaria" -#: cp/decl.c:8800 +#: cp/decl.c:8821 #, gcc-internal-format msgid "default arguments are not allowed in declaration of friend template specialization %qD" msgstr "no se permiten los argumentos por defecto en la declaración de la especialización friend de la plantilla %qD" -#: cp/decl.c:8808 +#: cp/decl.c:8829 #, gcc-internal-format msgid "% is not allowed in declaration of friend template specialization %qD" msgstr "no se permite % en la declaración de la especialización friend de la plantilla %qD" -#: cp/decl.c:8857 +#: cp/decl.c:8878 #, gcc-internal-format msgid "cannot declare %<::main%> to be a template" msgstr "no se puede declarar %<::main%> como plantilla" -#: cp/decl.c:8859 +#: cp/decl.c:8880 #, gcc-internal-format msgid "cannot declare %<::main%> to be inline" msgstr "no se puede declarar %<::main%> como inline" -#: cp/decl.c:8861 +#: cp/decl.c:8882 #, fuzzy, gcc-internal-format #| msgid "cannot declare %<::main%> to be inline" msgid "cannot declare %<::main%> to be %" msgstr "no se puede declarar %<::main%> como inline" -#: cp/decl.c:8863 +#: cp/decl.c:8884 #, gcc-internal-format msgid "cannot declare %<::main%> to be static" msgstr "no se puede declarar %<::main%> como static" -#: cp/decl.c:8920 +#: cp/decl.c:8941 #, gcc-internal-format msgid "static member function %qD cannot have cv-qualifier" msgstr "la función miembro static %qD no puede tener calificador-cv" -#: cp/decl.c:8921 +#: cp/decl.c:8942 #, gcc-internal-format msgid "non-member function %qD cannot have cv-qualifier" msgstr "la función que no es miembro %qD no puede tener calificador-cv" -#: cp/decl.c:8929 +#: cp/decl.c:8950 #, fuzzy, gcc-internal-format #| msgid "static member function %qD cannot have cv-qualifier" msgid "static member function %qD cannot have ref-qualifier" msgstr "la función miembro static %qD no puede tener calificador-cv" -#: cp/decl.c:8930 +#: cp/decl.c:8951 #, fuzzy, gcc-internal-format #| msgid "non-member function %qD cannot have cv-qualifier" msgid "non-member function %qD cannot have ref-qualifier" msgstr "la función que no es miembro %qD no puede tener calificador-cv" -#: cp/decl.c:8940 +#: cp/decl.c:8961 #, fuzzy, gcc-internal-format #| msgid "specialization of %qD must appear at namespace scope" msgid "deduction guide %qD must be declared at namespace scope" @@ -41466,672 +41515,672 @@ msgstr "la especialización de %qD debe aparecer en un ámbito de espacio de nombres" # FIXME traducción -#: cp/decl.c:8946 +#: cp/decl.c:8967 #, fuzzy, gcc-internal-format #| msgid "declaration of %qD as non-function" msgid "deduction guide %qD must not have a function body" msgstr "la declaración de %qD como algo que no es función" -#: cp/decl.c:8959 +#: cp/decl.c:8980 #, gcc-internal-format msgid "literal operator with C linkage" msgstr "operador literal con enlace C" -#: cp/decl.c:8969 +#: cp/decl.c:8990 #, gcc-internal-format msgid "%qD has invalid argument list" msgstr "%qD tien una lista de argumentos no válida" -#: cp/decl.c:8977 +#: cp/decl.c:8998 #, fuzzy, gcc-internal-format #| msgid "integer suffix %<%s%> shadowed by implementation" msgid "integer suffix %qs shadowed by implementation" msgstr "se oscurece el sufijo entero %<%s%> por la implementación" -#: cp/decl.c:8983 +#: cp/decl.c:9004 #, fuzzy, gcc-internal-format #| msgid "floating point suffix %<%s%> shadowed by implementation" msgid "floating point suffix %qs shadowed by implementation" msgstr "se oscurece el sufijo de coma flotante %<%s%> por la implementación" -#: cp/decl.c:8991 +#: cp/decl.c:9012 #, gcc-internal-format msgid "literal operator suffixes not preceded by %<_%> are reserved for future standardization" msgstr "los sufijos de operador literal que no están precedidos por %<_%> están reservados para estandarización futura" -#: cp/decl.c:8996 +#: cp/decl.c:9017 #, gcc-internal-format msgid "%qD must be a non-member function" msgstr "%qD debe ser una función que no sea miembro" -#: cp/decl.c:9076 +#: cp/decl.c:9097 #, gcc-internal-format msgid "%<::main%> must return %" msgstr "%<::main%> debe devolver %" -#: cp/decl.c:9116 +#: cp/decl.c:9137 #, gcc-internal-format msgid "definition of implicitly-declared %qD" msgstr "la definición de %qD declarado implícitamente" -#: cp/decl.c:9121 +#: cp/decl.c:9142 #, gcc-internal-format msgid "definition of explicitly-defaulted %q+D" msgstr "la definición de %qD explícitamente por defecto" -#: cp/decl.c:9123 +#: cp/decl.c:9144 #, fuzzy, gcc-internal-format #| msgid "%q+#D explicitly defaulted here" msgid "%q#D explicitly defaulted here" msgstr "%q+#D explícitamente por defecto aquí" -#: cp/decl.c:9140 +#: cp/decl.c:9161 #, gcc-internal-format msgid "no %q#D member function declared in class %qT" msgstr "no hay una función miembro %q#D declarada en la clase %qT" -#: cp/decl.c:9329 +#: cp/decl.c:9350 #, fuzzy, gcc-internal-format #| msgid "cannot declare %<::main%> to be a template" msgid "cannot declare %<::main%> to be a global variable" msgstr "no se puede declarar %<::main%> como plantilla" -#: cp/decl.c:9337 +#: cp/decl.c:9358 #, fuzzy, gcc-internal-format #| msgid "automatic variable %qE cannot be %" msgid "a non-template variable cannot be %" msgstr "la variable automática %qE no puede ser %" -#: cp/decl.c:9344 +#: cp/decl.c:9365 #, gcc-internal-format msgid "concept must have type %" msgstr "" -#: cp/decl.c:9464 +#: cp/decl.c:9485 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of incomplete type" msgstr "inicialización en la clase del miembro de datos static %q#D de tipo incompleto" -#: cp/decl.c:9468 +#: cp/decl.c:9489 #, gcc-internal-format msgid "% needed for in-class initialization of static data member %q#D of non-integral type" msgstr "se necesita % para la inicialización en la clase no válida del miembro de datos static %q#D de tipo que no es integral" -#: cp/decl.c:9472 +#: cp/decl.c:9493 #, gcc-internal-format msgid "in-class initialization of static data member %q#D of non-literal type" msgstr "inicialización en la clase del miembro de datos static %q#D de tipo que no es literal" -#: cp/decl.c:9486 +#: cp/decl.c:9507 #, gcc-internal-format msgid "invalid in-class initialization of static data member of non-integral type %qT" msgstr "inicialización en la clase no válida para el miembro de datos static de tipo %qT que no es integral" -#: cp/decl.c:9493 +#: cp/decl.c:9514 #, gcc-internal-format msgid "ISO C++ forbids in-class initialization of non-const static member %qD" msgstr "ISO C++ prohíbe la inicialización en la clase del miembro static %qD que no es constante" -#: cp/decl.c:9498 +#: cp/decl.c:9519 #, gcc-internal-format msgid "ISO C++ forbids initialization of member constant %qD of non-integral type %qT" msgstr "ISO C++ prohíbe la inicialización de la constante miembro %qD del tipo %qT que no es entero" -#: cp/decl.c:9598 +#: cp/decl.c:9619 #, gcc-internal-format msgid "size of array %qD has non-integral type %qT" msgstr "el tamaño de la matriz %qD tiene un tipo %qT que no es integral" -#: cp/decl.c:9600 +#: cp/decl.c:9621 #, gcc-internal-format msgid "size of array has non-integral type %qT" msgstr "el tamaño de la matriz tiene un tipo %qT que no es integral" -#: cp/decl.c:9630 cp/decl.c:9680 +#: cp/decl.c:9651 cp/decl.c:9701 #, gcc-internal-format msgid "size of array is not an integral constant-expression" msgstr "el tamaño de la matriz no es una expresion constante integral" -#: cp/decl.c:9646 +#: cp/decl.c:9667 #, gcc-internal-format msgid "size of array %qD is negative" msgstr "el tamaño de la matriz %qD es negativo" -#: cp/decl.c:9648 cp/init.c:3651 +#: cp/decl.c:9669 cp/init.c:3667 #, gcc-internal-format msgid "size of array is negative" msgstr "el tamaño de la matriz es negativo" -#: cp/decl.c:9662 +#: cp/decl.c:9683 #, gcc-internal-format msgid "ISO C++ forbids zero-size array %qD" msgstr "ISO C++ prohíbe la matriz %qD de tamaño cero" -#: cp/decl.c:9664 +#: cp/decl.c:9685 #, gcc-internal-format msgid "ISO C++ forbids zero-size array" msgstr "ISO C++ prohíbe matrices de tamaño cero" -#: cp/decl.c:9677 +#: cp/decl.c:9698 #, gcc-internal-format msgid "size of array %qD is not an integral constant-expression" msgstr "el tamaño de la matriz %qD no es una expresion constante integral" -#: cp/decl.c:9686 +#: cp/decl.c:9707 #, gcc-internal-format msgid "ISO C++ forbids variable length array %qD" msgstr "ISO C++ prohíbe la matriz %qD de longitud variable" -#: cp/decl.c:9688 +#: cp/decl.c:9709 #, gcc-internal-format msgid "ISO C++ forbids variable length array" msgstr "ISO C++ prohíbe las matrices de longitud variable" -#: cp/decl.c:9694 +#: cp/decl.c:9715 #, gcc-internal-format msgid "variable length array %qD is used" msgstr "se usa la matriz de longitud variable %qD" -#: cp/decl.c:9697 +#: cp/decl.c:9718 #, gcc-internal-format msgid "variable length array is used" msgstr "se usó la matriz de longitud variable" -#: cp/decl.c:9746 +#: cp/decl.c:9767 #, gcc-internal-format msgid "overflow in array dimension" msgstr "desbordamiento en la dimensión de la matriz" -#: cp/decl.c:9799 +#: cp/decl.c:9820 #, fuzzy, gcc-internal-format #| msgid "%q+D declared as a friend" msgid "%qD declared as array of %qT" msgstr "%q+D se declaró como friend" -#: cp/decl.c:9809 +#: cp/decl.c:9830 #, gcc-internal-format msgid "declaration of %qD as array of void" msgstr "la declaración de %qD como una matriz de voids" -#: cp/decl.c:9811 +#: cp/decl.c:9832 #, gcc-internal-format msgid "creating array of void" msgstr "se crea la matriz de voids" -#: cp/decl.c:9816 +#: cp/decl.c:9837 #, gcc-internal-format msgid "declaration of %qD as array of functions" msgstr "la declaración de %qD como una matriz de funciones" -#: cp/decl.c:9818 +#: cp/decl.c:9839 #, gcc-internal-format msgid "creating array of functions" msgstr "se crea la matriz de funciones" -#: cp/decl.c:9823 +#: cp/decl.c:9844 #, gcc-internal-format msgid "declaration of %qD as array of references" msgstr "la declaración de %qD como una matriz de referencias" -#: cp/decl.c:9825 +#: cp/decl.c:9846 #, gcc-internal-format msgid "creating array of references" msgstr "se crea la matriz de referencias" -#: cp/decl.c:9830 +#: cp/decl.c:9851 #, gcc-internal-format msgid "declaration of %qD as array of function members" msgstr "la declaración de %qD como una matriz de miembros de función" -#: cp/decl.c:9832 +#: cp/decl.c:9853 #, gcc-internal-format msgid "creating array of function members" msgstr "se crea la matriz de miembros de función" -#: cp/decl.c:9846 +#: cp/decl.c:9867 #, gcc-internal-format msgid "declaration of %qD as multidimensional array must have bounds for all dimensions except the first" msgstr "la declaración de %qD como una matriz multidimensional debe tener límites para todas las dimensiones excepto la primera" -#: cp/decl.c:9850 +#: cp/decl.c:9871 #, gcc-internal-format msgid "multidimensional array must have bounds for all dimensions except the first" msgstr "una matriz multidimensional debe tener límites para todas las dimensiones excepto para la primera" -#: cp/decl.c:9909 +#: cp/decl.c:9930 #, gcc-internal-format msgid "return type specification for constructor invalid" msgstr "la especificación del tipo de devolución para el constructor es no válida" -#: cp/decl.c:9912 +#: cp/decl.c:9933 #, fuzzy, gcc-internal-format #| msgid "qualifiers are not allowed on declaration of %" msgid "qualifiers are not allowed on constructor declaration" msgstr "no se permiten calificadores en la declaración de %" -#: cp/decl.c:9922 +#: cp/decl.c:9943 #, gcc-internal-format msgid "return type specification for destructor invalid" msgstr "la especificación del tipo de devolución para el destructor es no válida" -#: cp/decl.c:9925 +#: cp/decl.c:9946 #, fuzzy, gcc-internal-format #| msgid "qualifiers are not allowed on declaration of %" msgid "qualifiers are not allowed on destructor declaration" msgstr "no se permiten calificadores en la declaración de %" -#: cp/decl.c:9937 +#: cp/decl.c:9958 #, gcc-internal-format msgid "return type specified for %" msgstr "se especificó un tipo de devolución para %" -#: cp/decl.c:9940 +#: cp/decl.c:9961 #, gcc-internal-format msgid "qualifiers are not allowed on declaration of %" msgstr "no se permiten calificadores en la declaración de %" -#: cp/decl.c:9948 +#: cp/decl.c:9969 #, fuzzy, gcc-internal-format #| msgid "return type specification for destructor invalid" msgid "return type specified for deduction guide" msgstr "la especificación del tipo de devolución para el destructor es no válida" -#: cp/decl.c:9951 +#: cp/decl.c:9972 #, fuzzy, gcc-internal-format #| msgid "qualifiers are not allowed on declaration of %" msgid "qualifiers are not allowed on declaration of deduction guide" msgstr "no se permiten calificadores en la declaración de %" -#: cp/decl.c:9955 +#: cp/decl.c:9976 #, fuzzy, gcc-internal-format #| msgid "conflicting specifiers in declaration of %qs" msgid "template template parameter %qT in declaration of deduction guide" msgstr "especificadores en conflicto en la declaración de %qs" -#: cp/decl.c:9964 +#: cp/decl.c:9985 #, fuzzy, gcc-internal-format #| msgid "conflicting specifiers in declaration of %qs" msgid "decl-specifier in declaration of deduction guide" msgstr "especificadores en conflicto en la declaración de %qs" -#: cp/decl.c:9985 +#: cp/decl.c:10006 #, gcc-internal-format msgid "unnamed variable or field declared void" msgstr "se declaró la variable o campo sin nombre como void" -#: cp/decl.c:9992 +#: cp/decl.c:10013 #, gcc-internal-format msgid "variable or field declared void" msgstr "se declaró la variable o campo como void" -#: cp/decl.c:10007 +#: cp/decl.c:10028 #, fuzzy, gcc-internal-format #| msgid "% specifier invalid for function %qs declared out of global scope" msgid "% specifier invalid for variable %qD declared at block scope" msgstr "el especificador % es no válido para la función %qs declarada fuera del ámbito global" -#: cp/decl.c:10013 +#: cp/decl.c:10034 #, fuzzy, gcc-internal-format #| msgid "inline namespaces only available with -std=c++11 or -std=gnu++11" msgid "inline variables are only available with -std=c++17 or -std=gnu++17" msgstr "los nombres de espacio incluidos en línea sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/decl.c:10268 +#: cp/decl.c:10292 #, gcc-internal-format msgid "invalid use of qualified-name %<::%D%>" msgstr "uso no válido del nombre calificado %<::%D%>" -#: cp/decl.c:10271 cp/decl.c:10291 +#: cp/decl.c:10295 cp/decl.c:10315 #, gcc-internal-format msgid "invalid use of qualified-name %<%T::%D%>" msgstr "uso no válido del nombre calificado %<%T::%D%>" -#: cp/decl.c:10274 +#: cp/decl.c:10298 #, gcc-internal-format msgid "invalid use of qualified-name %<%D::%D%>" msgstr "uso no válido del nombre calificado %<%D::%D%>" -#: cp/decl.c:10283 +#: cp/decl.c:10307 #, gcc-internal-format msgid "%q#T is not a class or a namespace" msgstr "%q#T no es una clase o un espacio de nombres" # FIXME traducción -#: cp/decl.c:10305 cp/decl.c:10398 cp/decl.c:10407 cp/decl.c:11970 +#: cp/decl.c:10329 cp/decl.c:10422 cp/decl.c:10431 cp/decl.c:11994 #, gcc-internal-format msgid "declaration of %qD as non-function" msgstr "la declaración de %qD como algo que no es función" # FIXME traducción -#: cp/decl.c:10311 +#: cp/decl.c:10335 #, gcc-internal-format msgid "declaration of %qD as non-member" msgstr "declaración de %qD como algo que no es miembro" -#: cp/decl.c:10339 +#: cp/decl.c:10363 #, gcc-internal-format msgid "declarator-id missing; using reserved word %qD" msgstr "falta el id del declarador; se utiliza la palabra reservada %qD" -#: cp/decl.c:10390 +#: cp/decl.c:10414 #, gcc-internal-format msgid "function definition does not declare parameters" msgstr "la definición de la función no declara parámetros" -#: cp/decl.c:10415 +#: cp/decl.c:10439 #, gcc-internal-format msgid "declaration of %qD as %" msgstr "declaración de %qD como %" -#: cp/decl.c:10420 +#: cp/decl.c:10444 #, gcc-internal-format msgid "declaration of %qD as parameter" msgstr "la declaración de %qD como parámetro" -#: cp/decl.c:10454 +#: cp/decl.c:10478 #, fuzzy, gcc-internal-format #| msgid "% cannot appear in a typedef declaration" msgid "% cannot appear in a typedef declaration" msgstr "% no puede aparecer en una declaración typedef" -#: cp/decl.c:10460 +#: cp/decl.c:10484 #, gcc-internal-format msgid "% cannot appear in a typedef declaration" msgstr "% no puede aparecer en una declaración typedef" -#: cp/decl.c:10468 +#: cp/decl.c:10492 #, gcc-internal-format msgid "two or more data types in declaration of %qs" msgstr "dos o más tipos de datos en la declaración de %qs" -#: cp/decl.c:10474 +#: cp/decl.c:10498 #, gcc-internal-format msgid "conflicting specifiers in declaration of %qs" msgstr "especificadores en conflicto en la declaración de %qs" -#: cp/decl.c:10515 +#: cp/decl.c:10539 #, fuzzy, gcc-internal-format #| msgid "ISO C does not support plain % meaning %" msgid "ISO C++ does not support plain % meaning %" msgstr "ISO C no admite % simples que significan %" -#: cp/decl.c:10564 cp/decl.c:10567 cp/decl.c:10570 +#: cp/decl.c:10588 cp/decl.c:10591 cp/decl.c:10594 #, gcc-internal-format msgid "ISO C++ forbids declaration of %qs with no type" msgstr "ISO C++ prohíbe la declaración de %qs sin tipo" -#: cp/decl.c:10586 +#: cp/decl.c:10610 #, fuzzy, gcc-internal-format #| msgid "%<__int128%> is not supported by this target" msgid "%<__int%d%> is not supported by this target" msgstr "no se admite %<__int128%> en este objetivo" -#: cp/decl.c:10592 +#: cp/decl.c:10616 #, fuzzy, gcc-internal-format #| msgid "ISO C++ does not support %<__int128%> for %qs" msgid "ISO C++ does not support %<__int%d%> for %qs" msgstr "ISO C++ no admite %<__int128%> para %qs" -#: cp/decl.c:10614 cp/decl.c:10634 +#: cp/decl.c:10638 cp/decl.c:10658 #, gcc-internal-format msgid "% or % invalid for %qs" msgstr "% o % no válido para %qs" -#: cp/decl.c:10616 +#: cp/decl.c:10640 #, gcc-internal-format msgid "% and % specified together for %qs" msgstr "% y % se especificaron juntos para %qs" -#: cp/decl.c:10618 +#: cp/decl.c:10642 #, gcc-internal-format msgid "% invalid for %qs" msgstr "% no válido para %qs" -#: cp/decl.c:10620 +#: cp/decl.c:10644 #, gcc-internal-format msgid "% invalid for %qs" msgstr "% no válido para %qs" -#: cp/decl.c:10622 +#: cp/decl.c:10646 #, gcc-internal-format msgid "% invalid for %qs" msgstr "% no válido para %qs" -#: cp/decl.c:10624 +#: cp/decl.c:10648 #, gcc-internal-format msgid "% or % invalid for %qs" msgstr "% o % no válidos para %qs" -#: cp/decl.c:10626 +#: cp/decl.c:10650 #, gcc-internal-format msgid "%, %, %, or % invalid for %qs" msgstr "%, %, %, o % no válido para %qs" -#: cp/decl.c:10628 +#: cp/decl.c:10652 #, gcc-internal-format msgid "% or % specified with char for %qs" msgstr "se especificó % o % con char para %qs" -#: cp/decl.c:10630 +#: cp/decl.c:10654 #, gcc-internal-format msgid "% and % specified together for %qs" msgstr "% y % se especificaron juntos para %qs" -#: cp/decl.c:10636 +#: cp/decl.c:10660 #, gcc-internal-format msgid "% or % invalid for %qs" msgstr "% o % no válidos para %qs" -#: cp/decl.c:10644 +#: cp/decl.c:10668 #, gcc-internal-format msgid "long, short, signed or unsigned used invalidly for %qs" msgstr "uso no válido de long, short, signed ó unsigned para %qs" -#: cp/decl.c:10712 +#: cp/decl.c:10736 #, gcc-internal-format msgid "complex invalid for %qs" msgstr "complex no válido para %qs" -#: cp/decl.c:10751 +#: cp/decl.c:10775 #, gcc-internal-format msgid "template placeholder type %qT must be followed by a simple declarator-id" msgstr "" -#: cp/decl.c:10769 +#: cp/decl.c:10793 #, fuzzy, gcc-internal-format #| msgid "member %qD cannot be declared both virtual and static" msgid "member %qD cannot be declared both % and %" msgstr "el miembro %qD no se puede declarar como virtual y static al mismo tiempo" -#: cp/decl.c:10775 +#: cp/decl.c:10799 #, fuzzy, gcc-internal-format #| msgid "member %qD cannot be declared both virtual and static" msgid "member %qD cannot be declared both % and %" msgstr "el miembro %qD no se puede declarar como virtual y static al mismo tiempo" -#: cp/decl.c:10785 +#: cp/decl.c:10809 #, gcc-internal-format msgid "typedef declaration invalid in parameter declaration" msgstr "declaración typedef no válida en la declaración de parámetros" -#: cp/decl.c:10790 +#: cp/decl.c:10814 #, gcc-internal-format msgid "storage class specified for template parameter %qs" msgstr "se especificó una clase de almacenamiento para el parámetro de plantilla %qs" -#: cp/decl.c:10796 +#: cp/decl.c:10820 #, gcc-internal-format msgid "storage class specifiers invalid in parameter declarations" msgstr "especificadores de clase de almacenamiento no válidos en las declaraciones de parámetros" -#: cp/decl.c:10800 +#: cp/decl.c:10824 #, fuzzy, gcc-internal-format #| msgid "a parameter cannot be declared %" msgid "a parameter cannot be declared %" msgstr "un parámetro no se puede declarar %" -#: cp/decl.c:10805 +#: cp/decl.c:10829 #, gcc-internal-format msgid "a parameter cannot be declared %" msgstr "un parámetro no se puede declarar %" -#: cp/decl.c:10815 +#: cp/decl.c:10839 #, gcc-internal-format msgid "% outside class declaration" msgstr "declaración de clase fuera de %" -#: cp/decl.c:10825 +#: cp/decl.c:10849 #, fuzzy, gcc-internal-format #| msgid "constructors cannot be declared virtual" msgid "structured binding declaration cannot be %" msgstr "los constructores no se pueden declarar virtual" -#: cp/decl.c:10828 +#: cp/decl.c:10852 #, fuzzy, gcc-internal-format #| msgid "function definition declared %" msgid "structured binding declaration cannot be %" msgstr "la definición de la función se declaró como %" -#: cp/decl.c:10830 +#: cp/decl.c:10854 #, fuzzy, gcc-internal-format #| msgid "a parameter cannot be declared %" msgid "structured binding declaration cannot be %" msgstr "un parámetro no se puede declarar %" -#: cp/decl.c:10834 +#: cp/decl.c:10858 #, fuzzy, gcc-internal-format #| msgid "attribute ignored in declaration of %q#T" msgid "structured binding declaration cannot be %qs" msgstr "se descarta el atributo en la declaración de %q#T" -#: cp/decl.c:10839 +#: cp/decl.c:10863 #, fuzzy, gcc-internal-format #| msgid "a parameter cannot be declared %" msgid "structured binding declaration cannot be %" msgstr "un parámetro no se puede declarar %" -#: cp/decl.c:10845 +#: cp/decl.c:10869 #, fuzzy, gcc-internal-format #| msgid "function definition declared %" msgid "structured binding declaration cannot be %" msgstr "la definición de la función se declaró como %" -#: cp/decl.c:10849 +#: cp/decl.c:10873 #, fuzzy, gcc-internal-format #| msgid "constructors cannot be declared virtual" msgid "structured binding declaration cannot be %" msgstr "los constructores no se pueden declarar virtual" -#: cp/decl.c:10853 +#: cp/decl.c:10877 #, fuzzy, gcc-internal-format #| msgid "function %qs cannot be declared %" msgid "structured binding declaration cannot be %" msgstr "la función %qs no se puede declarar %" -#: cp/decl.c:10857 +#: cp/decl.c:10881 #, fuzzy, gcc-internal-format #| msgid "const %qs cannot be declared %" msgid "structured binding declaration cannot be %" msgstr "const %qs no se puede declarar %" -#: cp/decl.c:10861 +#: cp/decl.c:10885 #, fuzzy, gcc-internal-format #| msgid "function %qs cannot be declared %" msgid "structured binding declaration cannot be C++98 %" msgstr "la función %qs no se puede declarar %" -#: cp/decl.c:10872 +#: cp/decl.c:10896 #, fuzzy, gcc-internal-format #| msgid "indirect function %q+D cannot be declared weak" msgid "structured binding declaration cannot have type %qT" msgstr "la función indirecta %q+D no se puede declarar weak" -#: cp/decl.c:10875 +#: cp/decl.c:10899 #, gcc-internal-format msgid "type must be cv-qualified % or reference to cv-qualified %" msgstr "" -#: cp/decl.c:10906 +#: cp/decl.c:10930 #, gcc-internal-format msgid "multiple storage classes in declaration of %qs" msgstr "múltiples clases de almacenamiento en la declaración de %qs" -#: cp/decl.c:10929 +#: cp/decl.c:10953 #, gcc-internal-format msgid "storage class specified for %qs" msgstr "se especificó una clase de almacenamiento para %qs" -#: cp/decl.c:10933 +#: cp/decl.c:10957 #, gcc-internal-format msgid "storage class specified for parameter %qs" msgstr "se especificó una clase de almacenamiento para el parámetro %qs" -#: cp/decl.c:10946 +#: cp/decl.c:10970 #, gcc-internal-format msgid "nested function %qs declared %" msgstr "la función anidada %qs se declaró %" -#: cp/decl.c:10950 +#: cp/decl.c:10974 #, gcc-internal-format msgid "top-level declaration of %qs specifies %" msgstr "la declaración del nivel superior de %qs especifica %" -#: cp/decl.c:10957 +#: cp/decl.c:10981 #, gcc-internal-format msgid "function-scope %qs implicitly auto and declared %<__thread%>" msgstr "el ámbito de la función %qs es implícitamente auto y declarado %<__thread%>" -#: cp/decl.c:10969 +#: cp/decl.c:10993 #, gcc-internal-format msgid "storage class specifiers invalid in friend function declarations" msgstr "especificadores de clase de almacenamiento no válidos en las declaraciones de funciones friend" -#: cp/decl.c:11050 +#: cp/decl.c:11074 #, fuzzy, gcc-internal-format #| msgid "multiple storage classes in declaration of %qs" msgid "unnecessary parentheses in declaration of %qs" msgstr "múltiples clases de almacenamiento en la declaración de %qs" -#: cp/decl.c:11098 +#: cp/decl.c:11122 #, gcc-internal-format msgid "requires-clause on return type" msgstr "" -#: cp/decl.c:11118 +#: cp/decl.c:11142 #, gcc-internal-format msgid "%qs function uses % type specifier without trailing return type" msgstr "la función %qs usa el especificador de tipo % sin un tipo de devolución trailing" -#: cp/decl.c:11121 +#: cp/decl.c:11145 #, fuzzy, gcc-internal-format #| msgid "trailing return type only available with -std=c++11 or -std=gnu++11" msgid "deduced return type only available with -std=c++14 or -std=gnu++14" msgstr "el tipo de devolución trailing sólo está disponible con -std=c++11 o -std=gnu++11" -#: cp/decl.c:11127 +#: cp/decl.c:11151 #, fuzzy, gcc-internal-format #| msgid "virtual functions cannot be friends" msgid "virtual function cannot have deduced return type" msgstr "las funciones virtual no pueden ser friend" -#: cp/decl.c:11134 +#: cp/decl.c:11158 #, gcc-internal-format msgid "%qs function with trailing return type has %qT as its type rather than plain %" msgstr "la función %qs con tipo de devolución trailing tiene %qT como su tipo en lugar de un simple %" -#: cp/decl.c:11147 +#: cp/decl.c:11171 #, fuzzy, gcc-internal-format #| msgid "type qualifiers ignored on function return type" msgid "deduced class type %qD in function return type" msgstr "se descartan los calificadores de tipo en el tipo de devolución de la función" -#: cp/decl.c:11156 +#: cp/decl.c:11180 #, fuzzy, gcc-internal-format #| msgid "%qs function cannot have arguments" msgid "deduction guide for %qT must have trailing return type" msgstr "la función %qs no puede tener argumentos" -#: cp/decl.c:11169 +#: cp/decl.c:11193 #, gcc-internal-format msgid "trailing return type %qT of deduction guide is not a specialization of %qT" msgstr "" @@ -42138,59 +42187,59 @@ #. Not using maybe_warn_cpp0x because this should #. always be an error. -#: cp/decl.c:11180 +#: cp/decl.c:11204 #, gcc-internal-format msgid "trailing return type only available with -std=c++11 or -std=gnu++11" msgstr "el tipo de devolución trailing sólo está disponible con -std=c++11 o -std=gnu++11" -#: cp/decl.c:11183 +#: cp/decl.c:11207 #, gcc-internal-format msgid "%qs function with trailing return type not declared with % type specifier" msgstr "no se declaró la función %qs con tipo de devolución trailing con el especificador de tipo %" -#: cp/decl.c:11212 +#: cp/decl.c:11236 #, gcc-internal-format msgid "%qs declared as function returning a function" msgstr "%qs que se declaró como función devuelve una función" -#: cp/decl.c:11218 +#: cp/decl.c:11242 #, gcc-internal-format msgid "%qs declared as function returning an array" msgstr "%qs que se declaró como función devuelve una matriz" -#: cp/decl.c:11247 +#: cp/decl.c:11271 #, gcc-internal-format msgid "destructor cannot be static member function" msgstr "el destructor no puede ser una función miembro de tipo static" -#: cp/decl.c:11248 +#: cp/decl.c:11272 #, gcc-internal-format msgid "constructor cannot be static member function" msgstr "el constructor no puede ser una función miembro de tipo static" -#: cp/decl.c:11252 +#: cp/decl.c:11276 #, gcc-internal-format msgid "destructors may not be cv-qualified" msgstr "los destructores no pueden ser cv-calificados" -#: cp/decl.c:11253 +#: cp/decl.c:11277 #, gcc-internal-format msgid "constructors may not be cv-qualified" msgstr "los constructores tal vez no sean cv-calificados" -#: cp/decl.c:11261 +#: cp/decl.c:11285 #, fuzzy, gcc-internal-format #| msgid "destructors may not be cv-qualified" msgid "destructors may not be ref-qualified" msgstr "los destructores no pueden ser cv-calificados" -#: cp/decl.c:11262 +#: cp/decl.c:11286 #, fuzzy, gcc-internal-format #| msgid "destructors may not be cv-qualified" msgid "constructors may not be ref-qualified" msgstr "los destructores no pueden ser cv-calificados" -#: cp/decl.c:11280 +#: cp/decl.c:11304 #, fuzzy, gcc-internal-format #| msgid "constructors cannot be declared virtual" msgid "constructors cannot be declared %" @@ -42197,257 +42246,257 @@ msgstr "los constructores no se pueden declarar virtual" #. Cannot be both friend and virtual. -#: cp/decl.c:11295 +#: cp/decl.c:11319 #, gcc-internal-format msgid "virtual functions cannot be friends" msgstr "las funciones virtual no pueden ser friend" -#: cp/decl.c:11299 +#: cp/decl.c:11323 #, gcc-internal-format msgid "friend declaration not in class definition" msgstr "la declaración friend no está en una definición de clase" -#: cp/decl.c:11301 +#: cp/decl.c:11325 #, gcc-internal-format msgid "can%'t define friend function %qs in a local class definition" msgstr "no se puede definir la función friend %qs en una definición de clase local" -#: cp/decl.c:11313 +#: cp/decl.c:11337 #, fuzzy, gcc-internal-format #| msgid "%qs function cannot have arguments" msgid "a conversion function cannot have a trailing return type" msgstr "la función %qs no puede tener argumentos" -#: cp/decl.c:11339 +#: cp/decl.c:11363 #, gcc-internal-format msgid "destructors may not have parameters" msgstr "los destructores no pueden tener parámetros" -#: cp/decl.c:11379 +#: cp/decl.c:11403 #, gcc-internal-format msgid "cannot declare pointer to %q#T" msgstr "no se puede declarar el puntero a %q#T" -#: cp/decl.c:11392 cp/decl.c:11399 +#: cp/decl.c:11416 cp/decl.c:11423 #, gcc-internal-format msgid "cannot declare reference to %q#T" msgstr "no se puede declarar la referencia a %q#T" -#: cp/decl.c:11401 +#: cp/decl.c:11425 #, gcc-internal-format msgid "cannot declare pointer to %q#T member" msgstr "no se puede declarar el puntero al miembro %q#T" -#: cp/decl.c:11430 +#: cp/decl.c:11454 #, gcc-internal-format msgid "cannot declare reference to qualified function type %qT" msgstr "no se puede declarar la referencia para el tipo de función calificado %qT" -#: cp/decl.c:11431 +#: cp/decl.c:11455 #, gcc-internal-format msgid "cannot declare pointer to qualified function type %qT" msgstr "no se puede declarar el puntero para el tipo de función calificado %qT" -#: cp/decl.c:11504 +#: cp/decl.c:11528 #, gcc-internal-format msgid "cannot declare reference to %q#T, which is not a typedef or a template type argument" msgstr "no se puede declarar la referencia a %q#T, el cual no es una definición de tipo o un argumento de tipo de plantilla" -#: cp/decl.c:11574 +#: cp/decl.c:11598 #, gcc-internal-format msgid "template-id %qD used as a declarator" msgstr "el id de plantilla %qD se usa como un declarador" -#: cp/decl.c:11599 +#: cp/decl.c:11623 #, gcc-internal-format msgid "member functions are implicitly friends of their class" msgstr "las funciones miembros son implícitamente friends de su clase" -#: cp/decl.c:11605 +#: cp/decl.c:11629 #, gcc-internal-format msgid "extra qualification %<%T::%> on member %qs" msgstr "calificación extra %<%T::%> en el miembro %qs" -#: cp/decl.c:11635 +#: cp/decl.c:11659 #, fuzzy, gcc-internal-format #| msgid "cannot define member function %<%T::%s%> within %<%T%>" msgid "cannot define member function %<%T::%s%> within %qT" msgstr "no se puede definir la función miembro %<%T::%s%> dentro de %<%T%>" -#: cp/decl.c:11637 +#: cp/decl.c:11661 #, fuzzy, gcc-internal-format #| msgid "cannot declare member function %<%T::%s%> within %<%T%>" msgid "cannot declare member function %<%T::%s%> within %qT" msgstr "no se puede declarar la función miembro %<%T::%s%> dentro de %<%T%>" -#: cp/decl.c:11645 +#: cp/decl.c:11669 #, gcc-internal-format msgid "cannot declare member %<%T::%s%> within %qT" msgstr "no se puede declarar el miembro %<%T::%s%> dentro de %qT" -#: cp/decl.c:11685 +#: cp/decl.c:11709 #, gcc-internal-format msgid "non-parameter %qs cannot be a parameter pack" msgstr "%qs que no es parámetro no puede ser un paquete de parámetro" -#: cp/decl.c:11693 +#: cp/decl.c:11717 #, gcc-internal-format msgid "data member may not have variably modified type %qT" msgstr "los datos miembro pueden no tener el tipo modificado variablemente %qT" -#: cp/decl.c:11695 +#: cp/decl.c:11719 #, gcc-internal-format msgid "parameter may not have variably modified type %qT" msgstr "el parámetro puede no tener el tipo modificado variablemente %qT" -#: cp/decl.c:11706 +#: cp/decl.c:11730 #, fuzzy, gcc-internal-format #| msgid "% outside class declaration" msgid "% outside class declaration" msgstr "declaración de clase fuera de %" -#: cp/decl.c:11709 +#: cp/decl.c:11733 #, fuzzy, gcc-internal-format #| msgid "% in empty declaration" msgid "% in friend declaration" msgstr "% en una declaración vacía" -#: cp/decl.c:11712 +#: cp/decl.c:11736 #, fuzzy, gcc-internal-format #| msgid "only declarations of constructors can be %" msgid "only declarations of constructors and conversion operators can be %" msgstr "solamente las declaraciones de constructores pueden ser %" -#: cp/decl.c:11721 +#: cp/decl.c:11745 #, gcc-internal-format msgid "non-member %qs cannot be declared %" msgstr "el no-miembro %qs no se puede declarar %" -#: cp/decl.c:11726 +#: cp/decl.c:11750 #, gcc-internal-format msgid "non-object member %qs cannot be declared %" msgstr "el miembro que no es objeto %qs no se puede declarar %" -#: cp/decl.c:11732 +#: cp/decl.c:11756 #, gcc-internal-format msgid "function %qs cannot be declared %" msgstr "la función %qs no se puede declarar %" -#: cp/decl.c:11737 +#: cp/decl.c:11761 #, gcc-internal-format msgid "static %qs cannot be declared %" msgstr "static %qs no se puede declarar %" -#: cp/decl.c:11742 +#: cp/decl.c:11766 #, gcc-internal-format msgid "const %qs cannot be declared %" msgstr "const %qs no se puede declarar %" -#: cp/decl.c:11747 +#: cp/decl.c:11771 #, gcc-internal-format msgid "reference %qs cannot be declared %" msgstr "la referencia %qs no se puede declarar %" -#: cp/decl.c:11778 +#: cp/decl.c:11802 #, gcc-internal-format msgid "typedef declared %" msgstr "la definición de tipo se declaró %" -#: cp/decl.c:11783 +#: cp/decl.c:11807 #, gcc-internal-format msgid "requires-clause on typedef" msgstr "" -#: cp/decl.c:11787 +#: cp/decl.c:11811 #, gcc-internal-format msgid "typedef name may not be a nested-name-specifier" msgstr "el nombre del typedef puede no ser un especificador-de-nombre-anidado" -#: cp/decl.c:11813 +#: cp/decl.c:11837 #, gcc-internal-format msgid "ISO C++ forbids nested type %qD with same name as enclosing class" msgstr "ISO C++ prohíbe el tipo anidado %qD con el mismo nombre que la clase que lo contiene" -#: cp/decl.c:11900 +#: cp/decl.c:11924 #, gcc-internal-format msgid "% specified for friend class declaration" msgstr "se especificó % para la declaración de clase friend" -#: cp/decl.c:11908 +#: cp/decl.c:11932 #, gcc-internal-format msgid "template parameters cannot be friends" msgstr "los parámetros de la plantilla no pueden ser friends" -#: cp/decl.c:11910 +#: cp/decl.c:11934 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "la declaración friend requere una llave de clase, p.e. %" -#: cp/decl.c:11914 +#: cp/decl.c:11938 #, gcc-internal-format msgid "friend declaration requires class-key, i.e. %" msgstr "la declaración friend requiere una llave de clase, p.e. %" -#: cp/decl.c:11927 +#: cp/decl.c:11951 #, gcc-internal-format msgid "trying to make class %qT a friend of global scope" msgstr "se intenta hacer que la clase %qT sea un friend de ámbito global" -#: cp/decl.c:11947 +#: cp/decl.c:11971 #, gcc-internal-format msgid "invalid qualifiers on non-member function type" msgstr "calificadores no válidos en el tipo de función que no es miembro" -#: cp/decl.c:11951 +#: cp/decl.c:11975 #, gcc-internal-format msgid "requires-clause on type-id" msgstr "" -#: cp/decl.c:11961 +#: cp/decl.c:11985 #, gcc-internal-format msgid "abstract declarator %qT used as declaration" msgstr "el declarador abstracto %qT se usó como declaración" -#: cp/decl.c:11976 +#: cp/decl.c:12000 #, fuzzy, gcc-internal-format #| msgid "value-initialization of function type %qT" msgid "requires-clause on declaration of non-function type %qT" msgstr "inicialización por valor del tipo de función %qT" -#: cp/decl.c:11995 +#: cp/decl.c:12019 #, gcc-internal-format msgid "cannot use %<::%> in parameter declaration" msgstr "no se puede usar %<::%> en la declaración de parámetros" -#: cp/decl.c:12001 +#: cp/decl.c:12025 #, fuzzy, gcc-internal-format #| msgid "% may not be used in this context" msgid "% parameter not permitted in this context" msgstr "no se puede usar % en este contexto" -#: cp/decl.c:12003 +#: cp/decl.c:12027 #, gcc-internal-format msgid "parameter declared %" msgstr "el parámetro se declaró %" -#: cp/decl.c:12052 cp/parser.c:3270 +#: cp/decl.c:12076 cp/parser.c:3270 #, gcc-internal-format msgid "invalid use of template-name %qE without an argument list" msgstr "uso no válido del nombre-de-plantilla %qE sin una lista de argumentos" -#: cp/decl.c:12056 +#: cp/decl.c:12080 #, fuzzy, gcc-internal-format #| msgid "non-static data member declared %" msgid "non-static data member declared with placeholder %qT" msgstr "se declaró el miembro dato que no es static como %" -#: cp/decl.c:12080 +#: cp/decl.c:12104 #, fuzzy, gcc-internal-format #| msgid "ISO C90 does not support flexible array members" msgid "ISO C++ forbids flexible array member %qs" msgstr "ISO C90 no admite miembros de matriz flexibles" -#: cp/decl.c:12083 +#: cp/decl.c:12107 #, fuzzy, gcc-internal-format #| msgid "ISO C90 does not support flexible array members" msgid "ISO C++ forbids flexible array members" @@ -42454,170 +42503,170 @@ msgstr "ISO C90 no admite miembros de matriz flexibles" #. Something like struct S { int N::j; }; -#: cp/decl.c:12099 +#: cp/decl.c:12123 #, gcc-internal-format msgid "invalid use of %<::%>" msgstr "uso no válido de %<::%>" -#: cp/decl.c:12121 +#: cp/decl.c:12145 #, gcc-internal-format msgid "declaration of function %qD in invalid context" msgstr "declaración de la función %qD en un contexto no válido" -#: cp/decl.c:12130 +#: cp/decl.c:12154 #, fuzzy, gcc-internal-format #| msgid "function %qD declared virtual inside a union" msgid "function %qD declared % inside a union" msgstr "la función %qD se declaró virtual dentro de un union" -#: cp/decl.c:12139 +#: cp/decl.c:12163 #, fuzzy, gcc-internal-format #| msgid "%qD cannot be declared virtual, since it is always static" msgid "%qD cannot be declared %, since it is always static" msgstr "%qD no se puede declarar virtual, ya que siempre es static" -#: cp/decl.c:12153 +#: cp/decl.c:12177 #, gcc-internal-format msgid "expected qualified name in friend declaration for destructor %qD" msgstr "se esperaba un nombre calificado en la declaración friend para el destructor %qD" -#: cp/decl.c:12160 +#: cp/decl.c:12184 #, gcc-internal-format msgid "declaration of %qD as member of %qT" msgstr "declaración de %qD como miembro de %qT" -#: cp/decl.c:12166 +#: cp/decl.c:12190 #, fuzzy, gcc-internal-format #| msgid "a destructor cannot be %" msgid "a destructor cannot be %" msgstr "un destructor no puede ser %" -#: cp/decl.c:12171 +#: cp/decl.c:12195 #, gcc-internal-format msgid "a destructor cannot be %" msgstr "un destructor no puede ser %" -#: cp/decl.c:12177 +#: cp/decl.c:12201 #, gcc-internal-format msgid "expected qualified name in friend declaration for constructor %qD" msgstr "se esperaba un nombre calificado en la declaración friend para el constructor %qD" -#: cp/decl.c:12185 +#: cp/decl.c:12209 #, fuzzy, gcc-internal-format #| msgid "a destructor cannot be %" msgid "a constructor cannot be %" msgstr "un destructor no puede ser %" -#: cp/decl.c:12190 +#: cp/decl.c:12214 #, fuzzy, gcc-internal-format #| msgid "constructor cannot be static member function" msgid "a concept cannot be a member function" msgstr "el constructor no puede ser una función miembro de tipo static" -#: cp/decl.c:12199 +#: cp/decl.c:12223 #, fuzzy, gcc-internal-format #| msgid "variable %qD redeclared as function" msgid "specialization of variable template %qD declared as function" msgstr "la variable %qD se redeclaró como función" -#: cp/decl.c:12202 +#: cp/decl.c:12226 #, fuzzy, gcc-internal-format #| msgid "original type declared here" msgid "variable template declared here" msgstr "el tipo original se definió aquí" -#: cp/decl.c:12257 +#: cp/decl.c:12281 #, fuzzy, gcc-internal-format #| msgid "field %qD has incomplete type" msgid "field %qD has incomplete type %qT" msgstr "el campo %qD tiene tipo de dato incompleto" -#: cp/decl.c:12262 +#: cp/decl.c:12286 #, gcc-internal-format msgid "name %qT has incomplete type" msgstr "el nombre %qT tiene tipo de dato incompleto" -#: cp/decl.c:12272 +#: cp/decl.c:12296 #, gcc-internal-format msgid "%qE is neither function nor member function; cannot be declared friend" msgstr "%qE no es ni función ni función miembro; no se puede declarar friend" -#: cp/decl.c:12318 +#: cp/decl.c:12342 #, fuzzy, gcc-internal-format #| msgid "non-static data member %qE declared %" msgid "static data member %qE declared %" msgstr "se declaró el miembro dato que no es static %qE como %" -#: cp/decl.c:12322 +#: cp/decl.c:12346 #, fuzzy, gcc-internal-format #| msgid "constexpr static data member %qD must have an initializer" msgid "% static data member %qD must have an initializer" msgstr "el miembro dato static constexpr %qD debe tener un inicializador" -#: cp/decl.c:12350 +#: cp/decl.c:12374 #, fuzzy, gcc-internal-format #| msgid "non-static data member %qE declared %" msgid "non-static data member %qE declared %" msgstr "se declaró el miembro dato que no es static %qE como %" -#: cp/decl.c:12354 +#: cp/decl.c:12378 #, gcc-internal-format msgid "non-static data member %qE declared %" msgstr "se declaró el miembro dato que no es static %qE como %" -#: cp/decl.c:12409 +#: cp/decl.c:12433 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "la clase de almacenamiento % es no válida para la función %qs" -#: cp/decl.c:12411 +#: cp/decl.c:12435 #, gcc-internal-format msgid "storage class % invalid for function %qs" msgstr "la clase de almacenamiento % es no válida para la función %qs" -#: cp/decl.c:12415 +#: cp/decl.c:12439 #, gcc-internal-format msgid "storage class %<__thread%> invalid for function %qs" msgstr "la clase de almacenamiento %<__thread%> es no válida para la función %qs" -#: cp/decl.c:12418 +#: cp/decl.c:12442 #, fuzzy, gcc-internal-format #| msgid "storage class %<__thread%> invalid for function %qs" msgid "storage class % invalid for function %qs" msgstr "la clase de almacenamiento %<__thread%> es no válida para la función %qs" -#: cp/decl.c:12423 +#: cp/decl.c:12447 #, gcc-internal-format msgid "virt-specifiers in %qs not allowed outside a class definition" msgstr "no se permiten los especificadores-virt en %qs fuera de una definición de clase" -#: cp/decl.c:12434 +#: cp/decl.c:12458 #, fuzzy, gcc-internal-format #| msgid "% specified invalid for function %qs declared out of global scope" msgid "% specifier invalid for function %qs declared out of global scope" msgstr "el especificador % es no válido para la función %qs declarada fuera del ámbito global" -#: cp/decl.c:12438 +#: cp/decl.c:12462 #, gcc-internal-format msgid "% specifier invalid for function %qs declared out of global scope" msgstr "el especificador % es no válido para la función %qs declarada fuera del ámbito global" -#: cp/decl.c:12446 +#: cp/decl.c:12470 #, gcc-internal-format msgid "virtual non-class function %qs" msgstr "función virtual %qs que no es clase" -#: cp/decl.c:12453 +#: cp/decl.c:12477 #, gcc-internal-format msgid "%qs defined in a non-class scope" msgstr "se definió %qs en un ámbito que no es una clase" -#: cp/decl.c:12454 +#: cp/decl.c:12478 #, gcc-internal-format msgid "%qs declared in a non-class scope" msgstr "se declaró %qs en un ámbito que no es una clase" -#: cp/decl.c:12489 +#: cp/decl.c:12513 #, gcc-internal-format msgid "cannot declare member function %qD to have static linkage" msgstr "no se puede declarar que la función miembro %qD tenga enlace estático" @@ -42624,80 +42673,80 @@ #. 7.1.1: There can be no static function declarations within a #. block. -#: cp/decl.c:12497 +#: cp/decl.c:12521 #, gcc-internal-format msgid "cannot declare static function inside another function" msgstr "no se puede declarar una función static dentro de otra función" -#: cp/decl.c:12533 +#: cp/decl.c:12557 #, gcc-internal-format msgid "% may not be used when defining (as opposed to declaring) a static data member" msgstr "% puede no ser utilizado cuando se define (opuesto a la declaración) un dato miembro static" -#: cp/decl.c:12540 +#: cp/decl.c:12564 #, gcc-internal-format msgid "static member %qD declared %" msgstr "se declaró el miembro static %qD como %" -#: cp/decl.c:12546 +#: cp/decl.c:12570 #, gcc-internal-format msgid "cannot explicitly declare member %q#D to have extern linkage" msgstr "no se puede declarar explícitamente que el miembro %q#D tenga un enlace externo" -#: cp/decl.c:12553 +#: cp/decl.c:12577 #, fuzzy, gcc-internal-format #| msgid "declaration of constexpr variable %qD is not a definition" msgid "declaration of % variable %qD is not a definition" msgstr "la declaración de la variable constexpr %qD no es una definición" -#: cp/decl.c:12574 +#: cp/decl.c:12598 #, gcc-internal-format msgid "declaration of %q#D has no initializer" msgstr "la declaración de %q#D no tiene inicializadores" -#: cp/decl.c:12585 +#: cp/decl.c:12609 #, gcc-internal-format msgid "%qs initialized and declared %" msgstr "%qs inicializado y declarado como %" -#: cp/decl.c:12589 +#: cp/decl.c:12613 #, gcc-internal-format msgid "%qs has both % and initializer" msgstr "%qs tiene % e inicializador al mismo tiempo" -#: cp/decl.c:12754 +#: cp/decl.c:12778 #, gcc-internal-format msgid "default argument %qE uses %qD" msgstr "el argumento por defecto %qE usa %qD" -#: cp/decl.c:12757 +#: cp/decl.c:12781 #, gcc-internal-format msgid "default argument %qE uses local variable %qD" msgstr "el argumento por defecto %qE usa la variable local %qD" -#: cp/decl.c:12841 +#: cp/decl.c:12865 #, fuzzy, gcc-internal-format #| msgid "invalid use of % in template declaration of %q#D" msgid "invalid use of cv-qualified type %qT in parameter declaration" msgstr "uso no válido de % en la declaración de plantilla de %q#D" -#: cp/decl.c:12845 +#: cp/decl.c:12869 #, fuzzy, gcc-internal-format #| msgid "invalid use of % in template declaration of %q#D" msgid "invalid use of type % in parameter declaration" msgstr "uso no válido de % en la declaración de plantilla de %q#D" -#: cp/decl.c:12868 +#: cp/decl.c:12892 #, gcc-internal-format msgid "parameter %qD invalidly declared method type" msgstr "el parámetro %qD se declaró no válidamente como tipo de método" -#: cp/decl.c:12895 +#: cp/decl.c:12919 #, gcc-internal-format msgid "parameter %qD includes pointer to array of unknown bound %qT" msgstr "el parámetro %qD incluye un puntero a matriz %qT de límite desconocido" -#: cp/decl.c:12897 +#: cp/decl.c:12921 #, gcc-internal-format msgid "parameter %qD includes reference to array of unknown bound %qT" msgstr "el parámetro %qD incluye una referencia a matriz %qT de límite desconocido" @@ -42717,126 +42766,126 @@ #. or implicitly defined), there's no need to worry about their #. existence. Theoretically, they should never even be #. instantiated, but that's hard to forestall. -#: cp/decl.c:13150 +#: cp/decl.c:13174 #, gcc-internal-format msgid "invalid constructor; you probably meant %<%T (const %T&)%>" msgstr "constructor no válido; tal vez quiso decir %<%T (const %T&)%>" -#: cp/decl.c:13228 +#: cp/decl.c:13252 #, gcc-internal-format msgid "%qD may not be declared within a namespace" msgstr "%qD no se puede declarar dentro de un espacio de nombres" -#: cp/decl.c:13234 +#: cp/decl.c:13258 #, gcc-internal-format msgid "%qD may not be declared as static" msgstr "%qD no se puede declarar como static" -#: cp/decl.c:13261 +#: cp/decl.c:13285 #, gcc-internal-format msgid "%qD must be a nonstatic member function" msgstr "%qD debe ser una función miembro que no sea static" -#: cp/decl.c:13267 +#: cp/decl.c:13291 #, gcc-internal-format msgid "%qD must be either a non-static member function or a non-member function" msgstr "%qD debe ser una función miembro que no sea static o una función que no sea miembro" -#: cp/decl.c:13277 +#: cp/decl.c:13301 #, gcc-internal-format msgid "%qD must have an argument of class or enumerated type" msgstr "%qD debe tener un argumento de tipo clase o enumerado" #. 13.4.0.3 -#: cp/decl.c:13303 +#: cp/decl.c:13327 #, gcc-internal-format msgid "ISO C++ prohibits overloading operator ?:" msgstr "ISO C++ prohíbe la sobrecarga del operador ?:" #. Variadic. -#: cp/decl.c:13314 +#: cp/decl.c:13338 #, gcc-internal-format msgid "%qD must not have variable number of arguments" msgstr "%qD no debe tener un número variable de argumentos" -#: cp/decl.c:13338 +#: cp/decl.c:13362 #, fuzzy, gcc-internal-format #| msgid "%qD must take either zero or one argument" msgid "%qD must have either zero or one argument" msgstr "%qD debe tomar cero o un argumentos" -#: cp/decl.c:13339 +#: cp/decl.c:13363 #, fuzzy, gcc-internal-format #| msgid "%qD must take either one or two arguments" msgid "%qD must have either one or two arguments" msgstr "%qD debe tomar uno o dos argumentos" -#: cp/decl.c:13350 +#: cp/decl.c:13374 #, fuzzy, gcc-internal-format #| msgid "postfix %qD must take % as its argument" msgid "postfix %qD must have % as its argument" msgstr "el postfijo %qD debe tomar % como su argumento" -#: cp/decl.c:13351 +#: cp/decl.c:13375 #, fuzzy, gcc-internal-format #| msgid "postfix %qD must take % as its second argument" msgid "postfix %qD must have % as its second argument" msgstr "el postfijo %qD debe tomar % como su segundo argumento" -#: cp/decl.c:13361 +#: cp/decl.c:13385 #, fuzzy, gcc-internal-format #| msgid "%qD must take exactly two arguments" msgid "%qD must have no arguments" msgstr "%qD debe tomar dos argumentos exactamente" -#: cp/decl.c:13362 cp/decl.c:13371 +#: cp/decl.c:13386 cp/decl.c:13395 #, fuzzy, gcc-internal-format #| msgid "%qD must take exactly one argument" msgid "%qD must have exactly one argument" msgstr "%qD debe tomar un argumento exactamente" -#: cp/decl.c:13372 +#: cp/decl.c:13396 #, fuzzy, gcc-internal-format #| msgid "%qD must take exactly two arguments" msgid "%qD must have exactly two arguments" msgstr "%qD debe tomar dos argumentos exactamente" -#: cp/decl.c:13389 cp/decl.c:13392 +#: cp/decl.c:13413 cp/decl.c:13416 #, gcc-internal-format msgid "%qD cannot have default arguments" msgstr "%qD no puede tener argumentos por defecto" -#: cp/decl.c:13419 +#: cp/decl.c:13443 #, gcc-internal-format msgid "conversion to a reference to void will never use a type conversion operator" msgstr "la conversión a una referencia a void nunca usará un operador de conversión de tipo" -#: cp/decl.c:13421 +#: cp/decl.c:13445 #, gcc-internal-format msgid "conversion to void will never use a type conversion operator" msgstr "la conversión a void nunca usará un operador de conversión de tipo" -#: cp/decl.c:13428 +#: cp/decl.c:13452 #, gcc-internal-format msgid "conversion to a reference to the same type will never use a type conversion operator" msgstr "la conversión a una referencia al mismo tipo nunca usará un operador de conversión de tipo" -#: cp/decl.c:13430 +#: cp/decl.c:13454 #, gcc-internal-format msgid "conversion to the same type will never use a type conversion operator" msgstr "la conversión al mismo tipo nunca usará un operador de conversión de tipo" -#: cp/decl.c:13438 +#: cp/decl.c:13462 #, gcc-internal-format msgid "conversion to a reference to a base class will never use a type conversion operator" msgstr "la conversión a una referencia a una clase base nunca usará un operador de conversión de tipo" -#: cp/decl.c:13440 +#: cp/decl.c:13464 #, gcc-internal-format msgid "conversion to a base class will never use a type conversion operator" msgstr "la conversión a una clase base nunca usará un operador de conversión de tipo" -#: cp/decl.c:13455 +#: cp/decl.c:13479 #, gcc-internal-format msgid "user-defined %qD always evaluates both arguments" msgstr "el %qD definido por el usuario siempre evalúa ambos argumentos" @@ -42843,53 +42892,53 @@ # En esta traducción se emplea 'devolver' por 'return'. Si embargo, aquí # se cambió por cacofonía: no es agradable escuchar 'debe devolver'. cfuga -#: cp/decl.c:13474 +#: cp/decl.c:13498 #, gcc-internal-format msgid "prefix %qD should return %qT" msgstr "el prefijo %qD debe regresar %qT" -#: cp/decl.c:13480 +#: cp/decl.c:13504 #, gcc-internal-format msgid "postfix %qD should return %qT" msgstr "el postfijo %qD debe regresar %qT" -#: cp/decl.c:13492 +#: cp/decl.c:13516 #, gcc-internal-format msgid "%qD should return by value" msgstr "%qD debe devolver por valor" -#: cp/decl.c:13547 +#: cp/decl.c:13571 #, gcc-internal-format msgid "using template type parameter %qT after %qs" msgstr "usando el parámetro de tipo plantilla %qT después de %qs" -#: cp/decl.c:13570 +#: cp/decl.c:13594 #, gcc-internal-format msgid "using alias template specialization %qT after %qs" msgstr "se usa especialización de plantilla %qT alias después de %qs" -#: cp/decl.c:13573 +#: cp/decl.c:13597 #, gcc-internal-format msgid "using typedef-name %qD after %qs" msgstr "se usó el nombre de definición de tipo %qD después de %qs" -#: cp/decl.c:13575 +#: cp/decl.c:13599 #, gcc-internal-format msgid "%qD has a previous declaration here" msgstr "%qD tiene una declaración previa aquí" -#: cp/decl.c:13583 +#: cp/decl.c:13607 #, gcc-internal-format msgid "%qT referred to as %qs" msgstr "se refirió a %qT como %qs" -#: cp/decl.c:13584 cp/decl.c:13591 +#: cp/decl.c:13608 cp/decl.c:13615 #, fuzzy, gcc-internal-format #| msgid "%q+T has a previous declaration here" msgid "%qT has a previous declaration here" msgstr "%q+T tiene una declaración previa aquí" -#: cp/decl.c:13590 +#: cp/decl.c:13614 #, gcc-internal-format msgid "%qT referred to as enum" msgstr "se refirió a %qT como un enum" @@ -42901,54 +42950,54 @@ #. void f(class C); // No template header here #. #. then the required template argument is missing. -#: cp/decl.c:13605 +#: cp/decl.c:13629 #, gcc-internal-format msgid "template argument required for %<%s %T%>" msgstr "se requiere un argumento de plantilla para %<%s %T%>" -#: cp/decl.c:13659 cp/name-lookup.c:4652 +#: cp/decl.c:13683 cp/name-lookup.c:4652 #, gcc-internal-format msgid "%qD has the same name as the class in which it is declared" msgstr "%qD tiene el mismo nombre que la clase en la cual se declaró" -#: cp/decl.c:13689 cp/friend.c:301 cp/parser.c:3096 cp/parser.c:6425 -#: cp/pt.c:9209 +#: cp/decl.c:13713 cp/friend.c:301 cp/parser.c:3096 cp/parser.c:6428 +#: cp/pt.c:9223 #, gcc-internal-format msgid "%qT is not a template" msgstr "%qT no es una plantilla" -#: cp/decl.c:13694 +#: cp/decl.c:13718 #, gcc-internal-format msgid "perhaps you want to explicitly add %<%T::%>" msgstr "" -#: cp/decl.c:13703 cp/name-lookup.c:4079 cp/name-lookup.c:4086 -#: cp/name-lookup.c:4939 cp/parser.c:6376 cp/parser.c:26300 +#: cp/decl.c:13727 cp/name-lookup.c:4079 cp/name-lookup.c:4086 +#: cp/name-lookup.c:4939 cp/parser.c:6379 cp/parser.c:26297 #, gcc-internal-format msgid "reference to %qD is ambiguous" msgstr "la referencia a %qD es ambigua" -#: cp/decl.c:13806 +#: cp/decl.c:13830 #, gcc-internal-format msgid "use of enum %q#D without previous declaration" msgstr "uso del enum %q#D sin declaración previa" -#: cp/decl.c:13842 +#: cp/decl.c:13866 #, gcc-internal-format msgid "redeclaration of %qT as a non-template" msgstr "redeclaración de %qT como algo que no es plantilla" -#: cp/decl.c:13982 +#: cp/decl.c:14006 #, gcc-internal-format msgid "derived union %qT invalid" msgstr "union derivada %qT no válida" -#: cp/decl.c:13989 +#: cp/decl.c:14013 #, gcc-internal-format msgid "%qT defined with multiple direct bases" msgstr "" -#: cp/decl.c:14000 +#: cp/decl.c:14024 #, fuzzy, gcc-internal-format #| msgid "type %qT is not a direct or virtual base of %qT" msgid "%qT defined with direct virtual base" @@ -42956,42 +43005,42 @@ # No me gusta mucho esta traducción. Creo que es mejor # "el tipo base %qT no es de tipo struct o clase". cfuga -#: cp/decl.c:14025 +#: cp/decl.c:14049 #, gcc-internal-format msgid "base type %qT fails to be a struct or class type" msgstr "el tipo base %qT falla en ser un tipo struct o clase" -#: cp/decl.c:14055 +#: cp/decl.c:14079 #, gcc-internal-format msgid "recursive type %qT undefined" msgstr "tipo recursivo %qT sin definir" -#: cp/decl.c:14057 +#: cp/decl.c:14081 #, gcc-internal-format msgid "duplicate base type %qT invalid" msgstr "tipo base duplicado %qT no válido" -#: cp/decl.c:14202 +#: cp/decl.c:14226 #, gcc-internal-format msgid "scoped/unscoped mismatch in enum %q#T" msgstr "no coinciden scoped/unscoped en el enum %q#T" -#: cp/decl.c:14205 cp/decl.c:14213 cp/decl.c:14225 cp/parser.c:18284 +#: cp/decl.c:14229 cp/decl.c:14237 cp/decl.c:14249 cp/parser.c:18281 #, gcc-internal-format msgid "previous definition here" msgstr "la definición previa está aquí" -#: cp/decl.c:14210 +#: cp/decl.c:14234 #, gcc-internal-format msgid "underlying type mismatch in enum %q#T" msgstr "no coincide el tipo subyacente en el enum %q#T" -#: cp/decl.c:14222 +#: cp/decl.c:14246 #, gcc-internal-format msgid "different underlying type in enum %q#T" msgstr "tipos subyacentes diferentes en el enum %q#T" -#: cp/decl.c:14300 +#: cp/decl.c:14324 #, fuzzy, gcc-internal-format #| msgid "underlying type %<%T%> of %<%T%> must be an integral type" msgid "underlying type %qT of %qT must be an integral type" @@ -43001,82 +43050,82 @@ #. #. IF no integral type can represent all the enumerator values, the #. enumeration is ill-formed. -#: cp/decl.c:14447 +#: cp/decl.c:14471 #, gcc-internal-format msgid "no integral type can represent all of the enumerator values for %qT" msgstr "ningún tipo integral puede representar todos los valores de enumerador de %qT" -#: cp/decl.c:14619 +#: cp/decl.c:14643 #, fuzzy, gcc-internal-format #| msgid "enumerator value for %qD is not an integer constant" msgid "enumerator value for %qD must have integral or unscoped enumeration type" msgstr "el valor de enumerador para %qD no es una constante entera" -#: cp/decl.c:14629 +#: cp/decl.c:14653 #, gcc-internal-format msgid "enumerator value for %qD is not an integer constant" msgstr "el valor de enumerador para %qD no es una constante entera" -#: cp/decl.c:14678 +#: cp/decl.c:14702 #, gcc-internal-format msgid "incremented enumerator value is too large for %" msgstr "el valor del enumerador incrementado es demasiado grande para %" -#: cp/decl.c:14679 +#: cp/decl.c:14703 #, fuzzy, gcc-internal-format #| msgid "incremented enumerator value is too large for %" msgid "incremented enumerator value is too large for %" msgstr "el valor del enumerador incrementado es demasiado grande para %" -#: cp/decl.c:14690 +#: cp/decl.c:14714 #, gcc-internal-format msgid "overflow in enumeration values at %qD" msgstr "desbordamiento en valores de enumeración en %qD" -#: cp/decl.c:14710 +#: cp/decl.c:14734 #, fuzzy, gcc-internal-format #| msgid "enumerator value %E is too large for underlying type %<%T%>" msgid "enumerator value %qE is outside the range of underlying type %qT" msgstr "el valor de enumerador %E es demasiado grande para el tipo subyacente %<%T%>" -#: cp/decl.c:14821 +#: cp/decl.c:14845 #, gcc-internal-format msgid "return type %q#T is incomplete" msgstr "el tipo de devolución %q#T es un tipo de dato incompleto" -#: cp/decl.c:14999 cp/typeck.c:9286 +#: cp/decl.c:15023 cp/typeck.c:9286 #, gcc-internal-format msgid "% should return a reference to %<*this%>" msgstr "% debe devolver una referencia a %<*this%>" -#: cp/decl.c:15344 +#: cp/decl.c:15368 #, gcc-internal-format msgid "invalid function declaration" msgstr "declaración de función no válida" -#: cp/decl.c:15786 +#: cp/decl.c:15810 #, fuzzy, gcc-internal-format #| msgid "no return statement in function returning non-void" msgid "no return statements in function returning %qT" msgstr "no hay una declaración de devolución en la función que no devuelve void" -#: cp/decl.c:15788 cp/typeck.c:9166 +#: cp/decl.c:15812 cp/typeck.c:9166 #, fuzzy, gcc-internal-format #| msgid "function return types not compatible due to %" msgid "only plain % return type can be deduced to %" msgstr "los tipos de devolución de función no son compatibles debido a %" -#: cp/decl.c:15996 +#: cp/decl.c:16020 #, gcc-internal-format msgid "invalid member function declaration" msgstr "declaración de la función miembro no válida" -#: cp/decl.c:16010 +#: cp/decl.c:16034 #, gcc-internal-format msgid "%qD is already defined in class %qT" msgstr "%qD ya se definió en la clase %qT" -#: cp/decl.c:16386 +#: cp/decl.c:16410 #, fuzzy, gcc-internal-format #| msgid "type of %qD defaults to %" msgid "use of %qD before deduction of %" @@ -43118,7 +43167,7 @@ msgid "deleting %qT is undefined" msgstr "el borrado de %qT está indefinido" -#: cp/decl2.c:585 cp/pt.c:5552 +#: cp/decl2.c:585 cp/pt.c:5566 #, gcc-internal-format msgid "template declaration of %q#D" msgstr "declaración plantilla de %q#D" @@ -43131,7 +43180,7 @@ #. [temp.mem] #. #. A destructor shall not be a member template. -#: cp/decl2.c:640 cp/pt.c:5511 +#: cp/decl2.c:640 cp/pt.c:5525 #, gcc-internal-format msgid "destructor %qD declared as member template" msgstr "se declaró el destructor %qD como una plantilla miembro" @@ -43316,51 +43365,51 @@ msgid "% takes type %qT as first parameter" msgstr "% toma el tipo %qT como primer argumento" -#: cp/decl2.c:2660 +#: cp/decl2.c:2650 #, fuzzy, gcc-internal-format #| msgid "%qT has a field %qD whose type uses the anonymous namespace" msgid "%qT has a field %qD whose type has no linkage" msgstr "%qT tiene un campo %qD cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2664 +#: cp/decl2.c:2654 #, fuzzy, gcc-internal-format #| msgid "%qT has a field %qD whose type uses the anonymous namespace" msgid "%qT has a field %qD whose type depends on the type %qT which has no linkage" msgstr "%qT tiene un campo %qD cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2669 +#: cp/decl2.c:2659 #, gcc-internal-format msgid "%qT has a field %qD whose type uses the anonymous namespace" msgstr "%qT tiene un campo %qD cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2677 +#: cp/decl2.c:2667 #, gcc-internal-format msgid "%qT declared with greater visibility than the type of its field %qD" msgstr "%qT se declaró con mayor visibilidad que el tipo de su campo %qD" -#: cp/decl2.c:2695 +#: cp/decl2.c:2685 #, fuzzy, gcc-internal-format #| msgid "%qT has a base %qT whose type uses the anonymous namespace" msgid "%qT has a base %qT whose type has no linkage" msgstr "%qT tiene una base %qT cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2699 +#: cp/decl2.c:2689 #, fuzzy, gcc-internal-format #| msgid "%qT has a base %qT whose type uses the anonymous namespace" msgid "%qT has a base %qT whose type depends on the type %qT which has no linkage" msgstr "%qT tiene una base %qT cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2704 +#: cp/decl2.c:2694 #, gcc-internal-format msgid "%qT has a base %qT whose type uses the anonymous namespace" msgstr "%qT tiene una base %qT cuyo tipo usa el espacio de nombres anónimo" -#: cp/decl2.c:2711 +#: cp/decl2.c:2701 #, gcc-internal-format msgid "%qT declared with greater visibility than its base %qT" msgstr "%qT se declaró con mayor visibilidad que su base %qT" -#: cp/decl2.c:4309 +#: cp/decl2.c:4299 #, fuzzy, gcc-internal-format #| msgid "%q+#D, declared using anonymous type, is used but never defined" msgid "%q#D, declared using unnamed type, is used but never defined" @@ -43370,70 +43419,70 @@ #. no linkage can only be used to declare extern "C" #. entities. Since it's not always an error in the #. ISO C++ 90 Standard, we only issue a warning. -#: cp/decl2.c:4318 +#: cp/decl2.c:4308 #, fuzzy, gcc-internal-format #| msgid "anonymous type with no linkage used to declare variable %q#D with linkage" msgid "unnamed type with no linkage used to declare variable %q#D with linkage" msgstr "se usó un tipo anónimo sin enlace para declarar la variable %q#D sin enlace" -#: cp/decl2.c:4322 +#: cp/decl2.c:4312 #, fuzzy, gcc-internal-format #| msgid "anonymous type with no linkage used to declare function %q#D with linkage" msgid "unnamed type with no linkage used to declare function %q#D with linkage" msgstr "se usó un tipo anónimo sin enlace para declarar la función %q#D con enlace" -#: cp/decl2.c:4326 +#: cp/decl2.c:4316 #, fuzzy, gcc-internal-format #| msgid "%q+#D does not refer to the unqualified type, so it is not used for linkage" msgid "%q#D does not refer to the unqualified type, so it is not used for linkage" msgstr "%q+#D no se refiere al tipo sin calificar, así que no se usa para el enlace" -#: cp/decl2.c:4334 +#: cp/decl2.c:4324 #, fuzzy, gcc-internal-format #| msgid "%q+#D, declared using local type %qT, is used but never defined" msgid "%q#D, declared using local type %qT, is used but never defined" msgstr "%q+#D, declarada usando el tipo local %qT, se usa pero nunca se define" -#: cp/decl2.c:4338 +#: cp/decl2.c:4328 #, gcc-internal-format msgid "type %qT with no linkage used to declare variable %q#D with linkage" msgstr "se usó el tipo %qT sin enlace para declarar la variable %q#D con enlace" -#: cp/decl2.c:4341 +#: cp/decl2.c:4331 #, gcc-internal-format msgid "type %qT with no linkage used to declare function %q#D with linkage" msgstr "se usó el tipo %qT sin enlace para declarar la función %q#D con enlace" -#: cp/decl2.c:4529 +#: cp/decl2.c:4519 #, fuzzy, gcc-internal-format #| msgid "%q#D conflicts with a previous declaration" msgid "mangling of %q#D as %qE conflicts with a previous mangle" msgstr "%q#D genera un conflicto con una declaración previa" -#: cp/decl2.c:4532 +#: cp/decl2.c:4522 #, fuzzy, gcc-internal-format #| msgid "previous declaration %q+#D" msgid "previous mangling %q#D" msgstr "declaración previa de %q+#D" -#: cp/decl2.c:4534 +#: cp/decl2.c:4524 #, fuzzy, gcc-internal-format #| msgid "-fabi-version=6 (or =0) avoids this error with a change in mangling" msgid "a later -fabi-version= (or =0) avoids this error with a change in mangling" msgstr "-fabi-version=6 (o =0) evita este error con un cambio en la decodificación" -#: cp/decl2.c:4606 cp/decl2.c:4609 +#: cp/decl2.c:4596 cp/decl2.c:4599 #, gcc-internal-format msgid "the program should also define %qD" msgstr "" -#: cp/decl2.c:4956 +#: cp/decl2.c:4946 #, fuzzy, gcc-internal-format #| msgid "inline function %q+D used but never defined" msgid "inline function %qD used but never defined" msgstr "se usa la función inline %q+D pero nunca se define" -#: cp/decl2.c:5143 +#: cp/decl2.c:5133 #, gcc-internal-format msgid "default argument missing for parameter %P of %q+#D" msgstr "falta el argumento por defecto para el parámetro %P de %q+#D" @@ -43440,18 +43489,18 @@ #. We mark a lambda conversion op as deleted if we can't #. generate it properly; see maybe_add_lambda_conv_op. -#: cp/decl2.c:5251 +#: cp/decl2.c:5241 #, fuzzy, gcc-internal-format #| msgid "converting lambda which uses %<...%> to function pointer" msgid "converting lambda that uses %<...%> to function pointer" msgstr "se convierte lambda la cual usa %<...%> a un puntero de función" -#: cp/decl2.c:5254 +#: cp/decl2.c:5244 #, gcc-internal-format msgid "use of deleted function %qD" msgstr "se usó la función borrada %q+D" -#: cp/decl2.c:5307 +#: cp/decl2.c:5297 #, fuzzy, gcc-internal-format #| msgid "using % outside of template" msgid "use of built-in parameter pack %qD outside of a template" @@ -43749,44 +43798,44 @@ msgid "recursive instantiation of default member initializer for %qD" msgstr "los inicializadores de los datos miembro no son estáticos" -#: cp/init.c:613 +#: cp/init.c:629 #, gcc-internal-format msgid "default member initializer for %qD required before the end of its enclosing class" msgstr "" -#: cp/init.c:615 +#: cp/init.c:631 #, fuzzy, gcc-internal-format #| msgid "union defined here" msgid "defined here" msgstr "se definió union aquí" -#: cp/init.c:673 +#: cp/init.c:689 #, fuzzy, gcc-internal-format #| msgid "initialization of a flexible array member" msgid "initializer for flexible array member %q#D" msgstr "inicialización de un miembro de matriz flexible" -#: cp/init.c:699 +#: cp/init.c:715 #, gcc-internal-format msgid "%qD should be initialized in the member initialization list" msgstr "%qD se debe inicializar en la lista de inicialización de miembros" -#: cp/init.c:720 +#: cp/init.c:736 #, gcc-internal-format msgid "%qD is initialized with itself" msgstr "%qD se inicializa con sí mismo" -#: cp/init.c:831 +#: cp/init.c:847 #, gcc-internal-format msgid "invalid initializer for array member %q#D" msgstr "inicializador no válido para la matriz miembro %q#D" -#: cp/init.c:845 cp/init.c:869 cp/init.c:2410 cp/method.c:1368 +#: cp/init.c:861 cp/init.c:885 cp/init.c:2427 cp/method.c:1368 #, gcc-internal-format msgid "uninitialized const member in %q#T" msgstr "miembro const sin inicializar en %q#T" -#: cp/init.c:847 cp/init.c:864 cp/init.c:871 cp/init.c:2395 cp/init.c:2423 +#: cp/init.c:863 cp/init.c:880 cp/init.c:887 cp/init.c:2412 cp/init.c:2440 #: cp/method.c:1371 cp/method.c:1382 #, fuzzy, gcc-internal-format #| msgid "%qD should be initialized" @@ -43793,307 +43842,307 @@ msgid "%q#D should be initialized" msgstr "%qD se debe inicializar" -#: cp/init.c:862 cp/init.c:2382 cp/method.c:1379 +#: cp/init.c:878 cp/init.c:2399 cp/method.c:1379 #, gcc-internal-format msgid "uninitialized reference member in %q#T" msgstr "miembro referencia sin inicializar en %q#T" -#: cp/init.c:1041 +#: cp/init.c:1057 #, fuzzy, gcc-internal-format #| msgid "%q+D will be initialized after" msgid "%qD will be initialized after" msgstr "%q+D se inicializará después de" -#: cp/init.c:1044 +#: cp/init.c:1060 #, gcc-internal-format msgid "base %qT will be initialized after" msgstr "la base %qT se inicializará después de" -#: cp/init.c:1048 +#: cp/init.c:1064 #, fuzzy, gcc-internal-format #| msgid " %q+#D" msgid " %q#D" msgstr " %q+#D" -#: cp/init.c:1050 +#: cp/init.c:1066 #, gcc-internal-format msgid " base %qT" msgstr " base %qT" -#: cp/init.c:1052 +#: cp/init.c:1068 #, gcc-internal-format msgid " when initialized here" msgstr " cuando se inicializó aquí" -#: cp/init.c:1069 +#: cp/init.c:1085 #, gcc-internal-format msgid "multiple initializations given for %qD" msgstr "se dieron inicializaciones múltiples para %qD" -#: cp/init.c:1073 +#: cp/init.c:1089 #, gcc-internal-format msgid "multiple initializations given for base %qT" msgstr "se dieron inicializaciones múltiples para la base %qT" -#: cp/init.c:1158 +#: cp/init.c:1174 #, gcc-internal-format msgid "initializations for multiple members of %qT" msgstr "inicializaciones para múltiples miembros de %qT" -#: cp/init.c:1255 +#: cp/init.c:1271 #, gcc-internal-format msgid "base class %q#T should be explicitly initialized in the copy constructor" msgstr "la clase base %q#T debe ser inicializada explícitamente en la copia del constructor" -#: cp/init.c:1482 cp/init.c:1501 +#: cp/init.c:1498 cp/init.c:1517 #, gcc-internal-format msgid "class %qT does not have any field named %qD" msgstr "la clase %qT no tiene ningún campo llamado %qD" -#: cp/init.c:1488 +#: cp/init.c:1504 #, gcc-internal-format msgid "%q#D is a static data member; it can only be initialized at its definition" msgstr "%q#D es un dato miembro static; sólo se puede inicializar en su definición" -#: cp/init.c:1495 +#: cp/init.c:1511 #, gcc-internal-format msgid "%q#D is not a non-static data member of %qT" msgstr "%q#D no es un dato miembro no static de %qT" -#: cp/init.c:1534 +#: cp/init.c:1550 #, gcc-internal-format msgid "unnamed initializer for %qT, which has no base classes" msgstr "inicializador sin nombre para %qT, el cual no tiene clases base" -#: cp/init.c:1542 +#: cp/init.c:1558 #, gcc-internal-format msgid "unnamed initializer for %qT, which uses multiple inheritance" msgstr "inicializador sin nombre para %qT, el cual usa herencia múltiple" -#: cp/init.c:1589 +#: cp/init.c:1605 #, gcc-internal-format msgid "%qD is both a direct base and an indirect virtual base" msgstr "%qD es tanto una base directa como una base virtual indirecta" -#: cp/init.c:1597 +#: cp/init.c:1613 #, gcc-internal-format msgid "type %qT is not a direct or virtual base of %qT" msgstr "el tipo %qT no es una base directa o virtual de %qT" -#: cp/init.c:1600 +#: cp/init.c:1616 #, gcc-internal-format msgid "type %qT is not a direct base of %qT" msgstr "el tipo %qT no es una base directa de %qT" -#: cp/init.c:1710 cp/init.c:4386 cp/typeck2.c:1175 +#: cp/init.c:1727 cp/init.c:4402 cp/typeck2.c:1175 #, gcc-internal-format msgid "array must be initialized with a brace-enclosed initializer" msgstr "la matriz se debe inicializar con un inicializador dentro de llaves" -#: cp/init.c:2019 cp/semantics.c:3268 +#: cp/init.c:2036 cp/semantics.c:3271 #, gcc-internal-format msgid "%qT is not a class type" msgstr "%qT no es un tipo de clase" -#: cp/init.c:2075 +#: cp/init.c:2092 #, gcc-internal-format msgid "incomplete type %qT does not have member %qD" msgstr "el tipo incompleto %qT no tiene al miembro %qD" -#: cp/init.c:2089 +#: cp/init.c:2106 #, gcc-internal-format msgid "invalid pointer to bit-field %qD" msgstr "puntero no válido al campo de bits %qD" -#: cp/init.c:2175 cp/typeck.c:1893 +#: cp/init.c:2192 cp/typeck.c:1893 #, gcc-internal-format msgid "invalid use of non-static member function %qD" msgstr "uso no válido de la función miembro no static %qD" -#: cp/init.c:2182 cp/semantics.c:1835 +#: cp/init.c:2199 cp/semantics.c:1835 #, gcc-internal-format msgid "invalid use of non-static data member %qD" msgstr "uso no válido del dato miembro no static %qD" -#: cp/init.c:2379 +#: cp/init.c:2396 #, gcc-internal-format msgid "uninitialized reference member in %q#T using % without new-initializer" msgstr "un miembro referencia sin inicializar en %q#T usa % sin un inicializador new" -#: cp/init.c:2387 +#: cp/init.c:2404 #, fuzzy, gcc-internal-format #| msgid "uninitialized reference member in %q#T using % without new-initializer" msgid "uninitialized reference member in base %q#T of %q#T using % without new-initializer" msgstr "un miembro referencia sin inicializar en %q#T usa % sin un inicializador new" -#: cp/init.c:2391 +#: cp/init.c:2408 #, fuzzy, gcc-internal-format #| msgid "uninitialized reference member in %q#T" msgid "uninitialized reference member in base %q#T of %q#T" msgstr "miembro referencia sin inicializar en %q#T" -#: cp/init.c:2407 +#: cp/init.c:2424 #, gcc-internal-format msgid "uninitialized const member in %q#T using % without new-initializer" msgstr "un miembro const sin inicializar en %q#T usa % sin un inicializador new" -#: cp/init.c:2415 +#: cp/init.c:2432 #, fuzzy, gcc-internal-format #| msgid "uninitialized const member in %q#T using % without new-initializer" msgid "uninitialized const member in base %q#T of %q#T using % without new-initializer" msgstr "un miembro const sin inicializar en %q#T usa % sin un inicializador new" -#: cp/init.c:2419 +#: cp/init.c:2436 #, fuzzy, gcc-internal-format #| msgid "uninitialized const member in %q#T" msgid "uninitialized const member in base %q#T of %q#T" msgstr "miembro const sin inicializar en %q#T" -#: cp/init.c:2710 +#: cp/init.c:2727 #, gcc-internal-format msgid "placement new constructing an object of type %<%T [%wu]%> and size %qwu in a region of type %qT and size %qwi" msgstr "" -#: cp/init.c:2721 +#: cp/init.c:2738 #, gcc-internal-format msgid "placement new constructing an array of objects of type %qT and size %qwu in a region of type %qT and size %qwi" msgstr "" -#: cp/init.c:2732 +#: cp/init.c:2749 #, gcc-internal-format msgid "placement new constructing an object of type %qT and size %qwu in a region of type %qT and size %qwi" msgstr "" -#: cp/init.c:2880 +#: cp/init.c:2896 #, fuzzy, gcc-internal-format #| msgid "integer overflow in expression" msgid "integer overflow in array size" msgstr "desbordamiento entero en la expresión" -#: cp/init.c:2890 +#: cp/init.c:2906 #, fuzzy, gcc-internal-format #| msgid "num_threads expression must be integral" msgid "array size in new-expression must be constant" msgstr "la expresión num_threads debe ser integral" -#: cp/init.c:2904 +#: cp/init.c:2920 #, fuzzy, gcc-internal-format #| msgid "double quoted strings not allowed in #if expressions" msgid "variably modified type not allowed in new-expression" msgstr "no se permite cadenas con comillas dobles en expresiones #if" -#: cp/init.c:2920 +#: cp/init.c:2936 #, gcc-internal-format msgid "non-constant array new length must be specified directly, not by typedef" msgstr "" -#: cp/init.c:2922 +#: cp/init.c:2938 #, fuzzy, gcc-internal-format #| msgid "try removing the parentheses around the type-id" msgid "non-constant array new length must be specified without parentheses around the type-id" msgstr "intente borrar los paréntesis alrededor del id-de-tipo" -#: cp/init.c:2932 +#: cp/init.c:2948 #, gcc-internal-format msgid "invalid type % for new" msgstr "tipo % no válido para new" -#: cp/init.c:2975 +#: cp/init.c:2991 #, gcc-internal-format msgid "uninitialized const in % of %q#T" msgstr "const sin inicializar en % de %q#T" -#: cp/init.c:3101 +#: cp/init.c:3117 #, gcc-internal-format msgid "no suitable %qD found in class %qT" msgstr "no se encontró un %qD adecuado en la clase %qT" -#: cp/init.c:3108 cp/search.c:1023 +#: cp/init.c:3124 cp/search.c:1026 #, gcc-internal-format msgid "request for member %qD is ambiguous" msgstr "la petición para el miembro %qD es ambigua" -#: cp/init.c:3181 +#: cp/init.c:3197 #, gcc-internal-format msgid "% of type %qT with extended alignment %d" msgstr "" -#: cp/init.c:3184 +#: cp/init.c:3200 #, fuzzy, gcc-internal-format #| msgid "class %qT does not have any field named %qD" msgid "uses %qD, which does not have an alignment parameter" msgstr "la clase %qT no tiene ningún campo llamado %qD" -#: cp/init.c:3187 +#: cp/init.c:3203 #, gcc-internal-format msgid "use %<-faligned-new%> to enable C++17 over-aligned new support" msgstr "" -#: cp/init.c:3370 +#: cp/init.c:3386 #, gcc-internal-format msgid "parenthesized initializer in array new" msgstr "inicializador entre paréntesis en la matriz new" -#: cp/init.c:3633 +#: cp/init.c:3649 #, gcc-internal-format msgid "size in array new must have integral type" msgstr "el tamaño de la matriz nueva debe tener un tipo integral" -#: cp/init.c:3665 +#: cp/init.c:3681 #, gcc-internal-format msgid "new cannot be applied to a reference type" msgstr "new no se puede aplicar a un tipo de referencia" -#: cp/init.c:3674 +#: cp/init.c:3690 #, gcc-internal-format msgid "new cannot be applied to a function type" msgstr "new no se puede aplicar a un tipo de función" -#: cp/init.c:3743 +#: cp/init.c:3759 #, fuzzy, gcc-internal-format #| msgid "possible problem detected in invocation of delete operator:" msgid "possible problem detected in invocation of delete [] operator:" msgstr "se detectó un posible problema en la invocación del operador delete:" -#: cp/init.c:3747 +#: cp/init.c:3763 #, fuzzy, gcc-internal-format #| msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined" msgid "neither the destructor nor the class-specific operator delete [] will be called, even if they are declared when the class is defined" msgstr "no se llamará ni al destructor ni al operador delete específico de la clase, aún si se declaran cuando se defina la clase" -#: cp/init.c:4295 +#: cp/init.c:4311 #, gcc-internal-format msgid "initializer ends prematurely" msgstr "el inicializador termina prematuramente" -#: cp/init.c:4599 +#: cp/init.c:4615 #, gcc-internal-format msgid "unknown array size in delete" msgstr "tamaño de matriz desconocida en delete" -#: cp/init.c:4623 +#: cp/init.c:4639 #, gcc-internal-format msgid "possible problem detected in invocation of delete operator:" msgstr "se detectó un posible problema en la invocación del operador delete:" -#: cp/init.c:4628 +#: cp/init.c:4644 #, gcc-internal-format msgid "neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined" msgstr "no se llamará ni al destructor ni al operador delete específico de la clase, aún si se declaran cuando se defina la clase" -#: cp/init.c:4642 +#: cp/init.c:4658 #, fuzzy, gcc-internal-format #| msgid "deleting object of abstract class type %qT which has non-virtual destructor will cause undefined behaviour" msgid "deleting object of abstract class type %qT which has non-virtual destructor will cause undefined behavior" msgstr "si borra un objeto de tipo de clase abstracta %qT que tiene un destructor que no es virtual, puede causar conducta indefinida" -#: cp/init.c:4647 +#: cp/init.c:4663 #, fuzzy, gcc-internal-format #| msgid "deleting object of polymorphic class type %qT which has non-virtual destructor might cause undefined behaviour" msgid "deleting object of polymorphic class type %qT which has non-virtual destructor might cause undefined behavior" msgstr "si borra un objeto de tipo de clase polimórfica %qT que tiene un destructor que no es virtual, puede causar conducta indefinida" -#: cp/init.c:4954 +#: cp/init.c:4970 #, gcc-internal-format msgid "type to vector delete is neither pointer or array type" msgstr "el tipo de vector delete no es del tipo puntero ni matriz" @@ -44600,7 +44649,7 @@ msgid "ignoring %qD attribute on non-inline namespace" msgstr "se descartan los atributos en el argumento de plantilla %qT" -#: cp/name-lookup.c:5111 cp/name-lookup.c:7065 +#: cp/name-lookup.c:5111 cp/name-lookup.c:7073 #, gcc-internal-format msgid "%qD attribute directive ignored" msgstr "se descarta la directiva de atributo %qD" @@ -44652,60 +44701,60 @@ msgid "it was later defined here" msgstr "se definió struct aquí" -#: cp/name-lookup.c:6687 +#: cp/name-lookup.c:6695 #, fuzzy, gcc-internal-format #| msgid "deducing from brace-enclosed initializer list requires #include " msgid "declaration of % does not match %<#include %>, isn't a template" msgstr "la deducción de una lista inicializadora encerrada entre llaves requiere #include " -#: cp/name-lookup.c:7059 +#: cp/name-lookup.c:7067 #, fuzzy, gcc-internal-format #| msgid "switch %qs is no longer supported" msgid "strong using directive no longer supported" msgstr "la opción %qs ya no se admite" -#: cp/name-lookup.c:7062 +#: cp/name-lookup.c:7070 #, fuzzy, gcc-internal-format #| msgid "This switch is deprecated; use -fsanitize-recover= instead." msgid "you may use an inline namespace instead" msgstr "Esta opción es obsoleta; utilice en su lugar -fsanitize-recover=." -#: cp/name-lookup.c:7079 +#: cp/name-lookup.c:7087 #, fuzzy, gcc-internal-format #| msgid "attributes ignored on uninstantiated type" msgid "attributes ignored on local using directive" msgstr "se descartan los atributos en el tipo sin instanciar" -#: cp/name-lookup.c:7163 +#: cp/name-lookup.c:7171 #, gcc-internal-format msgid "namespace alias %qD not allowed here, assuming %qD" msgstr "no se permite aquí el alias del espacio de nombres %qD, se asume que es %qD" #. We only allow depth 255. -#: cp/name-lookup.c:7183 +#: cp/name-lookup.c:7191 #, fuzzy, gcc-internal-format, gfc-internal-format #| msgid "%qD may not be declared within a namespace" msgid "cannot nest more than %d namespaces" msgstr "%qD no se puede declarar dentro de un espacio de nombres" -#: cp/name-lookup.c:7218 +#: cp/name-lookup.c:7226 #, fuzzy, gcc-internal-format #| msgid "method attributes must be specified at the end only" msgid "inline namespace must be specified at initial definition" msgstr "los atributos de método sólo se deben especificar al final" -#: cp/name-lookup.c:7219 +#: cp/name-lookup.c:7227 #, fuzzy, gcc-internal-format #| msgid "label %qD defined here" msgid "%qD defined here" msgstr "la etiqueta %qD se define aquí" -#: cp/name-lookup.c:7292 +#: cp/name-lookup.c:7300 #, gcc-internal-format msgid "XXX entering pop_everything ()\n" msgstr "XXX entrando a pop_everything ()\n" -#: cp/name-lookup.c:7301 +#: cp/name-lookup.c:7309 #, gcc-internal-format msgid "XXX leaving pop_everything ()\n" msgstr "XXX saliendo de pop_everything ()\n" @@ -44725,7 +44774,7 @@ msgid "LEXER_DEBUGGING_ENABLED_P is not set to true" msgstr "" -#: cp/parser.c:1352 cp/parser.c:37254 +#: cp/parser.c:1352 cp/parser.c:37251 #, gcc-internal-format msgid "%<#pragma omp declare simd%> not immediately followed by function declaration or definition" msgstr "" @@ -44750,7 +44799,7 @@ msgid "request for member %qE in non-class type %qT" msgstr "solicitud por el miembro %qE en el tipo %qT que no es clase" -#: cp/parser.c:2949 cp/parser.c:18221 +#: cp/parser.c:2949 cp/parser.c:18218 #, gcc-internal-format msgid "%<%T::%E%> has not been declared" msgstr "%<%T::%E%> no se ha declarado" @@ -44832,7 +44881,7 @@ msgid "ISO C++ forbids using a floating-point literal in a constant-expression" msgstr "una literal de coma flotante no puede aparecer en una expresión constante" -#: cp/parser.c:3143 cp/pt.c:17853 +#: cp/parser.c:3143 cp/pt.c:17890 #, gcc-internal-format msgid "a cast to a type other than an integral or enumeration type cannot appear in a constant-expression" msgstr "una conversión a un tipo diferente de un tipo integral o de enumeración no puede aparecer en una expresión constante" @@ -45065,7 +45114,7 @@ msgid "unable to find string literal operator %qD with %qT, %qT arguments" msgstr "no se puede encontrar un operador literal de cadena %qD con argumentos %qT, %qT" -#: cp/parser.c:4587 cp/parser.c:12940 +#: cp/parser.c:4587 cp/parser.c:12937 #, gcc-internal-format msgid "expected declaration" msgstr "se esperaba una declaración" @@ -45121,7 +45170,7 @@ msgid "fold-expressions only available with -std=c++17 or -std=gnu++17" msgstr "las expresiones lambda sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:5275 cp/parser.c:5452 cp/parser.c:5630 cp/semantics.c:3612 +#: cp/parser.c:5275 cp/parser.c:5452 cp/parser.c:5633 cp/semantics.c:3615 #, gcc-internal-format msgid "expected primary-expression" msgstr "se esperaba una expresión primaria" @@ -45141,97 +45190,97 @@ msgid "local variable %qD may not appear in this context" msgstr "la variable local %qD no puede aparecer en este contexto" -#: cp/parser.c:5787 +#: cp/parser.c:5790 #, gcc-internal-format msgid "expected id-expression" msgstr "se esperaba una expresión id" -#: cp/parser.c:5919 +#: cp/parser.c:5922 #, gcc-internal-format msgid "scope %qT before %<~%> is not a class-name" msgstr "el ámbito %qT antes de %<~%> no es un nombre-de-clase" -#: cp/parser.c:5948 cp/parser.c:7860 +#: cp/parser.c:5951 cp/parser.c:7860 #, fuzzy, gcc-internal-format #| msgid "C++0x auto only available with -std=c++11 or -std=gnu++11" msgid "%<~auto%> only available with -std=c++14 or -std=gnu++14" msgstr "C++0x automático sólo está disponible con -std=c++11 o -std=gnu++11" -#: cp/parser.c:6059 +#: cp/parser.c:6062 #, gcc-internal-format msgid "declaration of %<~%T%> as member of %qT" msgstr "declaración de %<~%T%> como miembro de %qT" -#: cp/parser.c:6074 +#: cp/parser.c:6077 #, gcc-internal-format msgid "typedef-name %qD used as destructor declarator" msgstr "se usa el nombre-de-definición-de-tipo %qD como un declarador de destructor" -#: cp/parser.c:6111 cp/parser.c:20249 +#: cp/parser.c:6114 cp/parser.c:20246 #, gcc-internal-format msgid "expected unqualified-id" msgstr "se esperaba un id sin calificar" -#: cp/parser.c:6220 +#: cp/parser.c:6223 #, gcc-internal-format msgid "found %<:%> in nested-name-specifier, expected %<::%>" msgstr "se encontró %<:%> en un especificador de nombre anidado, se esperaba %<::%>" -#: cp/parser.c:6288 +#: cp/parser.c:6291 #, gcc-internal-format msgid "decltype evaluates to %qT, which is not a class or enumeration type" msgstr "el tipo de declaración evalúa a %qT, el cual no es una clase o un tipo enumerado" -#: cp/parser.c:6314 +#: cp/parser.c:6317 #, fuzzy, gcc-internal-format #| msgid "incomplete type %qT used in nested name specifier" msgid "function template-id %qD in nested-name-specifier" msgstr "se utilizó el tipo incompleto %qT en un especificador de nombre anidado" -#: cp/parser.c:6322 +#: cp/parser.c:6325 #, fuzzy, gcc-internal-format #| msgid "expected nested-name-specifier" msgid "variable template-id %qD in nested-name-specifier" msgstr "se esperaban especificadores de nombre anidados" -#: cp/parser.c:6426 cp/typeck.c:2684 cp/typeck.c:2687 cp/typeck.c:2704 +#: cp/parser.c:6429 cp/typeck.c:2684 cp/typeck.c:2687 cp/typeck.c:2704 #, gcc-internal-format msgid "%qD is not a template" msgstr "%qD no es una plantilla" -#: cp/parser.c:6504 +#: cp/parser.c:6507 #, gcc-internal-format msgid "expected nested-name-specifier" msgstr "se esperaban especificadores de nombre anidados" -#: cp/parser.c:6711 cp/parser.c:8950 +#: cp/parser.c:6714 cp/parser.c:8950 #, gcc-internal-format msgid "types may not be defined in casts" msgstr "los tipos no se pueden definir en conversiones" -#: cp/parser.c:6797 +#: cp/parser.c:6800 #, gcc-internal-format msgid "types may not be defined in a % expression" msgstr "no se pueden definir tipos en una expresión %" -#: cp/parser.c:6889 +#: cp/parser.c:6892 #, fuzzy, gcc-internal-format #| msgid "wrong number of arguments to %<__builtin_shuffle%>" msgid "wrong number of arguments to %<__builtin_addressof%>" msgstr "número erróneo de argumentos para %<__builtin_shuffle%>" -#: cp/parser.c:6901 cp/pt.c:18416 +#: cp/parser.c:6904 cp/pt.c:18453 #, fuzzy, gcc-internal-format #| msgid "wrong number of arguments to %<__builtin_complex%>" msgid "wrong number of arguments to %<__builtin_launder%>" msgstr "número erróneo de argumentos para %<__builtin_complex%>" -#: cp/parser.c:6995 +#: cp/parser.c:6998 #, gcc-internal-format msgid "ISO C++ forbids compound-literals" msgstr "ISO C++ prohíbe las literales compuestas" -#: cp/parser.c:7054 +#: cp/parser.c:7057 #, gcc-internal-format msgid "two consecutive %<[%> shall only introduce an attribute" msgstr "" @@ -45369,7 +45418,7 @@ msgid "capture of non-variable %qE" msgstr "captura de %qD que no es variable " -#: cp/parser.c:10391 cp/parser.c:10401 cp/semantics.c:3453 cp/semantics.c:3465 +#: cp/parser.c:10391 cp/parser.c:10401 cp/semantics.c:3456 cp/semantics.c:3468 #, fuzzy, gcc-internal-format #| msgid "%q+#D declared here" msgid "%q#D declared here" @@ -45463,7 +45512,7 @@ msgid "init-statement in selection statements only available with -std=c++17 or -std=gnu++17" msgstr "los nombres de espacio incluidos en línea sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:11546 cp/parser.c:28490 +#: cp/parser.c:11546 cp/parser.c:28487 #, gcc-internal-format msgid "expected selection-statement" msgstr "se esperaba una declaración de selección" @@ -45483,18 +45532,18 @@ msgid "inconsistent begin/end types in range-based % statement: %qT and %qT" msgstr "tipos begin/end inconsistentes para la declaración % basada en rango: %qT y %qT" -#: cp/parser.c:12250 cp/parser.c:28493 +#: cp/parser.c:12250 cp/parser.c:28490 #, gcc-internal-format msgid "expected iteration-statement" msgstr "se esperaba una declaración de iteración" -#: cp/parser.c:12298 +#: cp/parser.c:12297 #, fuzzy, gcc-internal-format #| msgid "unrestricted unions only available with -std=c++11 or -std=gnu++11" msgid "range-based % loops only available with -std=c++11 or -std=gnu++11" msgstr "las uniones sin restricción sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:12426 +#: cp/parser.c:12423 #, fuzzy, gcc-internal-format #| msgid "compound-statement in constexpr function" msgid "% in % function" @@ -45501,576 +45550,576 @@ msgstr "declaración compuesta en una función constexpr" #. Issue a warning about this use of a GNU extension. -#: cp/parser.c:12434 +#: cp/parser.c:12431 #, gcc-internal-format msgid "ISO C++ forbids computed gotos" msgstr "ISO C++ prohíbe los gotos calculados" -#: cp/parser.c:12447 cp/parser.c:28496 +#: cp/parser.c:12444 cp/parser.c:28493 #, gcc-internal-format msgid "expected jump-statement" msgstr "se esperaba una declaración de salto" -#: cp/parser.c:12620 cp/parser.c:23584 +#: cp/parser.c:12617 cp/parser.c:23581 #, gcc-internal-format msgid "extra %<;%>" msgstr "<;%> extra" -#: cp/parser.c:12863 +#: cp/parser.c:12860 #, gcc-internal-format msgid "%<__label__%> not at the beginning of a block" msgstr "%<__label%> no está al inicio de un bloque" -#: cp/parser.c:13083 +#: cp/parser.c:13080 #, gcc-internal-format msgid "non-variable %qD in declaration with more than one declarator with placeholder type" msgstr "" -#: cp/parser.c:13103 +#: cp/parser.c:13100 #, gcc-internal-format msgid "inconsistent deduction for %qT: %qT and then %qT" msgstr "deducción inconsistente para %qT: %qT y después %qT" -#: cp/parser.c:13124 +#: cp/parser.c:13121 #, gcc-internal-format msgid "mixing declarations and function-definitions is forbidden" msgstr "se prohíbe mezclar declaraciones y definiciones-de-función" -#: cp/parser.c:13148 +#: cp/parser.c:13145 #, fuzzy, gcc-internal-format #| msgid "types may not be defined in exception-declarations" msgid "types may not be defined in a for-range-declaration" msgstr "no se pueden definir tipos en declaraciones de excepción" -#: cp/parser.c:13203 +#: cp/parser.c:13200 #, fuzzy, gcc-internal-format #| msgid "types may not be defined in range-based for loops" msgid "initializer in range-based % loop" msgstr "no se pueden definir tipos en bucles for basados en rango" -#: cp/parser.c:13206 +#: cp/parser.c:13203 #, fuzzy, gcc-internal-format #| msgid "multiple declarations `%T' and `%T'" msgid "multiple declarations in range-based % loop" msgstr "declaraciones múltiples `%T' y `%T'" -#: cp/parser.c:13257 +#: cp/parser.c:13254 #, fuzzy, gcc-internal-format #| msgid "unrestricted unions only available with -std=c++11 or -std=gnu++11" msgid "structured bindings only available with -std=c++17 or -std=gnu++17" msgstr "las uniones sin restricción sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:13306 +#: cp/parser.c:13303 #, fuzzy, gcc-internal-format #| msgid "invalid initializer for bit string" msgid "empty structured binding declaration" msgstr "inicializador no válido para la cadena de bits" -#: cp/parser.c:13324 +#: cp/parser.c:13321 #, fuzzy, gcc-internal-format #| msgid "invalid initializer for bit string" msgid "invalid initializer for structured binding declaration" msgstr "inicializador no válido para la cadena de bits" -#: cp/parser.c:13491 +#: cp/parser.c:13488 #, gcc-internal-format msgid "% used outside of class" msgstr "se usó % fuera de la clase" -#: cp/parser.c:13558 +#: cp/parser.c:13555 #, gcc-internal-format msgid "% changes meaning in C++11; please remove it" msgstr "% cambiará su significado en C++11; por favor bórrelo" -#: cp/parser.c:13594 +#: cp/parser.c:13591 #, gcc-internal-format msgid "decl-specifier invalid in condition" msgstr "especificador-decl no válido en la condición" -#: cp/parser.c:13600 +#: cp/parser.c:13597 #, fuzzy, gcc-internal-format #| msgid "%qD invalid in %qT" msgid "%qD invalid in lambda" msgstr "%qD no válido en %qT" -#: cp/parser.c:13693 +#: cp/parser.c:13690 #, gcc-internal-format msgid "class definition may not be declared a friend" msgstr "la definición de clase no se puede declarar como friend" -#: cp/parser.c:13763 cp/parser.c:24064 +#: cp/parser.c:13760 cp/parser.c:24061 #, gcc-internal-format msgid "templates may not be %" msgstr "las plantillas no pueden ser %" -#: cp/parser.c:13805 +#: cp/parser.c:13802 #, gcc-internal-format msgid "invalid linkage-specification" msgstr "especificación de enlace no válida" -#: cp/parser.c:13909 +#: cp/parser.c:13906 #, fuzzy, gcc-internal-format #| msgid "inline namespaces only available with -std=c++11 or -std=gnu++11" msgid "static_assert without a message only available with -std=c++17 or -std=gnu++17" msgstr "los nombres de espacio incluidos en línea sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:14111 +#: cp/parser.c:14108 #, gcc-internal-format msgid "types may not be defined in % expressions" msgstr "no se pueden definir tipos en expresiones %" -#: cp/parser.c:14264 +#: cp/parser.c:14261 #, fuzzy, gcc-internal-format #| msgid "types may not be defined in a new-type-id" msgid "types may not be defined in a conversion-type-id" msgstr "no se pueden definir tipos en un id-tipo-nuevo" -#: cp/parser.c:14291 +#: cp/parser.c:14288 #, gcc-internal-format msgid "invalid use of % in conversion operator" msgstr "uso no válido de % en el operador de conversión" -#: cp/parser.c:14295 +#: cp/parser.c:14292 #, fuzzy, gcc-internal-format #| msgid "invalid use of % in conversion operator" msgid "use of % in member template conversion operator can never be deduced" msgstr "uso no válido de % en el operador de conversión" -#: cp/parser.c:14379 +#: cp/parser.c:14376 #, gcc-internal-format msgid "only constructors take member initializers" msgstr "solamente los constructores toman inicializadores miembro" -#: cp/parser.c:14406 +#: cp/parser.c:14403 #, fuzzy, gcc-internal-format #| msgid "cannot expand initializer for member %<%D%>" msgid "cannot expand initializer for member %qD" msgstr "no se puede expandir el inicializador para el miembro %<%D%>" -#: cp/parser.c:14418 cp/pt.c:24255 +#: cp/parser.c:14415 cp/pt.c:24333 #, gcc-internal-format msgid "mem-initializer for %qD follows constructor delegation" msgstr "inicializador mem para %qD después de una delegación de constructor" -#: cp/parser.c:14430 cp/pt.c:24267 +#: cp/parser.c:14427 cp/pt.c:24345 #, gcc-internal-format msgid "constructor delegation follows mem-initializer for %qD" msgstr "delegación de constructor después de un inicializador mem para %qD" -#: cp/parser.c:14482 +#: cp/parser.c:14479 #, gcc-internal-format msgid "anachronistic old-style base class initializer" msgstr "inicializador de clase base de estilo antiguo anacrónico" -#: cp/parser.c:14552 +#: cp/parser.c:14549 #, gcc-internal-format msgid "keyword % not allowed in this context (a qualified member initializer is implicitly a type)" msgstr "no se permite la palabra clave % en este contexto (un inicializador de miembro calificado es implícitamente un tipo)" -#: cp/parser.c:14927 +#: cp/parser.c:14924 #, fuzzy, gcc-internal-format #| msgid "missing space between %<\"\"%> and suffix identifier" msgid "unexpected keyword; remove space between quotes and suffix identifier" msgstr "falta un espacio entre %<\"\"%> y el identificador sufijo" -#: cp/parser.c:14933 +#: cp/parser.c:14930 #, gcc-internal-format msgid "expected suffix identifier" msgstr "se esperaba un identificador sufijo" -#: cp/parser.c:14942 +#: cp/parser.c:14939 #, gcc-internal-format msgid "expected empty string after % keyword" msgstr "se esperaba una cadena vacía después de la palabra clave %" -#: cp/parser.c:14948 +#: cp/parser.c:14945 #, fuzzy, gcc-internal-format #| msgid "invalid operands in ternary operation" msgid "invalid encoding prefix in literal operator" msgstr "operandos no válidos en la operación terniaria" -#: cp/parser.c:14975 +#: cp/parser.c:14972 #, gcc-internal-format msgid "expected operator" msgstr "operador inesperado" #. Warn that we do not support `export'. -#: cp/parser.c:15020 +#: cp/parser.c:15017 #, gcc-internal-format msgid "keyword % not implemented, and will be ignored" msgstr "no se admite la palabra clave %, y se descartará" -#: cp/parser.c:15190 +#: cp/parser.c:15187 #, fuzzy, gcc-internal-format #| msgid "invalid template non-type parameter" msgid "invalid constrained type parameter" msgstr "parámetro que no es tipo plantilla no válido" -#: cp/parser.c:15198 +#: cp/parser.c:15195 #, fuzzy, gcc-internal-format #| msgid "invalid catch parameter" msgid "cv-qualified type parameter" msgstr "parámetro de captura no válido" -#: cp/parser.c:15283 +#: cp/parser.c:15280 #, gcc-internal-format msgid "variadic constraint introduced without %<...%>" msgstr "" -#: cp/parser.c:15347 +#: cp/parser.c:15344 #, fuzzy, gcc-internal-format #| msgid "invalid use of '%E' as a non-type template-argument" msgid "invalid use of % in default template argument" msgstr "uso no válido de '%E' como un argumento de plantilla que no es tipo" -#: cp/parser.c:15582 cp/parser.c:15668 cp/parser.c:21694 +#: cp/parser.c:15579 cp/parser.c:15665 cp/parser.c:21691 #, gcc-internal-format msgid "template parameter pack %qD cannot have a default argument" msgstr "el paquete de parámetros plantilla %qD no puede tener un argumento por defecto" -#: cp/parser.c:15586 cp/parser.c:15672 +#: cp/parser.c:15583 cp/parser.c:15669 #, gcc-internal-format msgid "template parameter packs cannot have default arguments" msgstr "los paquetes de parámetro de plantilla no pueden tener argumentos por defecto" -#: cp/parser.c:15738 +#: cp/parser.c:15735 #, gcc-internal-format msgid "expected template-id" msgstr "se esperaba un id de plantilla" -#: cp/parser.c:15798 +#: cp/parser.c:15795 #, gcc-internal-format msgid "%<<::%> cannot begin a template-argument list" msgstr "%<<::%> no puede iniciar una lista de argumentos de plantilla" -#: cp/parser.c:15802 +#: cp/parser.c:15799 #, gcc-internal-format msgid "%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> and %<::%>" msgstr "%<<:%> es una forma alternativa para %<[%>. Inserte espacios en blanco entre %<<%> y %<::%>" -#: cp/parser.c:15806 +#: cp/parser.c:15803 #, fuzzy, gcc-internal-format #| msgid "(if you use %<-fpermissive%> G++ will accept your code)" msgid "(if you use %<-fpermissive%> or %<-std=c++11%>, or %<-std=gnu++11%> G++ will accept your code)" msgstr "(si utiliza %<-fpermissive%>, G++ aceptará su código)" -#: cp/parser.c:15924 +#: cp/parser.c:15921 #, gcc-internal-format msgid "parse error in template argument list" msgstr "error de decodificación en la lista de argumentos de plantilla" #. The name does not name a template. -#: cp/parser.c:15992 cp/parser.c:16122 cp/parser.c:16337 +#: cp/parser.c:15989 cp/parser.c:16119 cp/parser.c:16334 #, gcc-internal-format msgid "expected template-name" msgstr "se esperaba un nombre de plantilla" #. Explain what went wrong. -#: cp/parser.c:16038 +#: cp/parser.c:16035 #, gcc-internal-format msgid "non-template %qD used as template" msgstr "se usó %qD que no es plantilla como plantilla" -#: cp/parser.c:16040 +#: cp/parser.c:16037 #, gcc-internal-format msgid "use %<%T::template %D%> to indicate that it is a template" msgstr "utilice %<%T::template %D%> para indicar que es una plantilla" -#: cp/parser.c:16189 +#: cp/parser.c:16186 #, gcc-internal-format msgid "expected parameter pack before %<...%>" msgstr "se esperaba el parámetro pack antes de %<...%>" -#: cp/parser.c:16298 cp/parser.c:16316 cp/parser.c:16483 +#: cp/parser.c:16295 cp/parser.c:16313 cp/parser.c:16480 #, gcc-internal-format msgid "expected template-argument" msgstr "se esperaba un argumento de plantilla" -#: cp/parser.c:16458 +#: cp/parser.c:16455 #, gcc-internal-format msgid "invalid non-type template argument" msgstr "argumento de plantilla que no es tipo no válido" -#: cp/parser.c:16585 +#: cp/parser.c:16582 #, gcc-internal-format msgid "explicit instantiation shall not use % specifier" msgstr "la instanciación explícita no debe usar el especificador %" -#: cp/parser.c:16589 +#: cp/parser.c:16586 #, gcc-internal-format msgid "explicit instantiation shall not use % specifier" msgstr "la instanciación explícita no debe usar el especificador %" -#: cp/parser.c:16648 +#: cp/parser.c:16645 #, gcc-internal-format msgid "template specialization with C linkage" msgstr "especialización de plantilla con enlace C" -#: cp/parser.c:16869 +#: cp/parser.c:16866 #, gcc-internal-format msgid "expected type specifier" msgstr "se esperaba un specificador de tipo" -#: cp/parser.c:17053 +#: cp/parser.c:17050 #, fuzzy, gcc-internal-format #| msgid "defaulted and deleted functions only available with -std=c++11 or -std=gnu++11" msgid "use of % in lambda parameter declaration only available with -std=c++14 or -std=gnu++14" msgstr "las funciones por defecto y borradas sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:17059 +#: cp/parser.c:17056 #, fuzzy, gcc-internal-format #| msgid "defaulted and deleted functions only available with -std=c++11 or -std=gnu++11" msgid "use of % in parameter declaration only available with -std=c++14 or -std=gnu++14" msgstr "las funciones por defecto y borradas sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:17064 +#: cp/parser.c:17061 #, fuzzy, gcc-internal-format #| msgid "defaulted and deleted functions only available with -std=c++11 or -std=gnu++11" msgid "use of % in parameter declaration only available with -fconcepts" msgstr "las funciones por defecto y borradas sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:17209 +#: cp/parser.c:17206 #, gcc-internal-format msgid "expected template-id for type" msgstr "se esperaba un id de plantilla para el tipo" -#: cp/parser.c:17278 +#: cp/parser.c:17275 #, gcc-internal-format msgid "expected type-name" msgstr "se esperaba un nombre de tipo" -#: cp/parser.c:17631 +#: cp/parser.c:17628 #, fuzzy, gcc-internal-format #| msgid "elaborated-type-specifier for a scoped enum must not use the %<%D%> keyword" msgid "elaborated-type-specifier for a scoped enum must not use the %qD keyword" msgstr "el especificador de tipo elaborado para un ámbito enumerado no debe usar la palabra clave %<%D%>" -#: cp/parser.c:17854 +#: cp/parser.c:17851 #, gcc-internal-format msgid "declaration %qD does not declare anything" msgstr "la declaración %qD no declara nada" -#: cp/parser.c:17942 +#: cp/parser.c:17939 #, gcc-internal-format msgid "attributes ignored on uninstantiated type" msgstr "se descartan los atributos en el tipo sin instanciar" -#: cp/parser.c:17946 +#: cp/parser.c:17943 #, gcc-internal-format msgid "attributes ignored on template instantiation" msgstr "se descartan los atributos en la instanciación de una plantilla" -#: cp/parser.c:17951 +#: cp/parser.c:17948 #, gcc-internal-format msgid "attributes ignored on elaborated-type-specifier that is not a forward declaration" msgstr "se descartan los atributos en un especificador de tipo elaborado que no es una declaración adelantada" -#: cp/parser.c:18085 +#: cp/parser.c:18082 #, gcc-internal-format msgid "%qD is an enumeration template" msgstr "%qD es una plantilla de enumeración" -#: cp/parser.c:18096 +#: cp/parser.c:18093 #, fuzzy, gcc-internal-format #| msgid "%qD does not have integral or enumeration type" msgid "%qD does not name an enumeration in %qT" msgstr "%qD no tiene tipo integral o de enumeración" -#: cp/parser.c:18111 +#: cp/parser.c:18108 #, fuzzy, gcc-internal-format #| msgid "% definition is not allowed here" msgid "unnamed scoped enum is not allowed" msgstr "la definición % no se permite aquí" -#: cp/parser.c:18166 +#: cp/parser.c:18163 #, gcc-internal-format msgid "expected %<;%> or %<{%>" msgstr "se esperaba %<;%> o %<{%>" -#: cp/parser.c:18215 +#: cp/parser.c:18212 #, gcc-internal-format msgid "cannot add an enumerator list to a template instantiation" msgstr "no se puede agregar una lista de enumerador a una instanciación de plantilla" -#: cp/parser.c:18229 +#: cp/parser.c:18226 #, fuzzy, gcc-internal-format #| msgid "friend declaration does not name a class or function" msgid "nested name specifier %qT for enum declaration does not name a class or namespace" msgstr "la declaración friend no nombra una clase o función" -#: cp/parser.c:18241 cp/parser.c:23070 +#: cp/parser.c:18238 cp/parser.c:23067 #, gcc-internal-format msgid "declaration of %qD in namespace %qD which does not enclose %qD" msgstr "la declaración de %qD en el espacio de nombres %qD el cual no incluye a %qD" -#: cp/parser.c:18246 cp/parser.c:23075 +#: cp/parser.c:18243 cp/parser.c:23072 #, gcc-internal-format msgid "declaration of %qD in %qD which does not enclose %qD" msgstr "la declaración de %qD en %qD la cual no incluye a %qD" -#: cp/parser.c:18258 cp/parser.c:23089 +#: cp/parser.c:18255 cp/parser.c:23086 #, gcc-internal-format msgid "extra qualification not allowed" msgstr "no se permite la calificación extra" -#: cp/parser.c:18282 +#: cp/parser.c:18279 #, gcc-internal-format msgid "multiple definition of %q#T" msgstr "definición múltiple de %q#T" -#: cp/parser.c:18295 +#: cp/parser.c:18292 #, fuzzy, gcc-internal-format #| msgid "ISO C++ forbids incrementing an enum" msgid "ISO C++ forbids empty unnamed enum" msgstr "ISO C++ prohíbe incrementar un enum" -#: cp/parser.c:18315 +#: cp/parser.c:18312 #, gcc-internal-format msgid "opaque-enum-specifier without name" msgstr "especificador enumerador opaco sin nombre" -#: cp/parser.c:18318 +#: cp/parser.c:18315 #, gcc-internal-format msgid "opaque-enum-specifier must use a simple identifier" msgstr "el especificador enumerador opaco debe usar un identificador simple" -#: cp/parser.c:18497 +#: cp/parser.c:18494 #, gcc-internal-format msgid "%qD is not a namespace-name" msgstr "%qD no es un nombre-de-espacio-de-nombres" -#: cp/parser.c:18503 +#: cp/parser.c:18500 #, gcc-internal-format msgid "expected namespace-name" msgstr "se esperaba un nombre de espacio" -#: cp/parser.c:18570 +#: cp/parser.c:18567 #, fuzzy, gcc-internal-format #| msgid "inline namespaces only available with -std=c++11 or -std=gnu++11" msgid "nested namespace definitions only available with -std=c++17 or -std=gnu++17" msgstr "los nombres de espacio incluidos en línea sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:18578 +#: cp/parser.c:18575 #, fuzzy, gcc-internal-format #| msgid "expected namespace-name" msgid "nested namespace name required" msgstr "se esperaba un nombre de espacio" -#: cp/parser.c:18583 +#: cp/parser.c:18580 #, fuzzy, gcc-internal-format #| msgid "namespace %qT undeclared" msgid "namespace name required" msgstr "espacio de nombres %qT sin declarar" -#: cp/parser.c:18587 +#: cp/parser.c:18584 #, fuzzy, gcc-internal-format #| msgid "Enumerator cannot have attributes %C" msgid "a nested namespace definition cannot have attributes" msgstr "El enumerador no puede tener atributos %C" -#: cp/parser.c:18590 +#: cp/parser.c:18587 #, fuzzy, gcc-internal-format #| msgid "varargs function cannot be inline" msgid "a nested namespace definition cannot be inline" msgstr "la función varargs no puede ser inline" -#: cp/parser.c:18597 +#: cp/parser.c:18594 #, fuzzy, gcc-internal-format #| msgid "namespace %qT undeclared" msgid "namespace %qD entered" msgstr "espacio de nombres %qT sin declarar" -#: cp/parser.c:18652 +#: cp/parser.c:18649 #, gcc-internal-format msgid "% definition is not allowed here" msgstr "la definición % no se permite aquí" -#: cp/parser.c:18803 +#: cp/parser.c:18800 #, fuzzy, gcc-internal-format #| msgid "lambda expressions only available with -std=c++11 or -std=gnu++11" msgid "pack expansion in using-declaration only available with -std=c++17 or -std=gnu++17" msgstr "las expresiones lambda sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:18818 +#: cp/parser.c:18815 #, gcc-internal-format msgid "a template-id may not appear in a using-declaration" msgstr "un id-de-plantilla no puede aparecer en una declaración-using" -#: cp/parser.c:18865 +#: cp/parser.c:18862 #, fuzzy, gcc-internal-format #| msgid "lambda expressions only available with -std=c++11 or -std=gnu++11" msgid "comma-separated list in using-declaration only available with -std=c++17 or -std=gnu++17" msgstr "las expresiones lambda sólo están disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:18875 +#: cp/parser.c:18872 #, gcc-internal-format msgid "access declarations are deprecated in favour of using-declarations; suggestion: add the % keyword" msgstr "las declaraciones access son obsoletas en favor de las declaraciones using: sugerencia: use la palabra clave %" -#: cp/parser.c:18940 +#: cp/parser.c:18937 #, gcc-internal-format msgid "types may not be defined in alias template declarations" msgstr "no se pueden definir tipos en declaraciones de plantilla alias" -#: cp/parser.c:19106 +#: cp/parser.c:19103 #, fuzzy, gcc-internal-format #| msgid "compound-statement in constexpr function" msgid "% in % function" msgstr "declaración compuesta en una función constexpr" -#: cp/parser.c:19493 +#: cp/parser.c:19490 #, gcc-internal-format msgid "a function-definition is not allowed here" msgstr "una definición de función no se permite aquí" -#: cp/parser.c:19504 +#: cp/parser.c:19501 #, gcc-internal-format msgid "an asm-specification is not allowed on a function-definition" msgstr "no se permite una especificación-asm en una definición-de-función" -#: cp/parser.c:19508 +#: cp/parser.c:19505 #, gcc-internal-format msgid "attributes are not allowed on a function-definition" msgstr "no se permiten atributos en una definición-de-función" -#: cp/parser.c:19559 +#: cp/parser.c:19556 #, gcc-internal-format msgid "expected constructor, destructor, or type conversion" msgstr "se esperaba un constructor, un destructor, o una conversión de tipo" #. Anything else is an error. -#: cp/parser.c:19598 cp/parser.c:21906 +#: cp/parser.c:19595 cp/parser.c:21903 #, gcc-internal-format msgid "expected initializer" msgstr "se esperaba un inicializador" -#: cp/parser.c:19679 +#: cp/parser.c:19676 #, gcc-internal-format msgid "initializer provided for function" msgstr "se proporcionó un inicializador para la función" -#: cp/parser.c:19713 +#: cp/parser.c:19710 #, gcc-internal-format msgid "attributes after parenthesized initializer ignored" msgstr "se descartan los atributos después del inicializador entre paréntesis" -#: cp/parser.c:19727 +#: cp/parser.c:19724 #, fuzzy, gcc-internal-format #| msgid "function %q+D redeclared as inline" msgid "non-function %qD declared as implicit template" msgstr "se redeclara la función %q+D como inline" -#: cp/parser.c:20169 +#: cp/parser.c:20166 #, gcc-internal-format msgid "array bound is not an integer constant" msgstr "el límite de la matriz no es una constante entera" -#: cp/parser.c:20295 +#: cp/parser.c:20292 #, gcc-internal-format msgid "cannot define member of dependent typedef %qT" msgstr "no se puede definir el miembro de la definición de tipo dependiente %qT" -#: cp/parser.c:20299 +#: cp/parser.c:20296 #, gcc-internal-format msgid "%<%T::%E%> is not a type" msgstr "%<%T::%E%> no es un tipo" @@ -46079,17 +46128,17 @@ #. here because we do not have enough #. information about its original syntactic #. form. -#: cp/parser.c:20328 +#: cp/parser.c:20325 #, gcc-internal-format msgid "invalid declarator" msgstr "declarador no válido" -#: cp/parser.c:20336 +#: cp/parser.c:20333 #, gcc-internal-format msgid "invalid use of constructor as a template" msgstr "uso no válido del constructor como una plantilla" -#: cp/parser.c:20338 +#: cp/parser.c:20335 #, gcc-internal-format msgid "use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified name" msgstr "use %<%T::%D%> en lugar de %<%T::%D%> para nombrar el constructor en un nombre calificado" @@ -46096,409 +46145,409 @@ #. But declarations with qualified-ids can't appear in a #. function. -#: cp/parser.c:20410 +#: cp/parser.c:20407 #, fuzzy, gcc-internal-format #| msgid "invalid type in declaration" msgid "qualified-id in declaration" msgstr "tipo no válido en la declaración" -#: cp/parser.c:20435 +#: cp/parser.c:20432 #, gcc-internal-format msgid "expected declarator" msgstr "se esperaba un declarador" -#: cp/parser.c:20554 +#: cp/parser.c:20551 #, gcc-internal-format msgid "%qD is a namespace" msgstr "%qD es un espacio de nombres" -#: cp/parser.c:20556 +#: cp/parser.c:20553 #, gcc-internal-format msgid "cannot form pointer to member of non-class %q#T" msgstr "no se puede formar un puntero al miembro de %q#T que no es clase" -#: cp/parser.c:20577 +#: cp/parser.c:20574 #, gcc-internal-format msgid "expected ptr-operator" msgstr "se esperaba un operador puntero" -#: cp/parser.c:20638 +#: cp/parser.c:20635 #, gcc-internal-format msgid "duplicate cv-qualifier" msgstr "calificador-cv duplicado" -#: cp/parser.c:20692 +#: cp/parser.c:20689 #, fuzzy, gcc-internal-format #| msgid "multiple `virtual' specifiers" msgid "multiple ref-qualifiers" msgstr "especificadores `virtual' múltiples" -#: cp/parser.c:20729 +#: cp/parser.c:20726 #, fuzzy, gcc-internal-format #| msgid "--resource requires -o" msgid "%qE requires %<-fgnu-tm%>" msgstr "--resource requiere -o" -#: cp/parser.c:20787 +#: cp/parser.c:20784 #, gcc-internal-format msgid "duplicate virt-specifier" msgstr "especificador-virt duplicado" -#: cp/parser.c:21025 +#: cp/parser.c:21022 #, fuzzy, gcc-internal-format #| msgid "in template argument for type %qT " msgid "missing template arguments after %qT" msgstr "en el argumento de plantilla para el tipo %qT " -#: cp/parser.c:21031 cp/typeck2.c:494 cp/typeck2.c:534 cp/typeck2.c:2090 +#: cp/parser.c:21028 cp/typeck2.c:494 cp/typeck2.c:534 cp/typeck2.c:2093 #, gcc-internal-format msgid "invalid use of %qT" msgstr "uso no válido de %qT" -#: cp/parser.c:21052 +#: cp/parser.c:21049 #, gcc-internal-format msgid "types may not be defined in template arguments" msgstr "no se pueden definir tipos en argumentos de plantilla" -#: cp/parser.c:21057 +#: cp/parser.c:21054 #, fuzzy, gcc-internal-format #| msgid "invalid use of '%E' as a non-type template-argument" msgid "invalid use of % in template argument" msgstr "uso no válido de '%E' como un argumento de plantilla que no es tipo" -#: cp/parser.c:21145 +#: cp/parser.c:21142 #, gcc-internal-format msgid "expected type-specifier" msgstr "se esperaba un especificador de tipo" -#: cp/parser.c:21429 +#: cp/parser.c:21426 #, gcc-internal-format msgid "expected %<,%> or %<...%>" msgstr "se esperaba %<,%> o %<...%>" -#: cp/parser.c:21504 +#: cp/parser.c:21501 #, gcc-internal-format msgid "types may not be defined in parameter types" msgstr "no se pueden definir tipos en tipos de parámetro" -#: cp/parser.c:21678 +#: cp/parser.c:21675 #, gcc-internal-format msgid "default arguments are only permitted for function parameters" msgstr "los argumentos por defecto sólo se permiten para parámetros de función" -#: cp/parser.c:21696 +#: cp/parser.c:21693 #, gcc-internal-format msgid "parameter pack %qD cannot have a default argument" msgstr "el paquete de parámetros %qD no puede tener un argumento por defecto" -#: cp/parser.c:21702 +#: cp/parser.c:21699 #, gcc-internal-format msgid "template parameter pack cannot have a default argument" msgstr "el paquete de parámetros plantilla no puede tener un argumento por defecto" -#: cp/parser.c:21704 +#: cp/parser.c:21701 #, gcc-internal-format msgid "parameter pack cannot have a default argument" msgstr "el paquete de parámetros no puede tener un argumento por defecto" -#: cp/parser.c:22131 +#: cp/parser.c:22128 #, fuzzy, gcc-internal-format #| msgid "extended initializer lists only available with -std=c++11 or -std=gnu++11" msgid "C++ designated initializers only available with -std=c++2a or -std=gnu++2a" msgstr "las listas de inicializador extendidas sólo está disponibles con -std=c++11 o -std=gnu++11" -#: cp/parser.c:22151 +#: cp/parser.c:22148 #, fuzzy, gcc-internal-format #| msgid "ISO C++ does not allow designated initializers" msgid "ISO C++ does not allow GNU designated initializers" msgstr "ISO C++ no permite inicializadores designados" -#: cp/parser.c:22189 +#: cp/parser.c:22186 #, gcc-internal-format msgid "ISO C++ does not allow C99 designated initializers" msgstr "ISO C++ no permite inicializadores designados de C99" -#: cp/parser.c:22203 +#: cp/parser.c:22200 #, gcc-internal-format msgid "either all initializer clauses should be designated or none of them should be" msgstr "" -#: cp/parser.c:22228 +#: cp/parser.c:22225 #, fuzzy, gcc-internal-format #| msgid "ISO C++ does not allow designated initializers" msgid "%<...%> not allowed in designated initializer list" msgstr "ISO C++ no permite inicializadores designados" -#: cp/parser.c:22266 +#: cp/parser.c:22263 #, gcc-internal-format msgid "%<.%s%> designator used multiple times in the same initializer list" msgstr "" -#: cp/parser.c:22322 cp/parser.c:22448 +#: cp/parser.c:22319 cp/parser.c:22445 #, gcc-internal-format msgid "expected class-name" msgstr "se esperaba un nombre de clase" -#: cp/parser.c:22650 +#: cp/parser.c:22647 #, gcc-internal-format msgid "expected %<;%> after class definition" msgstr "se esperaba %<;%> después de la definición de clase" -#: cp/parser.c:22653 +#: cp/parser.c:22650 #, gcc-internal-format msgid "expected %<;%> after struct definition" msgstr "se esperaba %<;%> después de la definición de struct" -#: cp/parser.c:22656 +#: cp/parser.c:22653 #, gcc-internal-format msgid "expected %<;%> after union definition" msgstr "se esperaba %<;%> después de la definición de union" -#: cp/parser.c:23012 +#: cp/parser.c:23009 #, gcc-internal-format msgid "expected %<{%> or %<:%>" msgstr "se esperaba %<{%> o %<:%>" -#: cp/parser.c:23023 +#: cp/parser.c:23020 #, gcc-internal-format msgid "cannot specify % for a class" msgstr "no se puede especificar % para una clase" -#: cp/parser.c:23031 +#: cp/parser.c:23028 #, gcc-internal-format msgid "global qualification of class name is invalid" msgstr "la calificación global del nombre de clase es no válida" -#: cp/parser.c:23038 +#: cp/parser.c:23035 #, gcc-internal-format msgid "qualified name does not name a class" msgstr "el nombre calificado no nombra una clase" -#: cp/parser.c:23050 +#: cp/parser.c:23047 #, fuzzy, gcc-internal-format #| msgid "keyword % not allowed outside of templates" msgid "keyword % not allowed in class-head-name" msgstr "no se permite la palabra clave % fuera de las plantillas" -#: cp/parser.c:23056 +#: cp/parser.c:23053 #, gcc-internal-format msgid "invalid class name in declaration of %qD" msgstr "nombre de clase no válido en la declaración de %qD" -#: cp/parser.c:23114 +#: cp/parser.c:23111 #, gcc-internal-format msgid "an explicit specialization must be preceded by %