# Translation of cpplib to Esperanto
# Copyright (C) 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Free Software Foundation, Inc.
# This file is distributed under the same license as the gcc package.
# Felipe Castro <fefcas@gmail.com>, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 11.1-b20210207\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2021-02-05 21:38+0000\n"
"PO-Revision-Date: 2021-03-07 10:29-0300\n"
"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
"Language: eo\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"X-Generator: Poedit 2.4.2\n"

#: charset.c:677
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "konverto de %s al %s ne estas subtenata de iconv"

#: charset.c:680
msgid "iconv_open"
msgstr "iconv_open"

#: charset.c:688
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "neniu realigo de iconv, ne eblas konverti de %s al %s"

#: charset.c:784
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "la signo 0x%lx ne estas en la baza fonta signaro\n"

#: charset.c:801 charset.c:1771
msgid "converting to execution character set"
msgstr "konverto al plenumiga signaro"

#: charset.c:807
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "la signo 0x%lx ne estas unubajta en plenumiga signaro"

#: charset.c:1057
msgid "universal character names are only valid in C++ and C99"
msgstr "universalaj signo-nomoj nur validas en C++ kaj C99"

#: charset.c:1061
msgid "C99's universal character names are incompatible with C90"
msgstr "Universalaj signo-nomoj de C99 ne interakordas kun C90"

#: charset.c:1064
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "la signifo de '\\%c' estas malsama en tradicia C"

#: charset.c:1073
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "En _cpp_valid_ucn sed ne estas UCN"

#: charset.c:1106
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "nekompleta universala signo-nomo %.*s"

#: charset.c:1121
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "%.*s ne estas valida universala signo"

#: charset.c:1131 lex.c:1335
msgid "'$' in identifier or number"
msgstr "'$' en identiganto aŭ numero"

#: charset.c:1141
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "la universala signo %.*s ne estas valida en identiganto"

#: charset.c:1145
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "la universala signo %.*s ne estas valida en komenco de identiganto"

#: charset.c:1152
#, c-format
msgid "%.*s is outside the UCS codespace"
msgstr "%.*s estas for de kodspaco UCS"

#: charset.c:1197 charset.c:2116
msgid "converting UCN to source character set"
msgstr "konverto de UCN al la fonta signaro"

#: charset.c:1204
msgid "converting UCN to execution character set"
msgstr "konverto de UCN al la plenumiga signaro"

#: charset.c:1268
#, c-format
msgid "extended character %.*s is not valid in an identifier"
msgstr "etendita signo %.*s ne estas valida en identiganto"

#: charset.c:1285
#, c-format
msgid "extended character %.*s is not valid at the start of an identifier"
msgstr "etendita signo %.*s ne estas valida en komenco de identiganto"

#: charset.c:1371
msgid "the meaning of '\\x' is different in traditional C"
msgstr "la signifo de '\\x' estas malsama en tradicia C"

#: charset.c:1396
msgid "\\x used with no following hex digits"
msgstr "\\x estis uzata kun la jenaj deksesumaj ciferoj"

#: charset.c:1403
msgid "hex escape sequence out of range"
msgstr "deksesuma eskapa sekvo estas for de intervalo"

#: charset.c:1455
msgid "octal escape sequence out of range"
msgstr "okuma eskapa sekvo estas for de intervalo"

#: charset.c:1537
msgid "the meaning of '\\a' is different in traditional C"
msgstr "la signifo de '\\a' estas malsama en tradicia C"

#: charset.c:1544
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "ne-ISO-norma eskapa sekvo, '\\%c'"

#: charset.c:1552
#, c-format
msgid "unknown escape sequence: '\\%c'"
msgstr "nekonata eskapa sekvo: '\\%c'"

#: charset.c:1560
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "nekonata eskapa sekvo: '\\%s'"

#: charset.c:1568
msgid "converting escape sequence to execution character set"
msgstr "konverto de eskapa sekvo al plenumiga signaro"

#: charset.c:1708
msgid "missing open quote"
msgstr "mankas komenca citilo"

#: charset.c:1926 charset.c:2005
msgid "character constant too long for its type"
msgstr "signa konstanto tro longas por ties tipo"

