# Finnish messages for cpplib.
# Copyright © 2010, 2012, 2013, 2014, 2015, 2016, 2018, 2019 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, 2018, 2019.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 10.1-b20200209\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2026-02-19 21:05+0000\n"
"PO-Revision-Date: 2020-02-11 17:27+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 2.3\n"

#: charset.cc:759
#, gcc-internal-format, gfc-internal-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "iconv ei tue muunnosta %s -> %s"

#: charset.cc:762
msgid "iconv_open"
msgstr "iconv_open"

#: charset.cc:772
#, gcc-internal-format, gfc-internal-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "ei iconv-toteutusta, muunnosta %s -> %s ei voida suorittaa"

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

#: charset.cc:891 charset.cc:2643
msgid "converting to execution character set"
msgstr "muunnetaan suoritusmerkistöön"

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

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

#: charset.cc:1557
#, fuzzy, gcc-internal-format
#| msgid "C99's universal character names are incompatible with C90"
msgid "C99%'s universal character names are incompatible with C90"
msgstr "C99:n universaalit merkkinimet ovat epäyhteensopivia C90:n kanssa"

#: charset.cc:1560
#, fuzzy, gcc-internal-format
#| msgid "the meaning of '\\%c' is different in traditional C"
msgid "the meaning of %<\\%c%> is different in traditional C"
msgstr "’\\%c’:lla on eri merkitys perinteisessä C:ssä"

#: charset.cc:1599
#, gcc-internal-format
msgid "%<\\N%> not followed by %<{%>"
msgstr ""

#: charset.cc:1629
msgid "empty named universal character escape sequence; treating it as separate tokens"
msgstr ""

#: charset.cc:1636
#, fuzzy
#| msgid "incomplete universal character name %.*s"
msgid "empty named universal character escape sequence"
msgstr "vaillinainen universaali merkkinimi %.*s"

#: charset.cc:1643
#, fuzzy
#| msgid "universal character names are only valid in C++ and C99"
msgid "named universal character escapes are only valid in C++23"
msgstr "universaalit merkkinimet ovat kelvollisia vai C++:ssa ja C99:ssä"

#: charset.cc:1663
#, fuzzy, gcc-internal-format
#| msgid "%.*s is not a valid universal character"
msgid "%<\\N{%.*s}%> is not a valid universal character; treating it as separate tokens"
msgstr "%.*s ei ole kelvollinen universaali merkki"

#: charset.cc:1669
#, fuzzy, gcc-internal-format
#| msgid "%.*s is not a valid universal character"
msgid "%<\\N{%.*s}%> is not a valid universal character"
msgstr "%.*s ei ole kelvollinen universaali merkki"

#: charset.cc:1679
#, gcc-internal-format
msgid "did you mean %<\\N{%s}%>?"
msgstr ""

#: charset.cc:1697
#, gcc-internal-format
msgid "%<\\N{%> not terminated with %<}%> after %.*s; treating it as separate tokens"
msgstr ""

#: charset.cc:1706
#, gcc-internal-format
msgid "%<\\N{%> not terminated with %<}%> after %.*s"
msgstr ""

#  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.cc:1714
#, fuzzy, gcc-internal-format
#| msgid "In _cpp_valid_ucn but not a UCN"
msgid "in %<_cpp_valid_ucn%> but not a UCN"
msgstr "Funktiossa _cpp_valid_ucn mutta ei ole UCN"

#: charset.cc:1757
msgid "empty delimited escape sequence; treating it as separate tokens"
msgstr ""

#: charset.cc:1764 charset.cc:2167 charset.cc:2284
msgid "empty delimited escape sequence"
msgstr ""

#: charset.cc:1773 charset.cc:2176 charset.cc:2293
#, fuzzy
#| msgid "universal character names are only valid in C++ and C99"
msgid "delimited escape sequences are only valid in C++23"
msgstr "universaalit merkkinimet ovat kelvollisia vai C++:ssa ja C99:ssä"

#: charset.cc:1778 charset.cc:1783 charset.cc:2181 charset.cc:2186
#: charset.cc:2298 charset.cc:2303
msgid "delimited escape sequences are only valid in C2Y"
msgstr ""

#: charset.cc:1798
#, gcc-internal-format
msgid "%<\\u{%> not terminated with %<}%> after %.*s; treating it as separate tokens"
msgstr ""

#: charset.cc:1810
#, gcc-internal-format
msgid "incomplete universal character name %.*s"
msgstr "vaillinainen universaali merkkinimi %.*s"

#: charset.cc:1814
#, gcc-internal-format
msgid "%<\\u{%> not terminated with %<}%> after %.*s"
msgstr ""

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

#: charset.cc:1838 charset.cc:1842
#, fuzzy, gcc-internal-format
#| msgid "%.*s is not a valid universal character"
msgid "%.*s is not a valid universal character name before C23"
msgstr "%.*s ei ole kelvollinen universaali merkki"

#: charset.cc:1858 lex.cc:2099
#, fuzzy, gcc-internal-format
#| msgid "'$' in identifier or number"
msgid "%<$%> in identifier or number"
msgstr "’$’ tunnisteessa tai lukuarvossa"

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

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

#: charset.cc:1879
#, gcc-internal-format
msgid "%.*s is outside the UCS codespace"
msgstr "%.*s on UCS-koodiston ulkopuolella"

#: charset.cc:1923 charset.cc:3180
msgid "converting UCN to source character set"
msgstr "muunnetaan UCN lähdemerkistöön"

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

#: charset.cc:1994
#, gcc-internal-format
msgid "extended character %.*s is not valid in an identifier"
msgstr "laajennettu merkki %.*s ei ole kelvollinen tunniste"

#: charset.cc:2011
#, gcc-internal-format
msgid "extended character %.*s is not valid at the start of an identifier"
msgstr "laajennettu merkki %.*s ei ole kelvollinen tunnisteen alussa"

#: charset.cc:2133
#, fuzzy, gcc-internal-format
#| msgid "the meaning of '\\x' is different in traditional C"
msgid "the meaning of %<\\x%> is different in traditional C"
msgstr "’\\%x’:lla on eri merkitys perinteisessä C:ssä"

#: charset.cc:2194
#, fuzzy, gcc-internal-format
#| msgid "\\x used with no following hex digits"
msgid "%<\\x%> used with no following hex digits"
msgstr "\\x:ää käytetty ilman seuraavia heksanumeroita"

#: charset.cc:2200
#, gcc-internal-format
msgid "%<\\x{%> not terminated with %<}%> after %.*s"
msgstr ""

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

#: charset.cc:2251
#, gcc-internal-format
msgid "%<\\o%> not followed by %<{%>"
msgstr ""

#: charset.cc:2309
#, gcc-internal-format
msgid "%<\\o{%> not terminated with %<}%> after %.*s"
msgstr ""

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

#: charset.cc:2370 charset.cc:2380
#, gcc-internal-format
msgid "numeric escape sequence in unevaluated string: %<\\%c%>"
msgstr ""

