# Finnish messages for cpplib.
# Copyright © 2010, 2012, 2013, 2014, 2015, 2016 Free Software Foundation, Inc.
# This file is distributed under the same license as the gcc package.
# Jorma Karvonen <karvonen.jorma@gmail.com>, 2010, 2012-2015.
# Lauri Nurmi <lanurmi@iki.fi>, 2016.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 7.1-b20170101\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
"POT-Creation-Date: 2017-01-01 00:51+0000\n"
"PO-Revision-Date: 2017-01-04 02:11+0200\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"Language: fi\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"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.8.11\n"

#: charset.c:674
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "iconv ei tue muunnosta %s -> %s"

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

#: charset.c:685
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "ei iconv-toteutusta, muunnosta %s -> %s ei voida suorittaa"

#: charset.c:781
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "merkki 0x%lx ei ole peruslähdemerkistössä\n"

#: charset.c:798 charset.c:1677
msgid "converting to execution character set"
msgstr "muunnetaan suoritusmerkistöön"

#: charset.c:804
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "merkki 0x%lx ei ole yksitavuinen suoritusmerkistössä"

#: charset.c:1047
msgid "universal character names are only valid in C++ and C99"
msgstr "universaalit merkkinimet ovat kelvollisia vai C++:ssa ja C99:ssä"

#: charset.c:1051
msgid "C99's universal character names are incompatible with C90"
msgstr "C99:n universaalit merkkinimet ovat epäyhteensopivia C90:n kanssa"

#: charset.c:1054
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "’\\%c’:lla on eri merkitys perinteisessä C:ssä"

#  UCN tarkoittaa Universal Character Names ja se sallii minkä tahansa kirjaimen käyttämisen C-lähdekielessä, ei vain englanninkielen kirjainten käytön. Merkki voidaan ilmaista joko kenoviivalla, sitä seuraavalla pienellä u-kirjaimella ja nelinumeroisella heksadesimaaliluvulla tai kenoviivaa seuraavalla suurella U-kirjaimella ja kahdeksannumeroisella heksadesimaaliluvulla.
#: charset.c:1063
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "Funktiossa _cpp_valid_ucn mutta ei ole UCN"

#: charset.c:1096
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "vaillinainen universaali merkkinimi %.*s"

#: charset.c:1111
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "%.*s ei ole kelvollinen universaali merkki"

#: charset.c:1121 lex.c:1333
msgid "'$' in identifier or number"
msgstr "’$’ tunnisteessa tai lukuarvossa"

#: charset.c:1131
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "universaali merkki %.*s ei ole kelvollinen tunniste"

#: charset.c:1135
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "universaali merkki %.*s ei ole kelvollinen tunnisteen alussa"

#: charset.c:1181 charset.c:2000
msgid "converting UCN to source character set"
msgstr "muunnetaan UCN lähdemerkistöön"

#: charset.c:1188
msgid "converting UCN to execution character set"
msgstr "muunnetaan UCN suoritusmerkistöön"

#: charset.c:1277
msgid "the meaning of '\\x' is different in traditional C"
msgstr "’\\%x’:lla on eri merkitys perinteisessä C:ssä"

#: charset.c:1302
msgid "\\x used with no following hex digits"
msgstr "\\x:ää käytetty ilman seuraavia heksanumeroita"

#: charset.c:1309
msgid "hex escape sequence out of range"
msgstr "heksadesimaalinen ohjaussarja sallitun välin ulkopuolella"

#: charset.c:1361
msgid "octal escape sequence out of range"
msgstr "oktaalinen ohjaussarja sallitun välin ulkopuolella"

#: charset.c:1443
msgid "the meaning of '\\a' is different in traditional C"
msgstr "’\\a’:lla on eri merkitys perinteisessä C:ssä"

#: charset.c:1450
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "ISO-standardiin kuulumaton ohjaussarja ’\\%c’"

#: charset.c:1458
#, c-format
msgid "unknown escape sequence: '\\%c'"
msgstr "tuntematon ohjaussarja ’\\%c’"