#: charset.c:1929
msgid "multi-character character constant"
msgstr "plursigna signa konstanto"

#: charset.c:2045
msgid "empty character constant"
msgstr "malplena signa konstanto"

#: charset.c:2163
#, c-format
msgid "failure to convert %s to %s"
msgstr "problemo por konverti %s al %s"

#: directives.c:229 directives.c:272
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "kromaj ĵetonoj ĉe la fino de la direktivo #%s"

#: directives.c:379
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s estas aldono de GCC"

#: directives.c:384
#, c-format
msgid "#%s is a deprecated GCC extension"
msgstr "#%s estas evitinda aldono de GCC"

#: directives.c:397
msgid "suggest not using #elif in traditional C"
msgstr "sugesti ne uzi #elif en tradicia C"

#: directives.c:400
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "tradicia C preteratentas #%s kun la # krommarĝenita"

#: directives.c:404
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "sugesti kaŝi #%s el tradicia C per krommarĝenigo de #"

#: directives.c:430
msgid "embedding a directive within macro arguments is not portable"
msgstr "enkorpigi direktivon ene de makroaj argumentoj ne estas portebla"

#: directives.c:450
msgid "style of line directive is a GCC extension"
msgstr "stilo de lini-direktivoj estas aldono de GCC"

#: directives.c:531
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "malvalida antaŭproceza direktivo #%s"

#: directives.c:601
#, c-format
msgid "\"%s\" cannot be used as a macro name"
msgstr "\"%s\" ne povas estis uzata kiel makroa nomo"

#: directives.c:608
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "\"%s\" ne povas esti uzata kiel makroa nomo ĉar ĝi estas operatoro en C++"

#: directives.c:611
#, c-format
msgid "no macro name given in #%s directive"
msgstr "neniu makroa nomo estas indikita en la direktivo #%s"

#: directives.c:614
msgid "macro names must be identifiers"
msgstr "makroaj nomoj devas esti identigantoj"

#: directives.c:663 directives.c:668
#, c-format
msgid "undefining \"%s\""
msgstr "ni maldifinas \"%s\""

#: directives.c:725
msgid "missing terminating > character"
msgstr "mankas finiganta signo >"

#: directives.c:784
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s atendas \"DOSIERNOMO\" aŭ <DOSIERNOMO>"

#: directives.c:830
#, c-format
msgid "empty filename in #%s"
msgstr "malplena dosiernomo en #%s"

#: directives.c:839
#, c-format
msgid "#include nested depth %u exceeds maximum of %u (use -fmax-include-depth=DEPTH to increase the maximum)"
msgstr "nestita profundo %u de #include superas maksimumon %u (uzu -fmax-include-depth=PROFUNDO por pligrandigi la maksimumon)"

#: directives.c:884
msgid "#include_next in primary source file"
msgstr "#include_next en ĉefa fonta dosiero"

#: directives.c:910
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "malvalida flago \"%s\" en lini-direktivo"

#: directives.c:970
msgid "unexpected end of file after #line"
msgstr "neatendita dosierfino post #line"

#: directives.c:973
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "\"%s\" post #line ne estas pozitiva entjero"

#: directives.c:979 directives.c:981
msgid "line number out of range"
msgstr "lininumero estas for de intervalo"

#: directives.c:994 directives.c:1075
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" ne estas valida dosiernomo"

#: directives.c:1035
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "\"%s\" post # ne estas pozitiva entjero"

#: directives.c:1102
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr "linimarkilo de dosiero \"%s\" estis preteratentata pro malkorekta nesto"

#: directives.c:1180 directives.c:1182 directives.c:1184 directives.c:1772
#, c-format
msgid "%s"
msgstr "%s"

#: directives.c:1208
#, c-format
msgid "invalid #%s directive"
msgstr "malvalida direktivo #%s"

#: directives.c:1271
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "registro de pragma en nomspaco \"%s\" kun nekongrua nom-disvolviĝo"

#: directives.c:1280
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "registro de pragma \"%s\" kun nom-disvolviĝo kaj sen nomspaco"