#: charset.cc:2408
#, fuzzy, gcc-internal-format
#| msgid "the meaning of '\\a' is different in traditional C"
msgid "the meaning of %<\\a%> is different in traditional C"
msgstr "’\\a’:lla on eri merkitys perinteisessä C:ssä"

#: charset.cc:2414
#, fuzzy, gcc-internal-format
#| msgid "non-ISO-standard escape sequence, '\\%c'"
msgid "non-ISO-standard escape sequence, %<\\%c%>"
msgstr "ISO-standardiin kuulumaton ohjaussarja ’\\%c’"

#: charset.cc:2422
#, fuzzy, gcc-internal-format
#| msgid "unknown escape sequence: '\\%c'"
msgid "unknown escape sequence: %<\\%c%>"
msgstr "tuntematon ohjaussarja ’\\%c’"

#: charset.cc:2432
#, fuzzy, gcc-internal-format
#| msgid "unknown escape sequence: '\\%s'"
msgid "unknown escape sequence: %<\\%s%>"
msgstr "tuntematon ohjaussarja ’\\%s’"

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

#: charset.cc:2580
msgid "missing open quote"
msgstr "avautuva sulje puuttuu"

#: charset.cc:2915
#, fuzzy
#| msgid "character 0x%lx is not unibyte in execution character set"
msgid "character not encodable in a single execution character code unit"
msgstr "merkki 0x%lx ei ole yksitavuinen suoritusmerkistössä"

#: charset.cc:2920
msgid "at least one character in a multi-character literal not encodable in a single execution character code unit"
msgstr ""

#: charset.cc:2938
#, gcc-internal-format
msgid "multi-character literal with %ld characters exceeds %<int%> size of %ld bytes"
msgstr ""

#: charset.cc:2942 charset.cc:3037
msgid "multi-character literal cannot have an encoding prefix"
msgstr ""

#: charset.cc:2945 charset.cc:3040
msgid "character not encodable in a single code unit"
msgstr ""

#: charset.cc:2949
msgid "multi-character character constant"
msgstr "monimerkkinen merkkivakio"

#: charset.cc:3081
msgid "empty character constant"
msgstr "tyhjä merkkivakio"

#: charset.cc:3266
#, gcc-internal-format, gfc-internal-format
msgid "failure to convert %s to %s"
msgstr "muunnos %s -> %s epäonnistui"

#: directives.cc:243
#, fuzzy, gcc-internal-format
#| msgid "extra tokens at end of #%s directive"
msgid "extra tokens at end of %<#%s%> directive"
msgstr "ylimääräisiä merkkejä #%s-direktiivin lopussa"

#: directives.cc:286
#, gcc-internal-format, gfc-internal-format
msgid "extra tokens at end of #%s directive"
msgstr "ylimääräisiä merkkejä #%s-direktiivin lopussa"

#: directives.cc:396
#, fuzzy, gcc-internal-format
#| msgid "#%s is a GCC extension"
msgid "%<#%s%> is a GCC extension"
msgstr "#%s on GCC-laajennos"

#: directives.cc:404 directives.cc:2716 directives.cc:2755
#, fuzzy, gcc-internal-format
#| msgid "#%s is a GCC extension"
msgid "%<#%s%> before C++23 is a GCC extension"
msgstr "#%s on GCC-laajennos"

#: directives.cc:409 directives.cc:415 directives.cc:1404 directives.cc:2720
#: directives.cc:2760
#, fuzzy, gcc-internal-format
#| msgid "#%s is a GCC extension"
msgid "%<#%s%> before C23 is a GCC extension"
msgstr "#%s on GCC-laajennos"

#: directives.cc:423
#, fuzzy, gcc-internal-format
#| msgid "#%s is a deprecated GCC extension"
msgid "%<#%s%> is a deprecated GCC extension"
msgstr "#%s on vanhentunut GCC-laajennos"

#: directives.cc:436
#, fuzzy, gcc-internal-format
#| msgid "suggest not using #elif in traditional C"
msgid "suggest not using %<#elif%> in traditional C"
msgstr "ehdotetaan #elif:in käytön välttämistä perinteisessä C:ssä"

#: directives.cc:439
#, fuzzy, gcc-internal-format
#| msgid "traditional C ignores #%s with the # indented"
msgid "traditional C ignores %<#%s%> with the %<#%> indented"
msgstr "#%s ohitetaan perinteisessä C:ssä kun # on sisennetty"

#: directives.cc:443
#, fuzzy, gcc-internal-format
#| msgid "suggest hiding #%s from traditional C with an indented #"
msgid "suggest hiding %<#%s%> from traditional C with an indented %<#%>"
msgstr "ehdotetaan #%s:n piilottamista perinteiseltä C:ltä sisentämällä #"

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

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

#: directives.cc:572
#, fuzzy, gcc-internal-format, gfc-internal-format
#| msgid "invalid preprocessing directive #%s"
msgid "invalid preprocessing directive #%s; did you mean #%s?"
msgstr "virheellinen esikääntäjän direktiivi #%s"

#: directives.cc:578
#, gcc-internal-format, gfc-internal-format
msgid "invalid preprocessing directive #%s"
msgstr "virheellinen esikääntäjän direktiivi #%s"

#: directives.cc:656
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" cannot be used as a macro name"
msgid "%qs cannot be used as a macro name"
msgstr "”%s” ei ole kelvollinen makron nimi"

#: directives.cc:663
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgid "%qs 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.cc:666
#, fuzzy, gcc-internal-format
#| msgid "no macro name given in #%s directive"
msgid "no macro name given in %<#%s%> directive"
msgstr "makron nimeä ei ole annettu #%s-direktiivissä"

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

#: directives.cc:752 directives.cc:755
#, fuzzy, gcc-internal-format
#| msgid "undefining \"%s\""
msgid "undefining keyword %qs"
msgstr "kumotaan määrittely ”%s”"

#: directives.cc:767 directives.cc:772 directives.cc:784
#, fuzzy, gcc-internal-format
#| msgid "undefining \"%s\""
msgid "undefining %qs"
msgstr "kumotaan määrittely ”%s”"

#: directives.cc:835
#, fuzzy, gcc-internal-format
#| msgid "missing terminating > character"
msgid "missing terminating %<>%> character"
msgstr "päättävä >-merkki puuttuu"

#: directives.cc:895
#, fuzzy, gcc-internal-format
#| msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgid "%<#%s%> expects %<\"FILENAME\"%> or %<<FILENAME>%>"
msgstr "#%s odottaa argumenttia \"TIEDOSTONIMI\" tai <TIEDOSTONIMI>"

#: directives.cc:941 directives.cc:1421
#, gcc-internal-format, gfc-internal-format
msgid "empty filename in #%s"
msgstr "tyhjä tiedostonimi direktiivissä #%s"