#: charset.c:1466
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "tuntematon ohjaussarja ’\\%s’"

#: charset.c:1474
msgid "converting escape sequence to execution character set"
msgstr "muunnetaan ohjaussarja suoritusmerkistöön"

#: charset.c:1614
msgid "missing open quote"
msgstr "avautuva sulje puuttuu"

#: charset.c:1827 charset.c:1891
msgid "character constant too long for its type"
msgstr "merkkivakio on liian pitkä tyypilleen"

#: charset.c:1830
msgid "multi-character character constant"
msgstr "monimerkkinen merkkivakio"

#: charset.c:1931
msgid "empty character constant"
msgstr "tyhjä merkkivakio"

#: charset.c:2047
#, c-format
msgid "failure to convert %s to %s"
msgstr "muunnos %s -> %s epäonnistui"

#: directives.c:235 directives.c:278
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "ylimääräisiä merkkejä #%s-direktiivin lopussa"

#: directives.c:385
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s on GCC-laajennos"

#: directives.c:390
#, c-format
msgid "#%s is a deprecated GCC extension"
msgstr "#%s on vanhentunut GCC-laajennos"

#: directives.c:403
msgid "suggest not using #elif in traditional C"
msgstr "ehdotetaan #elif:in käytön välttämistä perinteisessä C:ssä"

#: directives.c:406
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "#%s ohitetaan perinteisessä C:ssä kun # on sisennetty"

#: directives.c:410
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "ehdotetaan #%s:n piilottamista perinteiseltä C:ltä sisentämällä #"

#: directives.c:436
msgid "embedding a directive within macro arguments is not portable"
msgstr "direktiivin upottaminen makroargumenttien sisälle ei ole siirrettävää"

#: directives.c:456
msgid "style of line directive is a GCC extension"
msgstr "rividirektiivin tyyli on GCC-laajennos"

#: directives.c:537
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "virheellinen esikääntäjän direktiivi #%s"

#: directives.c:606
msgid "\"defined\" cannot be used as a macro name"
msgstr "”defined” ei ole kelvollinen makron nimi"

#: directives.c:611
msgid "\"__has_include__\" cannot be used as a macro name"
msgstr "”__has_include__” ei ole kelvollinen makron nimi"

#: directives.c:617
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "”%s” ei ole kelvollinen makron nimi, sillä se on C++:n operaattori"

#: directives.c:620
#, c-format
msgid "no macro name given in #%s directive"
msgstr "makron nimeä ei ole annettu #%s-direktiivissä"

#: directives.c:623
msgid "macro names must be identifiers"
msgstr "makrojen nimien on oltava tunnisteita"

#: directives.c:672 directives.c:677
#, c-format
msgid "undefining \"%s\""
msgstr "kumotaan määrittely ”%s”"

#: directives.c:732
msgid "missing terminating > character"
msgstr "päättävä >-merkki puuttuu"

#: directives.c:791
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s odottaa argumenttia \"TIEDOSTONIMI\" tai <TIEDOSTONIMI>"

#: directives.c:837
#, c-format
msgid "empty filename in #%s"
msgstr "tyhjä tiedostonimi direktiivissä #%s"

#: directives.c:847
msgid "#include nested too deeply"
msgstr "liikaa sisäkkäisiä #include:ja"

#: directives.c:888
msgid "#include_next in primary source file"
msgstr "#include_next ensisijaisessa lähdetiedostossa"

#: directives.c:914
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "virheellinen lippu ”%s” rividirektiivissä"

#: directives.c:974
msgid "unexpected end of file after #line"
msgstr "odottamaton tiedoston loppu #line-direktiivin jälkeen"

#: directives.c:977
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "#line:n jälkeinen ”%s”  ei ole positiivinen kokonaisluku"

#: directives.c:983 directives.c:985
msgid "line number out of range"
msgstr "rivinumero sallitun välin ulkopuolella"