#: directives.c:1298
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "registro de \"%s\" kaj kiel pragma kaj kiel pragma-nomspaco"

#: directives.c:1301
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s jam estas registrita"

#: directives.c:1304
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s jam estas registrita"

#: directives.c:1334
msgid "registering pragma with NULL handler"
msgstr "registro de pragma kun traktilo de NULL"

#: directives.c:1551
msgid "#pragma once in main file"
msgstr "#pragma unufoje en ĉefdosiero"

#: directives.c:1574
msgid "invalid #pragma push_macro directive"
msgstr "malvalida direktivo #pragma push_macro"

#: directives.c:1631
msgid "invalid #pragma pop_macro directive"
msgstr "malvalida direktivo #pragma pop_macro"

#: directives.c:1686
msgid "invalid #pragma GCC poison directive"
msgstr "malvalida direktivo #pragma GCC poison"

#: directives.c:1695
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "venenigo de ekzistanta makroo \"%s\""

#: directives.c:1714
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header estis preteratentata for de inkluziv-dosiero"

#: directives.c:1739
#, c-format
msgid "cannot find source file %s"
msgstr "ne eblas trovi la fontan dosieron %s"

#: directives.c:1743
#, c-format
msgid "current file is older than %s"
msgstr "nuna dosiero estas pli malnova ol %s"

#: directives.c:1767
#, c-format
msgid "invalid \"#pragma GCC %s\" directive"
msgstr "malvalida direktivo \"#pragma GCC %s\""

#: directives.c:1968
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma prenas kurbkrampitan ĉenan literaĵon"

#: directives.c:2051
msgid "#else without #if"
msgstr "#else sen #if"

#: directives.c:2056
msgid "#else after #else"
msgstr "#else post #else"

#: directives.c:2058 directives.c:2091
msgid "the conditional began here"
msgstr "la kondiĉo komencis ĉi tie"

#: directives.c:2084
msgid "#elif without #if"
msgstr "#elif sen #if"

#: directives.c:2089
msgid "#elif after #else"
msgstr "#elif post #else"

#: directives.c:2120
msgid "#endif without #if"
msgstr "#endif sen #if"

#: directives.c:2196
msgid "missing '(' after predicate"
msgstr "mankas '(' post predikato"

#: directives.c:2214
msgid "missing ')' to complete answer"
msgstr "mankas ')' por kompletigi respondon"

#: directives.c:2226
msgid "predicate's answer is empty"
msgstr "respondo de predikato estas malplena"

#: directives.c:2256
msgid "assertion without predicate"
msgstr "aserto sen predikato"

#: directives.c:2259
msgid "predicate must be an identifier"
msgstr "predikato devas esti identiganto"

#: directives.c:2341
#, c-format
msgid "\"%s\" re-asserted"
msgstr "\"%s\" estas re-asertita"

#: directives.c:2659
#, c-format
msgid "unterminated #%s"
msgstr "nefinigita #%s"

#: errors.c:291
#, c-format
msgid "%s: %s"
msgstr "%s: %s"

#: errors.c:304
msgid "stdout"
msgstr "ĉefeligujo"

#: expr.c:636 expr.c:753
msgid "fixed-point constants are a GCC extension"
msgstr "fisk-komaj konstantoj estas aldono de GCC"

#: expr.c:661
msgid "invalid prefix \"0b\" for floating constant"
msgstr "malvalida prefikso \"0b\" por glitkoma konstanto"

#: expr.c:674
msgid "use of C++17 hexadecimal floating constant"
msgstr "uzo de deksesuma glitkoma konstanto de C++17"

#: expr.c:677
msgid "use of C99 hexadecimal floating constant"
msgstr "uzo de deksesuma glitkoma konstanto de C99"

#: expr.c:721
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "malvalida sufikso \"%.*s\" en glitkoma konstanto"

#: expr.c:732 expr.c:799
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "tradicia C rifuzas la sufikson \"%.*s\""

#: expr.c:740
msgid "suffix for double constant is a GCC extension"
msgstr "sufikso por duobla konstanto estas aldono de GCC"

#: expr.c:746
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "malvalida sufikso \"%.*s\" kun deksesuma glitkoma konstanto"