#: directives.cc:950
#, fuzzy, gcc-internal-format
#| msgid "#include nested depth %u exceeds maximum of %u (use -fmax-include-depth=DEPTH to increase the maximum)"
msgid "%<#include%> nested depth %u exceeds maximum of %u (use %<-fmax-include-depth=DEPTH%> to increase the maximum)"
msgstr "#include-sisäkkäisyyssyvyys %u ylittää maksimin %u (valitsin -fmax-include-depth=SYVYYS suurentaa maksimia)"

#: directives.cc:995
#, fuzzy, gcc-internal-format
#| msgid "#include_next in primary source file"
msgid "%<#include_next%> in primary source file"
msgstr "#include_next ensisijaisessa lähdetiedostossa"

# %s on #if tai #elif
#: directives.cc:1067 directives.cc:1089 directives.cc:1092 directives.cc:1095
#, fuzzy, gcc-internal-format, gfc-internal-format
#| msgid "unbalanced stack in %s"
msgid "unbalanced '%c'"
msgstr "tasapainoton pino %s:ssä"

#: directives.cc:1150 directives.cc:1341
#, gcc-internal-format
msgid "expected %<)%>"
msgstr ""

#: directives.cc:1156 directives.cc:1207
#, fuzzy
#| msgid "expected parameter name, found \"%s\""
msgid "expected parameter name"
msgstr "odotettiin parametrin nimeä, löytyi ”%s”"

#: directives.cc:1167
#, gcc-internal-format
msgid "%<gnu::base64%> parameter conflicts with %<limit%> or %<gnu::offset%> parameters"
msgstr ""

#: directives.cc:1177
#, gcc-internal-format
msgid "%<gnu::base64%> parameter required in preprocessed source"
msgstr ""

#: directives.cc:1198
#, gcc-internal-format
msgid "expected %<:%>"
msgstr ""

#: directives.cc:1265
#, fuzzy, gcc-internal-format
#| msgid "duplicate macro parameter \"%s\""
msgid "duplicate embed parameter '%.*s%s%.*s'"
msgstr "kahdenkertainen makroparametri ”%s”"

#: directives.cc:1277
#, gcc-internal-format
msgid "unknown embed parameter '%.*s%s%.*s'"
msgstr ""

#: directives.cc:1286
#, gcc-internal-format
msgid "expected %<(%>"
msgstr ""

#: directives.cc:1299
#, gcc-internal-format
msgid "too large %<gnu::offset%> argument"
msgstr ""

#: directives.cc:1346
#, fuzzy
#| msgid "null character(s) preserved in literal"
msgid "expected character string literal"
msgstr "null-merkit säilytetään literaalissa"

#: directives.cc:1391
#, fuzzy, gcc-internal-format
#| msgid "suggest not using #elif in traditional C"
msgid "%<#embed%> not supported in traditional C"
msgstr "ehdotetaan #elif:in käytön välttämistä perinteisessä C:ssä"

#: directives.cc:1400
#, fuzzy, gcc-internal-format
#| msgid "#%s is a GCC extension"
msgid "%<#%s%> before C++26 is a GCC extension"
msgstr "#%s on GCC-laajennos"

#: directives.cc:1409
#, fuzzy, gcc-internal-format
#| msgid "#%s is a GCC extension"
msgid "%<#%s%> is a C23 feature"
msgstr "#%s on GCC-laajennos"

#: directives.cc:1466
#, fuzzy, gcc-internal-format
#| msgid "invalid flag \"%s\" in line directive"
msgid "invalid flag %qs in line directive"
msgstr "virheellinen lippu ”%s” rividirektiivissä"

#: directives.cc:1534
#, fuzzy, gcc-internal-format
#| msgid "unexpected end of file after #line"
msgid "unexpected end of file after %<#line%>"
msgstr "odottamaton tiedoston loppu #line-direktiivin jälkeen"

#: directives.cc:1537
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" after #line is not a positive integer"
msgid "%qs after %<#line%> is not a positive integer"
msgstr "#line:n jälkeinen ”%s”  ei ole positiivinen kokonaisluku"

#: directives.cc:1543 directives.cc:1546
msgid "line number out of range"
msgstr "rivinumero sallitun välin ulkopuolella"

#: directives.cc:1559 directives.cc:1640
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" is not a valid filename"
msgid "%qs is not a valid filename"
msgstr "”%s” ei ole kelvollinen tiedostonimi"

#: directives.cc:1600
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" after # is not a positive integer"
msgid "%qs after %<#%> is not a positive integer"
msgstr "#:n jälkeinen ”%s” ei ole positiivinen kokonaisluku"

#: directives.cc:1667
#, fuzzy, gcc-internal-format
#| msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgid "file %qs linemarker ignored due to incorrect nesting"
msgstr "tiedoston ”%s” rivinmerkitsin jätetään huomiotta virheellisen sisäkkäisyyden vuoksi"

#: directives.cc:1745 directives.cc:1747 directives.cc:1749 directives.cc:2356
#, gcc-internal-format, gfc-internal-format
msgid "%s"
msgstr "%s"

#: directives.cc:1773
#, gcc-internal-format, gfc-internal-format
msgid "invalid #%s directive"
msgstr "virheellinen #%s-direktiivi"

#: directives.cc:1836
#, fuzzy, gcc-internal-format
#| msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgid "registering pragmas in namespace %qs with mismatched name expansion"
msgstr "rekisteröidään pragmat nimiavaruudessa ”%s” epäsopivalla nimenlavennuksella"

#: directives.cc:1845
#, fuzzy, gcc-internal-format
#| msgid "registering pragma \"%s\" with name expansion and no namespace"
msgid "registering pragma %qs with name expansion and no namespace"
msgstr "rekisteröidään pragma ”%s” nimenlavennuksella ja ilman nimiavaruutta"

#: directives.cc:1863
#, fuzzy, gcc-internal-format
#| msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgid "registering %qs as both a pragma and a pragma namespace"
msgstr "rekisteröidään ”%s” sekä pragmana että pragma-nimiavaruutena"

#: directives.cc:1866
#, fuzzy, gcc-internal-format
#| msgid "#pragma %s %s is already registered"
msgid "%<#pragma %s %s%> is already registered"
msgstr "#pragma %s %s on jo rekisteröity"

#: directives.cc:1869
#, fuzzy, gcc-internal-format
#| msgid "#pragma %s is already registered"
msgid "%<#pragma %s%> is already registered"
msgstr "#pragma %s on jo rekisteröity"

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

#: directives.cc:2118
#, fuzzy, gcc-internal-format
#| msgid "#pragma once in main file"
msgid "%<#pragma once%> in main file"
msgstr "#pragma once päätiedostossa"

#: directives.cc:2188
#, fuzzy, gcc-internal-format
#| msgid "invalid #pragma push_macro directive"
msgid "invalid %<#pragma %s_macro%> directive"
msgstr "virheellinen #pragma push_macro -direktiivi"