#: directives.c:998 directives.c:1079
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "”%s” ei ole kelvollinen tiedostonimi"

#: directives.c:1039
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "#:n jälkeinen ”%s” ei ole positiivinen kokonaisluku"

#: directives.c:1098
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr "tiedoston ”%s” rivinmerkitsin jätetään huomiotta virheellisen sisäkkäisyyden vuoksi"

#: directives.c:1157 directives.c:1159 directives.c:1161 directives.c:1747
#, c-format
msgid "%s"
msgstr "%s"

#: directives.c:1185
#, c-format
msgid "invalid #%s directive"
msgstr "virheellinen #%s-direktiivi"

#: directives.c:1248
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "rekisteröidään pragmat nimiavaruudessa ”%s” epäsopivalla nimenlavennuksella"

#: directives.c:1257
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "rekisteröidään pragma ”%s” nimenlavennuksella ja ilman nimiavaruutta"

#: directives.c:1275
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "rekisteröidään ”%s” sekä pragmana että pragma-nimiavaruutena"

#: directives.c:1278
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s on jo rekisteröity"

#: directives.c:1281
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s on jo rekisteröity"

#: directives.c:1311
msgid "registering pragma with NULL handler"
msgstr "rekisteröidään pragma NULL-käsittelijällä"

#: directives.c:1528
msgid "#pragma once in main file"
msgstr "#pragma once päätiedostossa"

#: directives.c:1551
msgid "invalid #pragma push_macro directive"
msgstr "virheellinen #pragma push_macro -direktiivi"

#: directives.c:1606
msgid "invalid #pragma pop_macro directive"
msgstr "virheellinen #pragma pop_macro -direktiivi"

#  poison tarkoittaa, että makroa tai direktiiviä ei koskaan määritellä tai käytetä
#: directives.c:1661
msgid "invalid #pragma GCC poison directive"
msgstr "virheellinen #pragma GCC poison -direktiivi"

#: directives.c:1670
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "myrkytetään olemassa oleva makro ”%s”"

#: directives.c:1689
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header ohitetaan otsaketiedoston ulkopuolella"

#: directives.c:1714
#, c-format
msgid "cannot find source file %s"
msgstr "lähdetiedostoa %s ei löydy"

#: directives.c:1718
#, c-format
msgid "current file is older than %s"
msgstr "nykyinen tiedosto on vanhempi kuin %s"

#: directives.c:1742
#, c-format
msgid "invalid \"#pragma GCC %s\" directive"
msgstr "virheellinen ”#pragma GCC %s” -direktiivi"

#: directives.c:1943
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma ottaa sulkeilla ympäröidyn merkkijonoliteraalin"

#: directives.c:2064
msgid "#else without #if"
msgstr "#else ilman #if:iä"

#: directives.c:2069
msgid "#else after #else"
msgstr "#else #else:n jälkeen"

#: directives.c:2071 directives.c:2104
msgid "the conditional began here"
msgstr "ehtolause alkoi tästä"

#: directives.c:2097
msgid "#elif without #if"
msgstr "#elif ilman #if:iä"

#: directives.c:2102
msgid "#elif after #else"
msgstr "#elif #else:n jälkeen"

#: directives.c:2133
msgid "#endif without #if"
msgstr "#endif ilman #if:iä"

#: directives.c:2213
msgid "missing '(' after predicate"
msgstr "’(’ puuttuu predikaatin jäljestä"

#: directives.c:2228
msgid "missing ')' to complete answer"
msgstr "’)’ puuttuu vastauksen täydentämisestä"

#: directives.c:2248
msgid "predicate's answer is empty"
msgstr "predikaatin vastaus on tyhjä"

#: directives.c:2275
msgid "assertion without predicate"
msgstr "väite ilman predikaattia"

#: directives.c:2278
msgid "predicate must be an identifier"
msgstr "predikaatin on oltava tunniste"

#: directives.c:2364
#, c-format
msgid "\"%s\" re-asserted"
msgstr "”%s” väitetty uudelleen"