#: expr.c:759 expr.c:763
msgid "decimal float constants are a C2X feature"
msgstr "dekumaj glitkomaj konstantoj estas apartaĵo de C2X"

#: expr.c:782
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "malvalida sufikso \"%.*s\" en entjera konstanto"

#: expr.c:807
msgid "use of C++11 long long integer constant"
msgstr "uzo de konstanto C++11 long long integer"

#: expr.c:808
msgid "use of C99 long long integer constant"
msgstr "uzo de konstanto de C99 long long integer"

#: expr.c:822
msgid "use of C++23 %<size_t%> integer constant"
msgstr "uzo de konstanto C++23 %<size_t%> integer"

#: expr.c:823
msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
msgstr "uzo de konstanto C++23 %<make_signed_t<size_t>%> integer"

#: expr.c:834
msgid "imaginary constants are a GCC extension"
msgstr "imaginaraj konstantoj estas aldono de GCC"

#: expr.c:841
msgid "binary constants are a C++14 feature or GCC extension"
msgstr "duumaj konstantoj estas apartaĵo de C++14 aŭ aldono de GCC"

#: expr.c:843
msgid "binary constants are a C2X feature or GCC extension"
msgstr "duumaj konstantoj estas apartaĵo de C2X aŭ aldono de GCC"

#: expr.c:848
msgid "binary constants are a C2X feature"
msgstr "duumaj konstantoj estas apartaĵo de C2X"

#: expr.c:944
msgid "integer constant is too large for its type"
msgstr "entjera konstanto tro larĝas pro ties tipo"

#: expr.c:975
msgid "integer constant is so large that it is unsigned"
msgstr "entjera konstanto estas tiom larĝa ke ĝi estas sen-signuma"

#: expr.c:1070
msgid "missing ')' after \"defined\""
msgstr "mankas ')' post \"defined\""

#: expr.c:1077
msgid "operator \"defined\" requires an identifier"
msgstr "la operatoro \"defined\" postulas identiganton"