#  poison tarkoittaa, että makroa tai direktiiviä ei koskaan määritellä tai käytetä
#: directives.cc:2267
#, fuzzy, gcc-internal-format
#| msgid "invalid #pragma GCC poison directive"
msgid "invalid %<#pragma GCC poison%> directive"
msgstr "virheellinen #pragma GCC poison -direktiivi"

#: directives.cc:2276
#, fuzzy, gcc-internal-format
#| msgid "poisoning existing macro \"%s\""
msgid "poisoning existing macro %qs"
msgstr "myrkytetään olemassa oleva makro ”%s”"

#: directives.cc:2298
#, fuzzy, gcc-internal-format
#| msgid "#pragma system_header ignored outside include file"
msgid "%<#pragma system_header%> ignored outside include file"
msgstr "#pragma system_header ohitetaan otsaketiedoston ulkopuolella"

#: directives.cc:2323
#, gcc-internal-format, gfc-internal-format
msgid "cannot find source file %s"
msgstr "lähdetiedostoa %s ei löydy"

#: directives.cc:2327
#, gcc-internal-format, gfc-internal-format
msgid "current file is older than %s"
msgstr "nykyinen tiedosto on vanhempi kuin %s"

#: directives.cc:2351
#, fuzzy, gcc-internal-format
#| msgid "invalid \"#pragma GCC %s\" directive"
msgid "invalid %<#pragma GCC %s%> directive"
msgstr "virheellinen ”#pragma GCC %s” -direktiivi"

#: directives.cc:2571
#, fuzzy, gcc-internal-format
#| msgid "_Pragma takes a parenthesized string literal"
msgid "%<_Pragma%> takes a parenthesized string literal"
msgstr "_Pragma ottaa sulkeilla ympäröidyn merkkijonoliteraalin"

#: directives.cc:2654
#, fuzzy, gcc-internal-format
#| msgid "#else without #if"
msgid "%<#else%> without %<#if%>"
msgstr "#else ilman #if:iä"

#: directives.cc:2659
#, fuzzy, gcc-internal-format
#| msgid "#else after #else"
msgid "%<#else%> after %<#else%>"
msgstr "#else #else:n jälkeen"

#: directives.cc:2661 directives.cc:2696
msgid "the conditional began here"
msgstr "ehtolause alkoi tästä"

#: directives.cc:2687
#, fuzzy, gcc-internal-format
#| msgid "#else without #if"
msgid "%<#%s%> without %<#if%>"
msgstr "#else ilman #if:iä"

#: directives.cc:2693
#, fuzzy, gcc-internal-format
#| msgid "#else after #else"
msgid "%<#%s%> after %<#else%>"
msgstr "#else #else:n jälkeen"

#: directives.cc:2797
#, fuzzy, gcc-internal-format
#| msgid "#endif without #if"
msgid "%<#endif%> without %<#if%>"
msgstr "#endif ilman #if:iä"

#: directives.cc:2882
#, fuzzy, gcc-internal-format
#| msgid "missing '(' after predicate"
msgid "missing %<(%> after predicate"
msgstr "’(’ puuttuu predikaatin jäljestä"

#: directives.cc:2900
#, fuzzy, gcc-internal-format
#| msgid "missing ')' to complete answer"
msgid "missing %<)%> to complete answer"
msgstr "’)’ puuttuu vastauksen täydentämisestä"

#: directives.cc:2912
#, fuzzy, gcc-internal-format
#| msgid "predicate's answer is empty"
msgid "predicate%'s answer is empty"
msgstr "predikaatin vastaus on tyhjä"

#: directives.cc:2942
msgid "assertion without predicate"
msgstr "väite ilman predikaattia"

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

#: directives.cc:3027
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" re-asserted"
msgid "%qs re-asserted"
msgstr "”%s” väitetty uudelleen"

#: directives.cc:3341
#, gcc-internal-format, gfc-internal-format
msgid "unterminated #%s"
msgstr "päättämätön #%s"

#: errors.cc:353 errors.cc:368
#, gcc-internal-format, gfc-internal-format
msgid "%s: %s"
msgstr "%s: %s"

#: errors.cc:366
msgid "stdout"
msgstr "vakiotuloste"

#: expr.cc:694 expr.cc:822
msgid "fixed-point constants are a GCC extension"
msgstr "kiintopistevakiot ovat GCC-laajennos"

#: expr.cc:721
#, fuzzy, gcc-internal-format
#| msgid "invalid prefix \"0b\" for floating constant"
msgid "invalid prefix %<0b%> for floating constant"
msgstr "virheellinen etuliite ”0b” liukulukuvakiolle"

#: expr.cc:727
#, fuzzy, gcc-internal-format
#| msgid "invalid prefix \"0b\" for floating constant"
msgid "invalid prefix %<0o%> for floating constant"
msgstr "virheellinen etuliite ”0b” liukulukuvakiolle"

#: expr.cc:740
msgid "use of C++17 hexadecimal floating constant"
msgstr "C++17:n heksadesimaaliliukulukuvakion käyttö"

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

#: expr.cc:789
#, fuzzy, gcc-internal-format
#| msgid "invalid suffix \"%.*s\" on floating constant"
msgid "invalid suffix %<%.*s%> on floating constant"
msgstr "virheellinen loppuliite ”%.*s” liukulukuvakiolla"

#: expr.cc:800 expr.cc:870
#, fuzzy, gcc-internal-format
#| msgid "traditional C rejects the \"%.*s\" suffix"
msgid "traditional C rejects the %<%.*s%> suffix"
msgstr "perinteinen C ei salli ”%.*s”-loppuliitettä"

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

#: expr.cc:815
#, fuzzy, gcc-internal-format
#| msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgid "invalid suffix %<%.*s%> with hexadecimal floating constant"
msgstr "virheellinen loppuliite ”%.*s” heksadesimaalisella liukulukuvakiolla"

#: expr.cc:829 expr.cc:833
#, fuzzy
#| msgid "decimal float constants are a C2X feature"
msgid "decimal floating constants are a C23 feature"
msgstr "desimaali-float-vakiot ovat C2X-ominaisuus"

#: expr.cc:853
#, fuzzy, gcc-internal-format
#| msgid "invalid suffix \"%.*s\" on integer constant"
msgid "invalid suffix %<%.*s%> on integer constant"
msgstr "virheellinen loppuliite ”%.*s” kokonaislukuvakiolla"

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

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

#: expr.cc:894
#, fuzzy, gcc-internal-format
#| msgid "use of C++11 long long integer constant"
msgid "use of C++23 %<size_t%> integer constant"
msgstr "C++11:n long long -kokonaislukuvakion käyttö"

#: expr.cc:895
#, fuzzy, gcc-internal-format
#| msgid "use of C++11 long long integer constant"
msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
msgstr "C++11:n long long -kokonaislukuvakion käyttö"

#: expr.cc:905 expr.cc:916
#, gcc-internal-format
msgid "ISO C does not support literal %<wb%> suffixes before C23"
msgstr ""

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