#: directives.c:2656
#, c-format
msgid "unterminated #%s"
msgstr "päättämätön #%s"

#: directives-only.c:221 lex.c:2819 traditional.c:167
msgid "unterminated comment"
msgstr "päättämätön kommentti"

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

#: errors.c:312
msgid "stdout"
msgstr "vakiotuloste"

#: expr.c:601 expr.c:718
msgid "fixed-point constants are a GCC extension"
msgstr "kiintopistevakiot ovat GCC-laajennos"

#: expr.c:626
msgid "invalid prefix \"0b\" for floating constant"
msgstr "virheellinen etuliite ”0b” liukulukuvakiolle"

#: expr.c:639
msgid "use of C++1z hexadecimal floating constant"
msgstr "C++1z:n heksadesimaaliliukulukuvakion käyttö"

#: expr.c:642
msgid "use of C99 hexadecimal floating constant"
msgstr "C99:n heksadesimaaliliukulukuvakion käyttö"

#: expr.c:686
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "virheellinen loppuliite ”%.*s” liukulukuvakiolla"

#: expr.c:697 expr.c:757
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "perinteinen C ei salli ”%.*s”-loppuliitettä"

#: expr.c:705
msgid "suffix for double constant is a GCC extension"
msgstr "loppuliite double-vakiolle on GCC-laajennos"

#: expr.c:711
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "virheellinen loppuliite ”%.*s” heksadesimaalisella liukulukuvakiolla"

#: expr.c:722
msgid "decimal float constants are a GCC extension"
msgstr "desimaali-float-vakiot ovat GCC-laajennos"

#: expr.c:740
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "virheellinen loppuliite ”%.*s” kokonaislukuvakiolla"

#: expr.c:765
msgid "use of C++11 long long integer constant"
msgstr "C++11:n long long -kokonaislukuvakion käyttö"

#: expr.c:766
msgid "use of C99 long long integer constant"
msgstr "C99:n long long -kokonaislukuvakion käyttö"

#: expr.c:782
msgid "imaginary constants are a GCC extension"
msgstr "imaginäärivakiot ovat GCC-laajennos"

#: expr.c:788
msgid "binary constants are a C++14 feature or GCC extension"
msgstr "binäärivakiot ovat C++14:n ominaisuus tai GCC-laajennos"

#: expr.c:790
msgid "binary constants are a GCC extension"
msgstr "binäärivakiot ovat GCC-laajennos"

#: expr.c:885
msgid "integer constant is too large for its type"
msgstr "kokonaislukuvakio on liian suuri tyypilleen"

#: expr.c:916
msgid "integer constant is so large that it is unsigned"
msgstr "kokonaislukuvakio on niin suuri, että se on etumerkitön"

#: expr.c:1011
msgid "missing ')' after \"defined\""
msgstr "’)’ puuttuu ”defined”-sanan jäljestä"

#: expr.c:1018
msgid "operator \"defined\" requires an identifier"
msgstr "operaattori ”defined” vaatii tunnisteen"

#: expr.c:1026
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(”%s” on vaihtoehtoinen symboli ”%s”:lle C++:ssa)"

#: expr.c:1038
msgid "this use of \"defined\" may not be portable"
msgstr "tämä ”defined”-sanan käyttö ei ehkä ole siirrettävää"

#: expr.c:1098
msgid "user-defined literal in preprocessor expression"
msgstr "käyttäjän määrittelemä literaali esikääntäjän lausekkeessa"

#: expr.c:1103
msgid "floating constant in preprocessor expression"
msgstr "liukulukuvakio esikääntäjän lausekkeessa"

#: expr.c:1109
msgid "imaginary number in preprocessor expression"
msgstr "imaginääriluku esikääntäjän lausekkeessa"

#: expr.c:1162
#, c-format
msgid "\"%s\" is not defined, evaluates to 0"
msgstr "”%s” on määrittelemättä, evaluoituu 0:ksi"