#: expr.c:1085
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(\"%s\" estas alternativa ĵetono por \"%s\" en C++)"

#: expr.c:1098
msgid "this use of \"defined\" may not be portable"
msgstr "tiu ĉi uzo de \"defined\" eble ne estas portebla"

#: expr.c:1143
msgid "user-defined literal in preprocessor expression"
msgstr "uzant-difinita literaĵo en antaŭproceza esprimo"

#: expr.c:1148
msgid "floating constant in preprocessor expression"
msgstr "glitkoma konstanto en antaŭproceza esprimo"

#: expr.c:1154
msgid "imaginary number in preprocessor expression"
msgstr "imaginara numero en antaŭproceza esprimo"

#: expr.c:1203
#, c-format
msgid "\"%s\" is not defined, evaluates to 0"
msgstr "\"%s\" ne estas difinita, rezultas al 0"

#: expr.c:1216
msgid "assertions are a GCC extension"
msgstr "asertoj estas aldono de GCC"

#: expr.c:1219
msgid "assertions are a deprecated extension"
msgstr "asertoj estas evitinda aldono"

#: expr.c:1465
#, c-format
msgid "unbalanced stack in %s"
msgstr "neekvilibrita stako en %s"

#: expr.c:1485
#, c-format
msgid "impossible operator '%u'"
msgstr "neebla operatoro '%u'"

#: expr.c:1586
msgid "missing ')' in expression"
msgstr "mankas ')' en esprimo"

#: expr.c:1615
msgid "'?' without following ':'"
msgstr "'?' sen sekvanta ':'"

#: expr.c:1625
msgid "integer overflow in preprocessor expression"
msgstr "entjera troigo en antaŭproceza esprimo"

#: expr.c:1630
msgid "missing '(' in expression"
msgstr "mankas '(' en esprimo"

#: expr.c:1662
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "la maldekstra operaciato de \"%s\" ŝanĝas signumon kiam promociita"

#: expr.c:1667
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "la dekstra operaciato de \"%s\" ŝanĝas signumon kiam promociita"

#: expr.c:1926
msgid "traditional C rejects the unary plus operator"
msgstr "tradicia C rifuzas la unuloka plusan operatoron"

#: expr.c:2024
msgid "comma operator in operand of #if"
msgstr "koma operatoro en operaciado de #if"

#: expr.c:2160
msgid "division by zero in #if"
msgstr "divido per nulo en #if"

#: files.c:571
msgid "one or more PCH files were found, but they were invalid"
msgstr "unu aŭ pli dosieroj PCH estis trovataj, sed ili estas malvalidaj"

#: files.c:575
msgid "use -Winvalid-pch for more information"
msgstr "uzu -Winvalid-pch por pli da informo"

#: files.c:1051
#, c-format
msgid "no include path in which to search for %s"
msgstr "estas neniu inkluziva vojo por serĉi %s"

#: files.c:1546
msgid "Multiple include guards may be useful for:\n"
msgstr "Multoblaj inkluzivaj gardnodoj povas esti utilaj por:\n"

#: init.c:614
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t devas esti sensignuma tipo"

#: init.c:618
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "antaŭproceza aritmetiko havas maksimuman precizecon de %lu bitoj; la celo postulas %lu bitojn"

#: init.c:625
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "Aritmetiko de CPP devas esti minimue tiel preciza kiel la celata int"

#: init.c:628
msgid "target char is less than 8 bits wide"
msgstr "la celata char estas pli eta ol 8 bitoj"

#: init.c:632
msgid "target wchar_t is narrower than target char"
msgstr "la celata wchar_t estas pli mallarĝa ol la celata char"

#: init.c:636
msgid "target int is narrower than target char"
msgstr "la celata int estas pli mallarĝa ol la celata char"

#: init.c:641
msgid "CPP half-integer narrower than CPP character"
msgstr "Duon-entjero de CPP estas pli mallarĝa ol la signo de CPP"

#: init.c:645
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP en tiu ĉi komputilo ne povas trakti larĝ-signajn konstantoj plilarĝaj ol %lu bitoj, sed la celato postulas %lu bitojn"

#: lex.c:1126
msgid "backslash and newline separated by space"
msgstr "retroklino kaj novlinio apartitaj de spaco"

#: lex.c:1131
msgid "backslash-newline at end of file"
msgstr "retroklino-novlinio ĉe dosierfino"

#: lex.c:1147
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "trigrafikaĵo ??%c konvertita al %c"

#: lex.c:1155
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "trigrafikaĵo ??%c preteratentita, uzu -trigraphs por ebligi"

#: lex.c:1204
msgid "\"/*\" within comment"
msgstr "\"/*\" ene de komento"

#: lex.c:1262
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s en antaŭproceza direktivo"

#: lex.c:1271
msgid "null character(s) ignored"
msgstr "nul-signo(j) estas preteratentitaj"

#: lex.c:1308
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr "'%.*s' ne estas en NFKC"

#: lex.c:1311
#, c-format
msgid "`%.*s' is not in NFC"
msgstr "'%.*s' ne estas en NFC"

#: lex.c:1375
msgid "__VA_OPT__ is not available until C++20"
msgstr "__VA_OPT__ ne disponeblas ĝis C++20"

#: lex.c:1382
msgid "__VA_OPT__ can only appear in the expansion of a C++20 variadic macro"
msgstr "__VA_OPT__ nur povas aperi en la disvolviĝo de variebl-argumenta makroo de C++20"

#: lex.c:1413 lex.c:1506
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "provo uzi venenitan \"%s\""

#: lex.c:1423 lex.c:1516
msgid "__VA_ARGS__ can only appear in the expansion of a C++11 variadic macro"
msgstr "__VA_ARGS__ nur povas aperi en la disvolviĝo de variebl-argumenta makroo de C++11"

#: lex.c:1427 lex.c:1520
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ nur povas aperi en la disvolviĝo de variebl-argumenta makroo de C99"

#: lex.c:1437 lex.c:1532
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr "la identiganto \"%s\" estas speciala operator-nomo en C++"

#: lex.c:1879
msgid "raw string delimiter longer than 16 characters"
msgstr "kruda ĉen-apartigilo pli longas ol 16 signoj"

#: lex.c:1883
msgid "invalid new-line in raw string delimiter"
msgstr "malvalida nov-linio en kruda ĉen-apartigilo"

#: lex.c:1887 lex.c:4639
#, c-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "malvalida signo '%c' en kruda ĉen-apartigilo"

#: lex.c:1926 lex.c:1949
msgid "unterminated raw string"
msgstr "nefinigita kruda ĉeno"

#: lex.c:1971 lex.c:2100
msgid "invalid suffix on literal; C++11 requires a space between literal and string macro"
msgstr "malvalida sufikso en literaĵo; C++11 postulas spacon inter literaĵo kaj ĉena makroo"

#: lex.c:2083
msgid "null character(s) preserved in literal"
msgstr "nul-signo(j) tenitaj en literaĵo"

#: lex.c:2086
#, c-format
msgid "missing terminating %c character"
msgstr "mankas finigantan signon %c"

#: lex.c:2118
msgid "C++11 requires a space between string literal and macro"
msgstr "C++11 postulas spacon inter ĉena literaĵo kaj makroo"

#: lex.c:2711
msgid "module control-line cannot be in included file"
msgstr "modula kontrol-linio ne povas aperi en inkludita dosiero"

#: lex.c:2725
#, c-format
msgid "module control-line \"%s\" cannot be an object-like macro"
msgstr "la modula kontrol-linio %s ne povas esti objekteca makroo"

#: lex.c:3099 lex.c:4472 traditional.c:174
msgid "unterminated comment"
msgstr "nefinigita komento"

#: lex.c:3113 lex.c:3147
msgid "C++ style comments are not allowed in ISO C90"
msgstr "Komentoj laŭ estilo de C++ ne estas permesataj en ISO C90"

#: lex.c:3115 lex.c:3126 lex.c:3150
msgid "(this will be reported only once per input file)"
msgstr "(tio ĉi estos raportata nur po unu foje por ĉiu enigdosiero)"

#: lex.c:3124
msgid "C++ style comments are incompatible with C90"
msgstr "Komentoj laŭ estilo de C++ ne interakordas kun C90"

#: lex.c:3156
msgid "multi-line comment"
msgstr "plurlinia komento"

#: lex.c:3550
#, c-format
msgid "unspellable token %s"
msgstr "neliterumebla ĵetono %s"

#: lex.c:4627
#, c-format
msgid "raw string delimiter longer than %d characters"
msgstr "kruda ĉen-apartigilo pli longas ol %d signoj"

#: lex.c:4697
msgid "unterminated literal"
msgstr "nefinigita literaĵo"

#: macro.c:94
msgid "'##' cannot appear at either end of __VA_OPT__"
msgstr "'##' ne povas aperi ĉe iu ajn flanko de __VA_OPT__"

#: macro.c:386
#, c-format
msgid "\"%s\" used outside of preprocessing directive"
msgstr "\"%s\" uzata for de antaŭproceza direktivo"

#: macro.c:396
#, c-format
msgid "missing '(' before \"%s\" operand"
msgstr "mankas '(' antaŭ operaciato \"%s\""

#: macro.c:411
#, c-format
msgid "operator \"%s\" requires a header-name"
msgstr "la operatoro \"%s\" postulas kap-nomon"

#: macro.c:428
#, c-format
msgid "missing ')' after \"%s\" operand"
msgstr "mankas ')' post operaciato \"%s\""

#: macro.c:448
#, c-format
msgid "macro \"%s\" is not used"
msgstr "makroo \"%s\" ne estas uzata"

#: macro.c:487 macro.c:778
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "malvalida enkonstruita makroo \"%s\""

#: macro.c:494 macro.c:596
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr "la makroo \"%s\" povos malebligi reprodukteblajn konstruojn"

#: macro.c:525
msgid "could not determine file timestamp"
msgstr "ne eblis determini la dosieran tempomarkon"

#: macro.c:610
msgid "could not determine date and time"
msgstr "ne eblis determini la daton kaj horon"

#: macro.c:642
msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgstr "__COUNTER__ estas etendigata interne de direktivo per -fdirectives-only"

#: macro.c:897
msgid "invalid string literal, ignoring final '\\'"
msgstr "malvalida ĉena literaĵo, ni preterpasas finan '\\'"

#: macro.c:959
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "algluo de \"%s\" kaj \"%s\" ne rezultas en valida antaŭproceza ĵetono"

#: macro.c:1085
msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C++11 postulas minimume unu argumenton por la \"...\" en variebl-argumenta makroo"

#: macro.c:1089
msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C99 postulas minimume unu argumenton por la \"...\" en variebl-argumenta makroo"

#: macro.c:1096
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "la makroo \"%s\" postulas %u argumentojn, sed nur %u estis indikataj"

#: macro.c:1101
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "la makroo \"%s\" pasis %u argumentojn, sed ĝi prenas nur %u"

#: macro.c:1299 traditional.c:822
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "nefinigita argumentlisto alvokanta la makroon \"%s\""

#: macro.c:1442
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "funkci-simila makroo \"%s\" devas esti uzata kun argumentoj laŭ tradicia C"

#: macro.c:2220
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C++98"
msgstr "alvoko de makroo %s, argumento %d: malplenaj makro-argumentoj estas nedifinitaj en ISO C++98"

#: macro.c:2228 macro.c:2237
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
msgstr "alvoko de makroo %s, argumento %d: malplenaj makro-argumentoj estas nedifinitaj en ISO C90"

#: macro.c:3279
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "duobligata makro-parametro \"%s\""

#: macro.c:3361
#, c-format
msgid "expected parameter name, found \"%s\""
msgstr "atendinte parametran nomon, ni trovis \"%s\""

#: macro.c:3362
#, c-format
msgid "expected ',' or ')', found \"%s\""
msgstr "atendinte ',' aŭ ')', ni trovis \"%s\""

#: macro.c:3363
msgid "expected parameter name before end of line"
msgstr "ni atendis parametran nomon antaŭ lini-fino"

#: macro.c:3364
msgid "expected ')' before end of line"
msgstr "ni atendis ')' antaŭ lini-fino"

#: macro.c:3365
msgid "expected ')' after \"...\""
msgstr "ni atendis ')' post \"...\""

#: macro.c:3422
msgid "anonymous variadic macros were introduced in C++11"
msgstr "sennomaj variebl-argumentaj makrooj estis enkondukataj en C++11"

#: macro.c:3423 macro.c:3427
msgid "anonymous variadic macros were introduced in C99"
msgstr "sennomaj variebl-argumentaj makrooj estis enkondukataj en C99"

#: macro.c:3433
msgid "ISO C++ does not permit named variadic macros"
msgstr "ISO C++ ne permesas nomitajn variebl-argumentajn makroojn"

#: macro.c:3434
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C ne permesas nomitajn variebl-argumentajn makroojn"

#: macro.c:3480
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' ne povas aperi ĉe iu ajn flanko de makroa disvolviĝo"

#: macro.c:3518
msgid "ISO C++11 requires whitespace after the macro name"
msgstr "ISO C++11 postulas blankspacon post la makroa nomo"

#: macro.c:3519
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 postulas blankspacon post la makroa nomo"

#: macro.c:3543
msgid "missing whitespace after the macro name"
msgstr "mankas blankspacon post la makroa nomo"

#: macro.c:3593
msgid "'#' is not followed by a macro parameter"
msgstr "'#' ne estas sekvata de makroa parametro"

#: macro.c:3749
#, c-format
msgid "\"%s\" redefined"
msgstr "\"%s\" estas redifinita"

#: macro.c:3754
msgid "this is the location of the previous definition"
msgstr "tiu ĉi estas la loko de la antaŭa difino"

#: macro.c:3891
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "makroa argumento \"%s\" devus esti ĉenigita laŭ tradicia C"

#: pch.c:90 pch.c:342 pch.c:356 pch.c:374 pch.c:380 pch.c:389 pch.c:396
msgid "while writing precompiled header"
msgstr "dum skribo de antaŭkompilita kapo"

#: pch.c:616
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s: ne uzata ĉar '%.*s' estas venenita"

#: pch.c:638
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s: ne uzata ĉar '%.*s' ne estas difinita"

#: pch.c:650
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s: ne uzata ĉar '%.*s' estas difinita kiel '%s', ne '%.*s'"

#: pch.c:691
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s: ne uzata ĉar '%s' estas difinita"

#: pch.c:711
#, c-format
msgid "%s: not used because `__COUNTER__' is invalid"
msgstr "%s: ne uzata ĉar '__COUNTER__' estas malvalida"

#: pch.c:720 pch.c:876
msgid "while reading precompiled header"
msgstr "dum lego de antaŭkompilita kapo"

#: traditional.c:891
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "estis detektata rekursigo dum etendigo de la makroo \"%s\""

#: traditional.c:1114
msgid "syntax error in macro parameter list"
msgstr "sintaksa eraro en makroa parametro-listo"

#~ msgid "binary constants are a GCC extension"
#~ msgstr "duumaj konstantoj estas aldono de GCC"

#~ msgid "\"__has_include__\" cannot be used as a macro name"
#~ msgstr "\"__has_include__\" ne povas estis uzata kiel makroa nomo"

#~ msgid "#include nested too deeply"
#~ msgstr "#include estas ingita tro profunde"

#~ msgid "missing ')' after \"__has_include__\""
#~ msgstr "mankas ')' post \"__has_include__\""

#~ msgid "\"%s\" may not appear in macro parameter list"
#~ msgstr "\"%s\" ne povas aperi en makroa parametro-listo"

#~ msgid "macro parameters must be comma-separated"
#~ msgstr "makro-parametroj devas esti apartitaj per komoj"

#~ msgid "parameter name missing"
#~ msgstr "mankas parametra nomo"

#~ msgid "missing ')' in macro parameter list"
#~ msgstr "mankas ')' en makroa parametro-listo"

#~ msgid "invalid hash type %d in cpp_macro_definition"
#~ msgstr "malvalida haketa tipo %d en cpp_macro_definition"

#~ msgid "NULL directory in find_file"
#~ msgstr "NULL-dosierujo en find_file"

#~ msgid "%s is a block device"
#~ msgstr "%s estas blok-aparato"

#~ msgid "%s is too large"
#~ msgstr "%s tro larĝas"

#~ msgid "%s is shorter than expected"
#~ msgstr "%s estas pli mallonga ol atendite"

#~ msgid "Character %x might not be NFKC"
#~ msgstr "La signo %x povas ne esti NFKC"

#~ msgid "too many decimal points in number"
#~ msgstr "tro multaj frakciaj ciferoj en numero"

#~ msgid "invalid digit \"%c\" in binary constant"
#~ msgstr "malvalida cifero \"%c\" en duuma konstanto"

#~ msgid "invalid digit \"%c\" in octal constant"
#~ msgstr "malvalida cifero \"%c\" en okuma konstanto"

#~ msgid "no digits in hexadecimal floating constant"
#~ msgstr "neniu cifero en deksesuma glitkoma konstanto"

#~ msgid "exponent has no digits"
#~ msgstr "eksponento ne havas ciferojn"

#~ msgid "hexadecimal floating constants require an exponent"
#~ msgstr "deksesumaj glitkomaj konstantoj postulas eksponenton"

#~ msgid "missing binary operator before token \"%s\""
#~ msgstr "mankas duuma operatoro antaŭ la ĵetono \"%s\""

#~ msgid "token \"%s\" is not valid in preprocessor expressions"
#~ msgstr "la ĵetono \"%s\" ne estas valida en antaŭprocezaj esprimoj"

#~ msgid "missing expression between '(' and ')'"
#~ msgstr "mankas esprimo inter '(' kaj ')'"

#~ msgid "%s with no expression"
#~ msgstr "%s sen iu ajn esprimo"

#~ msgid "operator '%s' has no right operand"
#~ msgstr "la operatoro '%s' havas neniun desktran operaciaton"

#~ msgid "operator '%s' has no left operand"
#~ msgstr "la operatoro '%s' havas neniun maldesktran operaciaton"

#~ msgid " ':' without preceding '?'"
#~ msgstr " ':' sen antaŭanta '?'"