#: expr.cc:939
#, fuzzy
#| msgid "binary constants are a C++14 feature or GCC extension"
msgid "imaginary constants are a C2Y feature or GCC extension"
msgstr "binäärivakiot ovat C++14:n ominaisuus tai GCC-laajennos"

#: expr.cc:944
#, fuzzy
#| msgid "imaginary constants are a GCC extension"
msgid "imaginary constants are a C2Y feature"
msgstr "imaginäärivakiot ovat GCC-laajennos"

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

#: expr.cc:961
#, fuzzy
#| msgid "binary constants are a C++14 feature or GCC extension"
msgid "binary constants are a C23 feature or GCC extension"
msgstr "binäärivakiot ovat C++14:n ominaisuus tai GCC-laajennos"

#: expr.cc:966
#, fuzzy
#| msgid "binary constants are a GCC extension"
msgid "binary constants are a C23 feature"
msgstr "binäärivakiot ovat GCC-laajennos"

#: expr.cc:974
#, fuzzy, gcc-internal-format
#| msgid "binary constants are a C++14 feature or GCC extension"
msgid "%<0o%> prefixed constants are a C2Y feature or GCC extension"
msgstr "binäärivakiot ovat C++14:n ominaisuus tai GCC-laajennos"

#: expr.cc:979
#, fuzzy, gcc-internal-format
#| msgid "decimal float constants are a C2X feature"
msgid "%<0o%> prefixed constants are a C2Y feature"
msgstr "desimaali-float-vakiot ovat C2X-ominaisuus"

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

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

#: expr.cc:1189
#, gcc-internal-format
msgid "%<defined%> in %<#embed%> parameter"
msgstr ""

#: expr.cc:1206
#, fuzzy, gcc-internal-format
#| msgid "missing ')' after \"defined\""
msgid "missing %<)%> after %<defined%>"
msgstr "’)’ puuttuu ”defined”-sanan jäljestä"

#: expr.cc:1213
#, fuzzy, gcc-internal-format
#| msgid "operator \"defined\" requires an identifier"
msgid "operator %<defined%> requires an identifier"
msgstr "operaattori ”defined” vaatii tunnisteen"

#: expr.cc:1221
#, fuzzy, gcc-internal-format
#| msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgid "(%qs is an alternative token for %qs in C++)"
msgstr "(”%s” on vaihtoehtoinen symboli ”%s”:lle C++:ssa)"

#: expr.cc:1234
#, fuzzy, gcc-internal-format
#| msgid "this use of \"defined\" may not be portable"
msgid "this use of %<defined%> may not be portable"
msgstr "tämä ”defined”-sanan käyttö ei ehkä ole siirrettävää"

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

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

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

#: expr.cc:1339
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" is not defined, evaluates to 0"
msgid "%qs is not defined, evaluates to %<0%>"
msgstr "”%s” on määrittelemättä, evaluoituu 0:ksi"

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

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

# %s on #if tai #elif
#: expr.cc:1629
#, gcc-internal-format, gfc-internal-format
msgid "unbalanced stack in %s"
msgstr "tasapainoton pino %s:ssä"

#: expr.cc:1643
msgid "negative embed parameter operand"
msgstr ""

#: expr.cc:1649
msgid "too large embed parameter operand"
msgstr ""

#: expr.cc:1668
#, gcc-internal-format, gfc-internal-format
msgid "impossible operator '%u'"
msgstr "mahdoton operaattori ’%u’"

#: expr.cc:1769
#, fuzzy, gcc-internal-format
#| msgid "missing ')' in expression"
msgid "missing %<)%> in expression"
msgstr "’)’ puuttuu lausekkeesta"

#: expr.cc:1798
#, fuzzy, gcc-internal-format
#| msgid "'?' without following ':'"
msgid "%<?%> without following %<:%>"
msgstr "’?’ ilman sitä seuraavaa ’:’-merkkiä"

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

#: expr.cc:1813
#, fuzzy, gcc-internal-format
#| msgid "missing '(' in expression"
msgid "missing %<(%> in expression"
msgstr "’(’ puuttuu lausekkeesta"

#: expr.cc:1845
#, fuzzy, gcc-internal-format
#| msgid "the left operand of \"%s\" changes sign when promoted"
msgid "the left operand of %qs changes sign when promoted"
msgstr "”%s”:n vasen operandi vaihtaa ylennettäessä etumerkkiään"

#: expr.cc:1850
#, fuzzy, gcc-internal-format
#| msgid "the right operand of \"%s\" changes sign when promoted"
msgid "the right operand of %qs changes sign when promoted"
msgstr "”%s”:n oikea operandi vaihtaa ylennettäessä etumerkkiään"

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

#: expr.cc:2227
#, fuzzy, gcc-internal-format, gfc-internal-format
#| msgid "comma operator in operand of #if"
msgid "comma operator in operand of #%s"
msgstr "pilkkuoperaattori #if:in operandissa"

#: expr.cc:2365
#, fuzzy, gcc-internal-format, gfc-internal-format
#| msgid "division by zero in #if"
msgid "division by zero in #%s"
msgstr "jako nollalla #if-ehdossa"

#: files.cc:531
#, fuzzy, gcc-internal-format
#| msgid "NULL directory in find_file"
msgid "NULL directory in %<find_file%>"
msgstr "NULL-hakemisto funktiossa find_file"

#: files.cc:604
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.cc:608
#, fuzzy, gcc-internal-format
#| msgid "use -Winvalid-pch for more information"
msgid "use %<-Winvalid-pch%> for more information"
msgstr "käytä valitsinta -Winvalid-pch lisätietojen saamiseksi"

#: files.cc:738 files.cc:1695
#, gcc-internal-format, gfc-internal-format
msgid "%s is a block device"
msgstr "%s on lohkolaite"

#: files.cc:757 files.cc:1295 files.cc:1321 files.cc:1726 files.cc:1796
#, gcc-internal-format, gfc-internal-format
msgid "%s is too large"
msgstr "%s on liian suuri"

#: files.cc:797 files.cc:1817
#, gcc-internal-format, gfc-internal-format
msgid "%s is shorter than expected"
msgstr "%s on odotettua lyhyempi"

#: files.cc:1124
#, gcc-internal-format, gfc-internal-format
msgid "no include path in which to search for %s"
msgstr "ei include-polkua, josta etsiä tiedostoa %s"

#: files.cc:1489
#, gcc-internal-format
msgid "%<gnu::base64%> parameter can be only used with %<\".\"%>"
msgstr ""

#: files.cc:1506
#, gcc-internal-format
msgid "%<gnu::base64%> argument not valid base64 encoded string"
msgstr ""

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

#: files.cc:2340
#, gcc-internal-format
msgid "header guard %qs followed by %<#define%> of a different macro"
msgstr ""

#: files.cc:2344
#, gcc-internal-format
msgid "%qs is defined here; did you mean %qs?"
msgstr ""