#: expr.c:1175
msgid "assertions are a GCC extension"
msgstr "väitteet ovat GCC-laajennos"

#: expr.c:1178
msgid "assertions are a deprecated extension"
msgstr "väitteet ovat vanhentunut laajennos"

# %s on #if tai #elif
#: expr.c:1424
#, c-format
msgid "unbalanced stack in %s"
msgstr "tasapainoton pino %s:ssä"

#: expr.c:1444
#, c-format
msgid "impossible operator '%u'"
msgstr "mahdoton operaattori ’%u’"

#: expr.c:1545
msgid "missing ')' in expression"
msgstr "’)’ puuttuu lausekkeesta"

#: expr.c:1574
msgid "'?' without following ':'"
msgstr "’?’ ilman sitä seuraavaa ’:’-merkkiä"

#: expr.c:1584
msgid "integer overflow in preprocessor expression"
msgstr "kokonaislukuylivuoto esikääntäjän lausekkeessa"

#: expr.c:1589
msgid "missing '(' in expression"
msgstr "’(’ puuttuu lausekkeesta"

#: expr.c:1621
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "”%s”:n vasen operandi vaihtaa ylennettäessä etumerkkiään"

#: expr.c:1626
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "”%s”:n oikea operandi vaihtaa ylennettäessä etumerkkiään"

#: expr.c:1885
msgid "traditional C rejects the unary plus operator"
msgstr "perinteinen C ei salli unaarista plus-operaattoria"

#: expr.c:1983
msgid "comma operator in operand of #if"
msgstr "pilkkuoperaattori #if:in operandissa"

#: expr.c:2119
msgid "division by zero in #if"
msgstr "jako nollalla #if-ehdossa"

#: expr.c:2216
msgid "operator \"__has_include__\" requires a header string"
msgstr "operaattori ”__has_include__” vaatii otsakemerkkijonon"

#: expr.c:2232
msgid "missing ')' after \"__has_include__\""
msgstr "’)’ puuttuu ”__has_include__”-sanan jäljestä"

#: files.c:573
msgid "one or more PCH files were found, but they were invalid"
msgstr "yksi tai useampia PCH-tiedostoja löytyi, mutta ne olivat virheellisiä"

#: files.c:576
msgid "use -Winvalid-pch for more information"
msgstr "käytä valitsinta -Winvalid-pch lisätietojen saamiseksi"

#: files.c:981
#, c-format
msgid "no include path in which to search for %s"
msgstr "ei include-polkua, josta etsiä tiedostoa %s"

#: files.c:1441
msgid "Multiple include guards may be useful for:\n"
msgstr "Monen includen estimet voivat olla hyödyllisiä tiedostoille:\n"

#: init.c:553
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t:n on oltava etumerkitön tyyppi"

#: init.c:557
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "esikääntäjäaritmetiikan enimmäistarkkuus on %lu bittiä; kohde vaatii %lu bittiä"

#: init.c:564
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "CPP-aritmetiikan on oltava vähintään yhtä tarkka kuin kohteen int-tyypin"

#: init.c:567
msgid "target char is less than 8 bits wide"
msgstr "kohteen char-tyyppi on alle 8 bittiä leveä"

#: init.c:571
msgid "target wchar_t is narrower than target char"
msgstr "kohteen wchar_t-tyyppi on kapeampi kuin kohteen char-tyyppi"

#: init.c:575
msgid "target int is narrower than target char"
msgstr "kohteen int-tyyppi on kapeampi kuin kohteen char-tyyppi"

#: init.c:580
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP-puolikokonaisluku on kapeampi kuin CPP-merkki"

#: init.c:584
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "tämän koneen CPP ei pysty käsittelemään yli %lu-bittisiä leveämerkkivakioita, mutta kohde vaatii %lu bittiä"

#: lex.c:1126
msgid "backslash and newline separated by space"
msgstr "kenoviiva ja rivinvaihto erotettu välilyönnillä"

#: lex.c:1131
msgid "backslash-newline at end of file"
msgstr "kenoviiva-rivinvaihto tiedoston lopussa"

#: lex.c:1147
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "kolmoismerkki ??%c muunnettu merkiksi %c"

#: lex.c:1155
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "kolmoismerkki ??%c ohitettiin, ota käyttöön valitsimella -trigraphs"

#: lex.c:1204
msgid "\"/*\" within comment"
msgstr "”/*” kommentin sisällä"

# Mahdolliset arvot: "form feed", "vertical tab", eivät käännettäviä.
#: lex.c:1262
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s esikääntäjän direktiivissä"

#: lex.c:1271
msgid "null character(s) ignored"
msgstr "null-merkit ohitetaan"

#  NFKC-muodossa Unicode-merkki ilmaistaan nelinumeroisella heksadesimaaliluvulla
#: lex.c:1308
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr "”%.*s” ei ole NFKC-muodossa"

#  NFC-muodossa Unicode-merkki ilmaistaan nelinumeroisella heksadesimaaliluvulla
#: lex.c:1311
#, c-format
msgid "`%.*s' is not in NFC"
msgstr "”%.*s” ei ole NFC-muodossa"

#  poison tarkoittaa, että makroa tai direktiiviä ei koskaan määritellä tai käytetä
#: lex.c:1381 lex.c:1470
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "myrkytetyn makron ”%s” käyttöyritys"

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: lex.c:1391 lex.c:1480
msgid "__VA_ARGS__ can only appear in the expansion of a C++11 variadic macro"
msgstr "__VA_ARGS__ voi esiintyä vain C++11:n variadisen makron lavennoksessa"

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: lex.c:1395 lex.c:1484
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ voi esiintyä vain C99:n variadisen makron lavennoksessa"

#: lex.c:1402 lex.c:1491
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr "tunniste ”%s” on operaattorin nimi C++:ssa"

#: lex.c:1781
msgid "raw string delimiter longer than 16 characters"
msgstr "raa’an merkkijonon erotin pitempi kuin 16 merkkiä"

#: lex.c:1785
msgid "invalid new-line in raw string delimiter"
msgstr "virheellinen rivinvaihto raa’an merkkijonon erottimessa"

#: lex.c:1789
#, c-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "virheellinen merkki ’%c’ raa’an merkkijonon erottimessa"

#: lex.c:1838 lex.c:1860
msgid "unterminated raw string"
msgstr "päättämätön raaka merkkijono"

#: lex.c:1881 lex.c:2011
msgid "invalid suffix on literal; C++11 requires a space between literal and string macro"
msgstr "literaalissa virheellinen jälkiliite; C++11 vaatii välilyönnin literaalin ja merkkijonomakron väliin"

#: lex.c:1993
msgid "null character(s) preserved in literal"
msgstr "null-merkit säilytetään literaalissa"

#: lex.c:1996
#, c-format
msgid "missing terminating %c character"
msgstr "päättävä merkki %c puuttuu"

#: lex.c:2029
msgid "C++11 requires a space between string literal and macro"
msgstr "C++11 vaatii välilyönnin literaalin ja merkkijonomakron väliin"

#: lex.c:2833 lex.c:2867
msgid "C++ style comments are not allowed in ISO C90"
msgstr "C++-tyyliset kommentit eivät ole sallittuja ISO C90:ssä"

#: lex.c:2835 lex.c:2846 lex.c:2869
msgid "(this will be reported only once per input file)"
msgstr "(tästä ilmoitetaan vain kerran syötetiedostoa kohden)"

#: lex.c:2844
msgid "C++ style comments are incompatible with C90"
msgstr "C++-tyyliset kommentit ovat epäyhteensopivia C90:n kanssa"

#: lex.c:2875
msgid "multi-line comment"
msgstr "monirivinen kommentti"

#: lex.c:3248
#, c-format
msgid "unspellable token %s"
msgstr "kirjoitusasuton symboli %s"