#: init.cc:687
#, fuzzy, gcc-internal-format
#| msgid "cppchar_t must be an unsigned type"
msgid "%<cppchar_t%> must be an unsigned type"
msgstr "cppchar_t:n on oltava etumerkitön tyyppi"

#: init.cc:691
#, gcc-internal-format, gfc-internal-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.cc:698
#, fuzzy, gcc-internal-format
#| msgid "CPP arithmetic must be at least as precise as a target int"
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.cc:702
#, fuzzy, gcc-internal-format
#| msgid "target char is less than 8 bits wide"
msgid "target %<char%> is less than 8 bits wide"
msgstr "kohteen char-tyyppi on alle 8 bittiä leveä"

#: init.cc:706
#, fuzzy, gcc-internal-format
#| msgid "target wchar_t is narrower than target char"
msgid "target %<wchar_t%> is narrower than target %<char%>"
msgstr "kohteen wchar_t-tyyppi on kapeampi kuin kohteen char-tyyppi"

#: init.cc:710
#, fuzzy, gcc-internal-format
#| msgid "target int is narrower than target char"
msgid "target %<int%> is narrower than target %<char%>"
msgstr "kohteen int-tyyppi on kapeampi kuin kohteen char-tyyppi"

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

#: init.cc:719
#, gcc-internal-format, gfc-internal-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.cc:1104
msgid "backslash and newline separated by space"
msgstr "kenoviiva ja rivinvaihto erotettu välilyönnillä"

#: lex.cc:1109 lex.cc:1145
msgid "trailing whitespace"
msgstr ""

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

#: lex.cc:1132
#, fuzzy, gcc-internal-format
#| msgid "trigraph ??%c converted to %c"
msgid "trigraph %<??%c%> converted to %<%c%>"
msgstr "kolmoismerkki ??%c muunnettu merkiksi %c"

#: lex.cc:1138
#, fuzzy, gcc-internal-format
#| msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgid "trigraph %<??%c%> ignored, use %<-trigraphs%> to enable"
msgstr "kolmoismerkki ??%c ohitettiin, ota käyttöön valitsimella -trigraphs"

#: lex.cc:1149
msgid "too many consecutive spaces in leading whitespace"
msgstr ""

#: lex.cc:1154
msgid "tab after space in leading whitespace"
msgstr ""

#: lex.cc:1161
msgid "whitespace other than spaces in leading whitespace"
msgstr ""

#: lex.cc:1167
msgid "whitespace other than tabs in leading whitespace"
msgstr ""

#: lex.cc:1173
msgid "whitespace other than spaces and tabs in leading whitespace"
msgstr ""

#: lex.cc:1625
msgid "end of bidirectional context"
msgstr ""

#: lex.cc:1666
msgid "unpaired UTF-8 bidirectional control characters detected"
msgstr ""

#: lex.cc:1670
msgid "unpaired UTF-8 bidirectional control character detected"
msgstr ""

#: lex.cc:1708
#, gcc-internal-format
msgid "UTF-8 vs UCN mismatch when closing a context by %qs"
msgstr ""

#: lex.cc:1717
#, gcc-internal-format
msgid "%qs is closing an unopened context"
msgstr ""

#: lex.cc:1721
#, gcc-internal-format
msgid "found problematic Unicode character %qs"
msgstr ""

#: lex.cc:1751 lex.cc:1757
#, gcc-internal-format
msgid "invalid UTF-8 character %<<%x>%>"
msgstr ""

#: lex.cc:1767 lex.cc:1773
#, gcc-internal-format
msgid "invalid UTF-8 character %<<%x><%x>%>"
msgstr ""

#: lex.cc:1783 lex.cc:1789
#, gcc-internal-format
msgid "invalid UTF-8 character %<<%x><%x><%x>%>"
msgstr ""

#: lex.cc:1799 lex.cc:1805
#, gcc-internal-format
msgid "invalid UTF-8 character %<<%x><%x><%x><%x>%>"
msgstr ""

#: lex.cc:1887
#, fuzzy, gcc-internal-format
#| msgid "\"/*\" within comment"
msgid "%</*%> within comment"
msgstr "”/*” kommentin sisällä"

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

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

#  NFKC-muodossa Unicode-merkki ilmaistaan nelinumeroisella heksadesimaaliluvulla
#: lex.cc:2066
#, fuzzy, gcc-internal-format
#| msgid "`%.*s' is not in NFKC"
msgid "%<%.*s%> is not in NFKC"
msgstr "”%.*s” ei ole NFKC-muodossa"

#  NFC-muodossa Unicode-merkki ilmaistaan nelinumeroisella heksadesimaaliluvulla
#: lex.cc:2069 lex.cc:2072
#, fuzzy, gcc-internal-format
#| msgid "`%.*s' is not in NFC"
msgid "%<%.*s%> is not in NFC"
msgstr "”%.*s” ei ole NFC-muodossa"

#: lex.cc:2161
#, fuzzy, gcc-internal-format
#| msgid "__VA_OPT__ is not available until C++2a"
msgid "%<__VA_OPT__%> is not available until C++20"
msgstr "__VA_OPT__ ei ole saatavilla ennen C++2a:ta"

#: lex.cc:2164
#, fuzzy, gcc-internal-format
#| msgid "__VA_OPT__ is not available until C++2a"
msgid "%<__VA_OPT__%> is not available until C23"
msgstr "__VA_OPT__ ei ole saatavilla ennen C++2a:ta"

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: lex.cc:2172
#, fuzzy, gcc-internal-format
#| msgid "__VA_OPT__ can only appear in the expansion of a C++2a variadic macro"
msgid "%<__VA_OPT__%> can only appear in the expansion of a C++20 variadic macro"
msgstr "__VA_OPT__ voi esiintyä vain C++2a:n variadisen makron lavennoksessa"

#  poison tarkoittaa, että makroa tai direktiiviä ei koskaan määritellä tai käytetä
#: lex.cc:2189
#, fuzzy, gcc-internal-format
#| msgid "attempt to use poisoned \"%s\""
msgid "attempt to use poisoned %qs"
msgstr "myrkytetyn makron ”%s” käyttöyritys"

#: lex.cc:2194
msgid "poisoned here"
msgstr ""

#  Variadic-makro on sellainen makro, jonka argumenttien lukumäärä voi vaihdella.
#: lex.cc:2204
#, fuzzy, gcc-internal-format
#| msgid "__VA_ARGS__ can only appear in the expansion of a C++11 variadic macro"
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.cc:2208
#, fuzzy, gcc-internal-format
#| msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
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.cc:2220
#, fuzzy, gcc-internal-format
#| msgid "identifier \"%s\" is a special operator name in C++"
msgid "identifier %qs is a special operator name in C++"
msgstr "tunniste ”%s” on operaattorin nimi C++:ssa"

#: lex.cc:2356
msgid "adjacent digit separators"
msgstr ""