#: macro.c:203
#, c-format
msgid "macro \"%s\" is not used"
msgstr "makroa ”%s” ei käytetä"

#: macro.c:242 macro.c:488
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "virheellinen sisäinen makro ”%s”"

#: macro.c:249 macro.c:349
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr "makro ”%s” saattaa estää toistettavat käännökset"

#: macro.c:280
msgid "could not determine file timestamp"
msgstr "ei voitu selvittää tiedoston aikaleimaa"

#: macro.c:395
msgid "could not determine date and time"
msgstr "ei voitu selvittää päivämäärää ja aikaa"

#: macro.c:411
msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgstr "__COUNTER__ lavennettu direktiivin sisällä valitsimella -fdirectives-only"

#: macro.c:599
msgid "invalid string literal, ignoring final '\\'"
msgstr "virheellinen merkijonoliteraali, ohitetaan viimeinen ’\\’"

#: macro.c:661
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "liittämällä ”%s” ja ”%s” ei saada kelvollista esikääntäjän symbolia"

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: macro.c:785
msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C++11 vaatii vähintään yhden argumentin variadisen makron ”...”:lle"

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: macro.c:789
msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C99 vaatii vähintään yhden argumentin variadisen makron ”...”:lle"

#: macro.c:796
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "makro ”%s” vaatii %u argumenttia, mutta vain %u on annettu"

#: macro.c:801
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "makrolle ”%s” annettu %u argumenttia, mutta se ottaa vain %u"

#: macro.c:995 traditional.c:819
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "päättämätön argumenttiluettelo ”%s”-makron kutsussa"

#: macro.c:1146
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "funktion kaltaista makroa ”%s” on käytettävä argumenttien kanssa perinteisessä C:ssä"

#: macro.c:1836
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C++98"
msgstr "%s-makron argumentin %d kutsu: tyhjät makroargumentit ovat määrittelemättömiä ISO C++98:ssa"

#: macro.c:1844 macro.c:1853
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
msgstr "%s-makron argumentin %d kutsu: tyhjät makroargumentit ovat määrittelemättömiä ISO C90:ssä"

#: macro.c:2817
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "kahdenkertainen makroparametri ”%s”"

#: macro.c:2866
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "”%s” ei saa esiintyä makron parametriluettelossa"

#: macro.c:2874
msgid "macro parameters must be comma-separated"
msgstr "makron parametrien on oltava pilkuin eroteltuja"

#: macro.c:2893
msgid "parameter name missing"
msgstr "parametrin nimi puuttuu"

#: macro.c:2914
msgid "anonymous variadic macros were introduced in C++11"
msgstr "anonyymit variadiset makrot esiteltiin C++11:ssä"

#: macro.c:2918 macro.c:2923
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonyymit variadiset makrot esiteltiin C99:ssä"

#: macro.c:2930
msgid "ISO C++ does not permit named variadic macros"
msgstr "ISO C++ ei salli nimettyjä variadisia makroja"

#: macro.c:2933
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C ei salli nimettyjä variadisia makroja"

#: macro.c:2943
msgid "missing ')' in macro parameter list"
msgstr "’)’ puuttuu makron parametriluettelosta"

#: macro.c:2994
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "”##” ei voi esiintyä makrolavennuksen kummassakaan päässä"

#: macro.c:3031
msgid "ISO C++11 requires whitespace after the macro name"
msgstr "ISO C++11 vaatii tyhjemerkin makron nimen jälkeen"

#: macro.c:3034
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 vaatii tyhjemerkin makron nimen jälkeen"

#: macro.c:3059
msgid "missing whitespace after the macro name"
msgstr "tyhjemerkki puuttuu makron nimen jäljestä"

#: macro.c:3093
msgid "'#' is not followed by a macro parameter"
msgstr "”#” ilman sitä seuraavaa makroparametria"

#: macro.c:3254
#, c-format
msgid "\"%s\" redefined"
msgstr "”%s” määritelty uudelleen"