#: lex.cc:2505
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.cc:2727
msgid "raw string delimiter longer than 16 characters"
msgstr "raa’an merkkijonon erotin pitempi kuin 16 merkkiä"

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

#: lex.cc:2735 lex.cc:5709
#, gcc-internal-format, gfc-internal-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "virheellinen merkki ’%c’ raa’an merkkijonon erottimessa"

#: lex.cc:2774 lex.cc:2797
msgid "unterminated raw string"
msgstr "päättämätön raaka merkkijono"

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

#: lex.cc:2957
#, gcc-internal-format, gfc-internal-format
msgid "missing terminating %c character"
msgstr "päättävä merkki %c puuttuu"

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

#: lex.cc:3584
msgid "module control-line cannot be in included file"
msgstr ""

#: lex.cc:3598
#, gcc-internal-format
msgid "module control-line %qs cannot be an object-like macro"
msgstr ""

#: lex.cc:3636
#, gcc-internal-format
msgid "module name %qs cannot be an object-like macro"
msgstr ""

#: lex.cc:3642
#, gcc-internal-format
msgid "module partition %qs cannot be an object-like macro"
msgstr ""

#: lex.cc:3663
#, gcc-internal-format
msgid "module name followed by %<(%>"
msgstr ""

#: lex.cc:3667
#, gcc-internal-format
msgid "module partition followed by %<(%>"
msgstr ""

#: lex.cc:4073 lex.cc:5542 traditional.cc:174
msgid "unterminated comment"
msgstr "päättämätön kommentti"

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

#: lex.cc:4090 lex.cc:4101 lex.cc:4125
msgid "(this will be reported only once per input file)"
msgstr "(tästä ilmoitetaan vain kerran syötetiedostoa kohden)"

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

#: lex.cc:4131
msgid "multi-line comment"
msgstr "monirivinen kommentti"

#: lex.cc:4589
#, gcc-internal-format, gfc-internal-format
msgid "unspellable token %s"
msgstr "kirjoitusasuton symboli %s"

#: lex.cc:5697
#, fuzzy, gcc-internal-format, gfc-internal-format
#| msgid "raw string delimiter longer than 16 characters"
msgid "raw string delimiter longer than %d characters"
msgstr "raa’an merkkijonon erotin pitempi kuin 16 merkkiä"

#: lex.cc:5767
#, fuzzy
#| msgid "unterminated #%s"
msgid "unterminated literal"
msgstr "päättämätön #%s"

#: macro.cc:94
msgid "'##' cannot appear at either end of __VA_OPT__"
msgstr "”##” ei voi esiintyä __VA_OPT__-makron kummassakaan päässä"

#: macro.cc:144
#, gcc-internal-format
msgid "%<__VA_OPT__%> may not appear in a %<__VA_OPT__%>"
msgstr ""

#: macro.cc:157
#, gcc-internal-format
msgid "%<__VA_OPT__%> must be followed by an open parenthesis"
msgstr ""

#: macro.cc:235
#, fuzzy, gcc-internal-format
#| msgid "unterminated #%s"
msgid "unterminated %<__VA_OPT__%>"
msgstr "päättämätön #%s"

# Mahdolliset arvot: "form feed", "vertical tab", eivät käännettäviä.
#: macro.cc:396
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" used outside of preprocessing directive"
msgid "%qs used outside of preprocessing directive"
msgstr "”%s” käytössä esikääntäjän direktiivin ulkopuolella"

#: macro.cc:407
#, fuzzy, gcc-internal-format
#| msgid "missing '(' before \"%s\" operand"
msgid "missing %<(%> before %qs operand"
msgstr "’(’ puuttuu ”%s”-operandin edeltä"

#: macro.cc:425
#, fuzzy, gcc-internal-format
#| msgid "operator \"%s\" requires a header-name"
msgid "operator %qs requires a header-name"
msgstr "operaattori ”%s” vaatii otsakemerkkijonon"

#: macro.cc:454
#, fuzzy, gcc-internal-format
#| msgid "missing ')' after \"%s\" operand"
msgid "missing %<)%> after %qs operand"
msgstr "’)’ puuttuu ”%s”-operandin jäljestä"

#: macro.cc:499
#, fuzzy, gcc-internal-format
#| msgid "empty filename in #%s"
msgid "empty filename in %qs"
msgstr "tyhjä tiedostonimi direktiivissä #%s"

#: macro.cc:533
#, fuzzy, gcc-internal-format
#| msgid "macro \"%s\" is not used"
msgid "macro %qs is not used"
msgstr "makroa ”%s” ei käytetä"

#: macro.cc:572 macro.cc:891
#, fuzzy, gcc-internal-format
#| msgid "invalid built-in macro \"%s\""
msgid "invalid built-in macro %qs"
msgstr "virheellinen sisäinen makro ”%s”"

#: macro.cc:579 macro.cc:687
#, fuzzy, gcc-internal-format
#| msgid "macro \"%s\" might prevent reproducible builds"
msgid "macro %qs might prevent reproducible builds"
msgstr "makro ”%s” saattaa estää toistettavat käännökset"

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

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

#: macro.cc:733
#, fuzzy, gcc-internal-format
#| msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgid "%<__COUNTER__%> expanded inside directive with %<-fdirectives-only%>"
msgstr "__COUNTER__ lavennettu direktiivin sisällä valitsimella -fdirectives-only"

#: macro.cc:738
#, gcc-internal-format
msgid "%<__COUNTER__%> expanded more than 2147483648 times"
msgstr ""

#: macro.cc:763
#, fuzzy, gcc-internal-format
#| msgid "suggest not using #elif in traditional C"
msgid "%<__has_embed%> not supported in traditional C"
msgstr "ehdotetaan #elif:in käytön välttämistä perinteisessä C:ssä"

#: macro.cc:1013
#, fuzzy, gcc-internal-format
#| msgid "invalid string literal, ignoring final '\\'"
msgid "invalid string literal, ignoring final %<\\%>"
msgstr "virheellinen merkijonoliteraali, ohitetaan viimeinen ’\\’"

#: macro.cc:1077
#, fuzzy, gcc-internal-format
#| msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
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.cc:1209
#, fuzzy, gcc-internal-format
#| msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
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.cc:1213
#, fuzzy, gcc-internal-format
#| msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
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.cc:1220
#, fuzzy, gcc-internal-format
#| msgid "macro \"%s\" requires %u arguments, but only %u given"
msgid "macro %qs requires %u arguments, but only %u given"
msgstr "makro ”%s” vaatii %u argumenttia, mutta vain %u on annettu"

#: macro.cc:1225
#, fuzzy, gcc-internal-format
#| msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgid "macro %qs passed %u arguments, but takes just %u"
msgstr "makrolle ”%s” annettu %u argumenttia, mutta se ottaa vain %u"

#: macro.cc:1229
#, gcc-internal-format
msgid "macro %qs defined here"
msgstr ""