#: macro.c:3259
msgid "this is the location of the previous definition"
msgstr "tämä on edellisen määrittelyn sijainti"

#: macro.c:3320
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "makron argumentti ”%s” merkkijonostettaisiin perinteisessä C:ssä"

#: macro.c:3356
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "virheellinen hash-tyyppi %d funktiossa cpp_macro_definition"

#: pch.c:89 pch.c:347 pch.c:361 pch.c:379 pch.c:385 pch.c:394 pch.c:401
msgid "while writing precompiled header"
msgstr "kirjoitettaessa esikäännettyä otsaketta"

#: pch.c:621
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s: ei käytetä, koska ”%.*s” on myrkytetty"

#: pch.c:643
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s: ei käytetä, koska ”%.*s” on määrittelemättä"

#: pch.c:655
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s: ei käytetä, koska ”%.*s” on määritelty arvoon ”%s” eikä ”%.*s”"

#: pch.c:696
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s: ei käytetä, koska ”%s” on määritelty"

#: pch.c:716
#, c-format
msgid "%s: not used because `__COUNTER__' is invalid"
msgstr "%s: ei käytetä, koska ”__COUNTER__” on virheellinen"

#: pch.c:725 pch.c:902
msgid "while reading precompiled header"
msgstr "luettaessa esikäännettyä otsaketta"

#: traditional.c:889
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "havaittiin rekursio lavennettaessa makroa ”%s”"

#: traditional.c:1108
msgid "syntax error in macro parameter list"
msgstr "syntaksivirhe makron parameteriluettelossa"

#~ msgid "NULL directory in find_file"
#~ msgstr "NULL-hakemisto funktiossa find_file"

#~ msgid "%s is a block device"
#~ msgstr "%s on lohkolaite"

#~ msgid "%s is too large"
#~ msgstr "%s on liian suuri"

#~ msgid "%s is shorter than expected"
#~ msgstr "%s on odotettua lyhyempi"

#  NFKC-muodossa Unicode-merkki ilmaistaan nelinumeroisella heksadesimaaliluvulla
#~ msgid "Character %x might not be NFKC"
#~ msgstr "Merkki %x ei saattaisi olla Unicode-normalisointimerkkijonomuotoa NFKC"

#~ msgid "too many decimal points in number"
#~ msgstr "liian monta desimaalipistettä numerossa"

#~ msgid "invalid digit \"%c\" in binary constant"
#~ msgstr "virheellinen numero ”%c” binäärivakiossa"

#~ msgid "invalid digit \"%c\" in octal constant"
#~ msgstr "virheellinen numero ”%c” oktaalivakiossa"

#~ msgid "no digits in hexadecimal floating constant"
#~ msgstr "ei lukuja heksadesimaalisessa liukulukuvakiossa"

#~ msgid "exponent has no digits"
#~ msgstr "eksponentilla ei ole numeoita"

#~ msgid "hexadecimal floating constants require an exponent"
#~ msgstr "heksadesimaalinen liukulukuvakio vaatii eksponentin"

#~ msgid "missing binary operator before token \"%s\""
#~ msgstr "puuttua binäärioperaattori ennen merkkijonoa ”%s”"

#~ msgid "token \"%s\" is not valid in preprocessor expressions"
#~ msgstr "merkkijono ”%s” ei ole kelvollinen esikäsittelijälausekkeissa"

#~ msgid "missing expression between '(' and ')'"
#~ msgstr "puuttuva lauseke merkkien ’(’ ja ’)’ välillä"

#~ msgid "%s with no expression"
#~ msgstr "%s ilman lauseketta"

#~ msgid "operator '%s' has no right operand"
#~ msgstr "operaattorilla ’%s’ ei ole oikeaa operandia"

#~ msgid "operator '%s' has no left operand"
#~ msgstr "operaattorilla ’%s’ ei ole vasenta operandia"

#~ msgid " ':' without preceding '?'"
#~ msgstr " ’:’ ilman edeltävää ’?’"