#: macro.cc:1423 traditional.cc:822
#, fuzzy, gcc-internal-format
#| msgid "unterminated argument list invoking macro \"%s\""
msgid "unterminated argument list invoking macro %qs"
msgstr "päättämätön argumenttiluettelo ”%s”-makron kutsussa"

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

#: macro.cc:2404
#, gcc-internal-format, gfc-internal-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.cc:2412 macro.cc:2421
#, gcc-internal-format, gfc-internal-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.cc:3244
#, gcc-internal-format
msgid "%qc in module name or partition comes from or after macro expansion"
msgstr ""

#: macro.cc:3494
#, fuzzy, gcc-internal-format
#| msgid "duplicate macro parameter \"%s\""
msgid "duplicate macro parameter %qs"
msgstr "kahdenkertainen makroparametri ”%s”"

#: macro.cc:3576
#, fuzzy, gcc-internal-format
#| msgid "expected parameter name, found \"%s\""
msgid "expected parameter name, found %qs"
msgstr "odotettiin parametrin nimeä, löytyi ”%s”"

#: macro.cc:3577
#, fuzzy, gcc-internal-format
#| msgid "expected ',' or ')', found \"%s\""
msgid "expected %<,%> or %<)%>, found %qs"
msgstr "odotettiin ”,” tai ”)”, löytyi ”%s”"

#: macro.cc:3578
msgid "expected parameter name before end of line"
msgstr "odotettiin parametrin nimeä ennen rivin loppua"

#: macro.cc:3579
#, fuzzy, gcc-internal-format
#| msgid "expected ')' before end of line"
msgid "expected %<)%> before end of line"
msgstr "odotettiin tulevan ”)” ennen rivin loppua"

#: macro.cc:3580
#, fuzzy, gcc-internal-format
#| msgid "expected ')' after \"...\""
msgid "expected %<)%> after %<...%>"
msgstr "odotettiin ”...”:n jälkeen tulevan ”)”"

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

#: macro.cc:3639 macro.cc:3643
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonyymit variadiset makrot esiteltiin C99:ssä"

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

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

#: macro.cc:3696
#, fuzzy, gcc-internal-format
#| msgid "'##' cannot appear at either end of a macro expansion"
msgid "%<##%> cannot appear at either end of a macro expansion"
msgstr "”##” ei voi esiintyä makrolavennuksen kummassakaan päässä"

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

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

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

#: macro.cc:3812
#, fuzzy, gcc-internal-format
#| msgid "'#' is not followed by a macro parameter"
msgid "%<#%> is not followed by a macro parameter"
msgstr "”#” ilman sitä seuraavaa makroparametria"

#: macro.cc:3976 macro.cc:3980
#, gcc-internal-format
msgid "keyword %qs defined as macro"
msgstr ""

#: macro.cc:3996
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" redefined"
msgid "%qs redefined"
msgstr "”%s” määritelty uudelleen"

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

#: macro.cc:4009
#, fuzzy, gcc-internal-format
#| msgid "\"%s\" redefined"
msgid "%qs defined"
msgstr "”%s” määritelty uudelleen"

#: macro.cc:4143
#, fuzzy, gcc-internal-format
#| msgid "macro argument \"%s\" would be stringified in traditional C"
msgid "macro argument %qs would be stringified in traditional C"
msgstr "makron argumentti ”%s” merkkijonostettaisiin perinteisessä C:ssä"

#: pch.cc:90 pch.cc:342 pch.cc:356 pch.cc:374 pch.cc:380 pch.cc:389 pch.cc:396
msgid "while writing precompiled header"
msgstr "kirjoitettaessa esikäännettyä otsaketta"

#: pch.cc:616
#, fuzzy, gcc-internal-format
#| msgid "%s: not used because `%.*s' is poisoned"
msgid "%s: not used because %<%.*s%> is poisoned"
msgstr "%s: ei käytetä, koska ”%.*s” on myrkytetty"

#: pch.cc:638
#, fuzzy, gcc-internal-format
#| msgid "%s: not used because `%.*s' not defined"
msgid "%s: not used because %<%.*s%> not defined"
msgstr "%s: ei käytetä, koska ”%.*s” on määrittelemättä"

#: pch.cc:650
#, fuzzy, gcc-internal-format
#| msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgid "%s: not used because %<%.*s%> defined as %qs not %<%.*s%>"
msgstr "%s: ei käytetä, koska ”%.*s” on määritelty arvoon ”%s” eikä ”%.*s”"

#: pch.cc:693
#, fuzzy, gcc-internal-format
#| msgid "%s: not used because `%s' is defined"
msgid "%s: not used because %qs is defined"
msgstr "%s: ei käytetä, koska ”%s” on määritelty"

#: pch.cc:713
#, fuzzy, gcc-internal-format
#| msgid "%s: not used because `__COUNTER__' is invalid"
msgid "%s: not used because %<__COUNTER__%> is invalid"
msgstr "%s: ei käytetä, koska ”__COUNTER__” on virheellinen"

#: pch.cc:722 pch.cc:968
msgid "while reading precompiled header"
msgstr "luettaessa esikäännettyä otsaketta"

#: traditional.cc:891
#, fuzzy, gcc-internal-format
#| msgid "detected recursion whilst expanding macro \"%s\""
msgid "detected recursion whilst expanding macro %qs"
msgstr "havaittiin rekursio lavennettaessa makroa ”%s”"

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

#~ msgid "character constant too long for its type"
#~ msgstr "merkkivakio on liian pitkä tyypilleen"

#~ msgid "invalid #pragma pop_macro directive"
#~ msgstr "virheellinen #pragma pop_macro -direktiivi"

#~ msgid "#elif without #if"
#~ msgstr "#elif ilman #if:iä"

#~ msgid "#elif after #else"
#~ msgstr "#elif #else:n jälkeen"

#~ msgid "\"__has_include__\" cannot be used as a macro name"
#~ msgstr "”__has_include__” ei ole kelvollinen makron nimi"

#~ msgid "#include nested too deeply"
#~ msgstr "liikaa sisäkkäisiä #include:ja"

#~ msgid "missing ')' after \"__has_include__\""
#~ msgstr "’)’ puuttuu ”__has_include__”-sanan jäljestä"

#~ msgid "\"%s\" may not appear in macro parameter list"
#~ msgstr "”%s” ei saa esiintyä makron parametriluettelossa"

#~ msgid "macro parameters must be comma-separated"
#~ msgstr "makron parametrien on oltava pilkuin eroteltuja"

#~ msgid "parameter name missing"
#~ msgstr "parametrin nimi puuttuu"

#~ msgid "missing ')' in macro parameter list"
#~ msgstr "’)’ puuttuu makron parametriluettelosta"

#~ msgid "invalid hash type %d in cpp_macro_definition"
#~ msgstr "virheellinen hash-tyyppi %d funktiossa cpp_macro_definition"

#  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ää ’?’"
