# Pesan bahasa indonesia untuk cpplib
# Copyright (C) 2008 Free Software Foundation, Inc.
# This file is distributed under the same license as the gcc package.
# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 4.5-b20100204\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2021-02-05 21:38+0000\n"
"PO-Revision-Date: 2010-02-05 19:00+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"

#: charset.c:677
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "konversi dari %s ke %s tidak didukung oleh iconv"

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

#: charset.c:688
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "tidak ada implementasi iconv, tidak dapat mengubah dari %s ke %s"

#: charset.c:784
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "karakter 0x%lx tidak dalam sumber dasar set karaketer\n"

#: charset.c:801 charset.c:1771
msgid "converting to execution character set"
msgstr "mengubah ke eksekusi set karakter"

#: charset.c:807
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "karakter 0x%lx bukan unibyte dalam eksekusi set karakter"

#: charset.c:1057
msgid "universal character names are only valid in C++ and C99"
msgstr "nama karakter universal  hanya valid dalam C++ dan C99"

#: charset.c:1061
#, fuzzy
#| msgid "universal character names are only valid in C++ and C99"
msgid "C99's universal character names are incompatible with C90"
msgstr "nama karakter universal  hanya valid dalam C++ dan C99"

#: charset.c:1064
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "arti dari '\\%c' berbeda dalam tradisional C"

#: charset.c:1073
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "Dalam _cpp_valid_ucn tetapi bukan sebuah UCN"

#: charset.c:1106
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "nama karakter universal %.*s tidak lengkap"

#: charset.c:1121
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "%.*s bukan sebuah karakter universal yang valid"

#: charset.c:1131 lex.c:1335
msgid "'$' in identifier or number"
msgstr "'$' dalam identifier atau angka"

#: charset.c:1141
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "karakter universal %.*s tidak valid dalam sebuah pengidentifikasi"

#: charset.c:1145
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "karakter universal %.*s tidak valid di awal dari sebuah pengidentifikasi"

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

#: charset.c:1197 charset.c:2116
msgid "converting UCN to source character set"
msgstr "mengubah UCN ke set karakter asal"

#: charset.c:1204
msgid "converting UCN to execution character set"
msgstr "mengubah UCN ke set karakter eksekusi"

#: charset.c:1268
#, fuzzy, c-format
#| msgid "universal character %.*s is not valid in an identifier"
msgid "extended character %.*s is not valid in an identifier"
msgstr "karakter universal %.*s tidak valid dalam sebuah pengidentifikasi"

#: charset.c:1285
#, fuzzy, c-format
#| msgid "universal character %.*s is not valid at the start of an identifier"
msgid "extended character %.*s is not valid at the start of an identifier"
msgstr "karakter universal %.*s tidak valid di awal dari sebuah pengidentifikasi"

#: charset.c:1371
msgid "the meaning of '\\x' is different in traditional C"
msgstr "arti dari '\\x' berbeda dalam tradisional C"

#: charset.c:1396
msgid "\\x used with no following hex digits"
msgstr "\\x digunakan dengan tidak mengikuti hex digits"

#: charset.c:1403
msgid "hex escape sequence out of range"
msgstr "hex escape sequence diluar dari jangkauan"

#: charset.c:1455
msgid "octal escape sequence out of range"
msgstr "oktal escape sequence diluar dari jangkauan"

#: charset.c:1537
msgid "the meaning of '\\a' is different in traditional C"
msgstr "arti dari '\\a' berbeda dalam tradisional C"

#: charset.c:1544
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "bukan ISO standar escape sequence, '\\%c'"

#: charset.c:1552
#, c-format
msgid "unknown escape sequence: '\\%c'"
msgstr "escape sequence: '\\%c' tidak diketahui"

#: charset.c:1560
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "escape sequence: '\\%s' tidak diketahui"

#: charset.c:1568
msgid "converting escape sequence to execution character set"
msgstr "mengubah escape sequence ke set karakter eksekusi"

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

#: charset.c:1926 charset.c:2005
msgid "character constant too long for its type"
msgstr "konstanta karakter terlalu panjang untuk tipenya"

#: charset.c:1929
msgid "multi-character character constant"
msgstr "konstanta karakter multi-karakter"

#: charset.c:2045
msgid "empty character constant"
msgstr "konstanta karakter kosong"

#: charset.c:2163
#, c-format
msgid "failure to convert %s to %s"
msgstr "gagal untuk mengubah %s ke %s"

#: directives.c:229 directives.c:272
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "ekstra token di akhir dari #%s direktif"

#: directives.c:379
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s adalah sebuah ekstensi GCC"

#: directives.c:384
#, c-format
msgid "#%s is a deprecated GCC extension"
msgstr "#%s adalah sebuah ekstensi GCC yang sudah ditinggalkan"

#: directives.c:397
msgid "suggest not using #elif in traditional C"
msgstr "disarankan tidak menggunakan #elif dalam tradisional C"

#: directives.c:400
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "tradisional C mengabaikan #%s dengan # terindentasi"

#: directives.c:404
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "disarankan menyembunyikan #%s dari tradisional C dengan sebuah indentasi #"

#: directives.c:430
msgid "embedding a directive within macro arguments is not portable"
msgstr "embedding sebuah direktif didalam argumen makro yang bukan portabel"

#: directives.c:450
msgid "style of line directive is a GCC extension"
msgstr "gaya dari baris direktif bukan sebuah ekstensi GCC"

#: directives.c:531
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "preprosesing direktif #%s tidak valid"

#: directives.c:601
#, fuzzy, c-format
#| msgid "\"defined\" cannot be used as a macro name"
msgid "\"%s\" cannot be used as a macro name"
msgstr "\"defined\" tidak dapat digunakan sebagai sebuah nama makro"

#: directives.c:608
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "\"%s\" tidak dapat digunakan sebagai sebuah nama makro karena ini adalah sebuah operator dalam C++"

#: directives.c:611
#, c-format
msgid "no macro name given in #%s directive"
msgstr "tidak ada nama makro yang diberikan dalam direktif #%s"

#: directives.c:614
msgid "macro names must be identifiers"
msgstr "nama makro harus berupa pengidentifikasi"

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

#: directives.c:725
msgid "missing terminating > character"
msgstr "hilang karakter pengakhir >"

#: directives.c:784
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s diduga \"NAMA BERKAS\" atau <NAMA BERKAS>"

#: directives.c:830
#, c-format
msgid "empty filename in #%s"
msgstr "nama berkas kosong dalam #%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 ""

#: directives.c:884
msgid "#include_next in primary source file"
msgstr "#include_next dalam berkas kode program utama"

#: directives.c:910
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "tanda \"%s\" tidak valid dalam baris direktif"

#: directives.c:970
msgid "unexpected end of file after #line"
msgstr "tidak terduga akhir dari berkas setelah #line"

#: directives.c:973
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "\"%s\" setelah #line bukan sebuah integer positif"

#: directives.c:979 directives.c:981
msgid "line number out of range"
msgstr "nomor baris diluar dari jangkauan"

#: directives.c:994 directives.c:1075
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "\"%s\" bukan sebuah nama berkas yang valid"

#: directives.c:1035
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "\"%s\" setelah # bukan sebuah integer positif"

#: directives.c:1102
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr ""

#: 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 "direktif #%s tidak valid"

#: directives.c:1271
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "mendaftarkan pragma dalam ruang-nama \"%s\" dengan ekspansi nama yang tidak cocok"

#: directives.c:1280
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "mendaftarkan pragma \"%s\" dengan ekspansi nama dan tidak ada ruang-nama"

#: directives.c:1298
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "mendaftarkan \"%s\" sebagai baik sebuah pragma dan sebuah ruang-nama"

#: directives.c:1301
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s telah terdaftar"

#: directives.c:1304
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s telah terdaftar"

#: directives.c:1334
msgid "registering pragma with NULL handler"
msgstr "mendaftarkan pragma dengan penanganan KOSONG"

#: directives.c:1551
msgid "#pragma once in main file"
msgstr "#pragma sekali dalam berkas utama"

#: directives.c:1574
msgid "invalid #pragma push_macro directive"
msgstr "#pragma push_macro direktif tidak valid"

#: directives.c:1631
msgid "invalid #pragma pop_macro directive"
msgstr "#pragma pop_macro direktif tidak valid"

#: directives.c:1686
msgid "invalid #pragma GCC poison directive"
msgstr "#pragma GCC tidak valid merusak direktif"

#: directives.c:1695
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "merusak makro \"%s\" yang sudah ada"

#: directives.c:1714
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header diabaikan diluar berkas include"

#: directives.c:1739
#, c-format
msgid "cannot find source file %s"
msgstr "tidak dapat menemukan berkas sumber %s"

#: directives.c:1743
#, c-format
msgid "current file is older than %s"
msgstr "berkas ini lebih lama daripada %s"

#: directives.c:1767
#, fuzzy, c-format
#| msgid "invalid #pragma GCC poison directive"
msgid "invalid \"#pragma GCC %s\" directive"
msgstr "#pragma GCC tidak valid merusak direktif"

#: directives.c:1968
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma mengambil sebuah string literal tanda kurung"

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

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

#: directives.c:2058 directives.c:2091
msgid "the conditional began here"
msgstr "kondisional berawal disini"

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

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

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

#: directives.c:2196
msgid "missing '(' after predicate"
msgstr "hilang '(' setelah predikat"

#: directives.c:2214
msgid "missing ')' to complete answer"
msgstr "hilang ')' untuk melengkapi jawaban"

#: directives.c:2226
msgid "predicate's answer is empty"
msgstr "jawaban predikat kosong"

#: directives.c:2256
msgid "assertion without predicate"
msgstr "assertion tanpa predikat"

#: directives.c:2259
msgid "predicate must be an identifier"
msgstr "predikat harus berupa sebuah pengidentifikasi"

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

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

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

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

#: expr.c:636 expr.c:753
msgid "fixed-point constants are a GCC extension"
msgstr "konstanta titik-tetap adalah sebuah ekstensi GCC"

#: expr.c:661
msgid "invalid prefix \"0b\" for floating constant"
msgstr "awalan \"0b\" tidak valid untuk konstanta pecahan"

#: expr.c:674
#, fuzzy
#| msgid "use of C99 hexadecimal floating constant"
msgid "use of C++17 hexadecimal floating constant"
msgstr "penggunaan dari konstanta pecahan heksa desimal C99"

#: expr.c:677
msgid "use of C99 hexadecimal floating constant"
msgstr "penggunaan dari konstanta pecahan heksa desimal C99"

#: expr.c:721
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "akhiran \"%.*s\" tidak valid dalam konstanta pecahan"

#: expr.c:732 expr.c:799
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "dalam tradisi C menolak akhiran \"%.*s\""

#: expr.c:740
msgid "suffix for double constant is a GCC extension"
msgstr "akhiran untuk konstanta ganda adalah sebuah ekstensi GCC"

#: expr.c:746
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "akhiran \"%.*s\" tidak valid dengan konstanta pecahan heksa desimal"

#: expr.c:759 expr.c:763
#, fuzzy
#| msgid "decimal float constants are a GCC extension"
msgid "decimal float constants are a C2X feature"
msgstr "konstanta pecahan desimal adalah sebuah ekstensi GCC"

#: expr.c:782
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "akhiran \"%.*s\" tidak valid dalam konstanta integer"

#: expr.c:807
#, fuzzy
#| msgid "use of C++0x long long integer constant"
msgid "use of C++11 long long integer constant"
msgstr "penggunaan dari konstanta integer long long C++0x"

#: expr.c:808
#, fuzzy
#| msgid "use of C++0x long long integer constant"
msgid "use of C99 long long integer constant"
msgstr "penggunaan dari konstanta integer long long C++0x"

#: expr.c:822
#, fuzzy
#| msgid "use of C++0x long long integer constant"
msgid "use of C++23 %<size_t%> integer constant"
msgstr "penggunaan dari konstanta integer long long C++0x"

#: expr.c:823
#, fuzzy
#| msgid "use of C++0x long long integer constant"
msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
msgstr "penggunaan dari konstanta integer long long C++0x"

#: expr.c:834
msgid "imaginary constants are a GCC extension"
msgstr "konstanta imaginari adalah sebuah ekstensi GCC"

#: expr.c:841
#, fuzzy
#| msgid "binary constants are a GCC extension"
msgid "binary constants are a C++14 feature or GCC extension"
msgstr "konstanta binari adalah sebuah ekstensi GCC"

#: expr.c:843
#, fuzzy
#| msgid "binary constants are a GCC extension"
msgid "binary constants are a C2X feature or GCC extension"
msgstr "konstanta binari adalah sebuah ekstensi GCC"

#: expr.c:848
#, fuzzy
#| msgid "binary constants are a GCC extension"
msgid "binary constants are a C2X feature"
msgstr "konstanta binari adalah sebuah ekstensi GCC"

#: expr.c:944
msgid "integer constant is too large for its type"
msgstr "konstanta integer terlalu besar untuk tipenya"

#: expr.c:975
msgid "integer constant is so large that it is unsigned"
msgstr "konstanta integer terlalu besar yang itu unsigned"

#: expr.c:1070
msgid "missing ')' after \"defined\""
msgstr "hilang ')' setelah \"defined\""

#: expr.c:1077
msgid "operator \"defined\" requires an identifier"
msgstr "operator \"defined\" membutuhkan sebuah pengidentifikasi"

#: expr.c:1085
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(\"%s\" adalah sebuah tanda alternatif untuk \"%s\" dalam C++)"

#: expr.c:1098
msgid "this use of \"defined\" may not be portable"
msgstr "penggunaan ini dari \"defined\" mungkin tidak portabel"

#: expr.c:1143
#, fuzzy
#| msgid "integer overflow in preprocessor expression"
msgid "user-defined literal in preprocessor expression"
msgstr "integer overflow dalam ekspresi preprosesor"

#: expr.c:1148
msgid "floating constant in preprocessor expression"
msgstr "konstanta pecahan dalam ekspresi preprosesor"

#: expr.c:1154
msgid "imaginary number in preprocessor expression"
msgstr "angka imaginari dalam ekspresi preprosesor"

#: expr.c:1203
#, fuzzy, c-format
#| msgid "\"%s\" is not defined"
msgid "\"%s\" is not defined, evaluates to 0"
msgstr "\"%s\" tidak didefinisikan"

#: expr.c:1216
msgid "assertions are a GCC extension"
msgstr "assertions adalah sebuah ekstensi GCC"

#: expr.c:1219
msgid "assertions are a deprecated extension"
msgstr "assertions adalah sebuah ekstensi yang sudah ditinggalkan"

#: expr.c:1465
#, c-format
msgid "unbalanced stack in %s"
msgstr "stack dalam %s tidak seimbang"

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

#: expr.c:1586
msgid "missing ')' in expression"
msgstr "hilang ')' dalam ekspresi"

#: expr.c:1615
msgid "'?' without following ':'"
msgstr "'?' tanpa diikuti ':'"

#: expr.c:1625
msgid "integer overflow in preprocessor expression"
msgstr "integer overflow dalam ekspresi preprosesor"

#: expr.c:1630
msgid "missing '(' in expression"
msgstr "hilang '(' dalam ekspresi"

#: expr.c:1662
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "operan kiri dari \"%s\" berubah tanda ketika dipromosikan"

#: expr.c:1667
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "operan kanan dari \"%s\" berubah tanda ketika dipromosikan"

#: expr.c:1926
msgid "traditional C rejects the unary plus operator"
msgstr "tradisional C menolak operator unary plus"

#: expr.c:2024
msgid "comma operator in operand of #if"
msgstr "operator koma dalam operator dari #if"

#: expr.c:2160
msgid "division by zero in #if"
msgstr "pembagian oleh nol dalam #if"

#: files.c:571
msgid "one or more PCH files were found, but they were invalid"
msgstr "satu atau lebih berkas PCH telah ditemukan, tetapi mereka tidak valid"

#: files.c:575
msgid "use -Winvalid-pch for more information"
msgstr "gunakan -Winvalid-pch untuk informasi lebih lanjut"

#: files.c:1051
#, c-format
msgid "no include path in which to search for %s"
msgstr "tidak ada jalur include yang biasa digunakan untuk pencarian untuk %s"

#: files.c:1546
msgid "Multiple include guards may be useful for:\n"
msgstr "Multiple include guards mungkin berguna untuk:\n"

#: init.c:614
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t harus berupa sebuah tipe unsigned"

#: init.c:618
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "aritmetik preprosesor memiliki presisi maksimal dari %lu bits; target membutuhkan%lu bits"

#: init.c:625
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "aritmetik CPP harus paling tidak sama tepatnya dengan sebuah target int"

#: init.c:628
msgid "target char is less than 8 bits wide"
msgstr "target char lebih kecil dari 8 bits wide"

#: init.c:632
msgid "target wchar_t is narrower than target char"
msgstr "target wchar_t lebih kecil dari target char"

#: init.c:636
msgid "target int is narrower than target char"
msgstr "target int lebih kecil dari target char"

#: init.c:641
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP integer-setengah lebih kecil dari karakter 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 di host ini tidak dapat menangani konstanta karakter lebar diatas %lu bits, tetapi target membutuhkan %lu bits"

#: lex.c:1126
msgid "backslash and newline separated by space"
msgstr "backslash dan baris baru dipisahkan dengan spasi"

#: lex.c:1131
msgid "backslash-newline at end of file"
msgstr "backslash baris baru diakhir dari berkas"

#: lex.c:1147
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "trigraph ??%c diubah ke %c"

#: lex.c:1155
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "trigraph ??%c diabaikan, gunakan -trigraph untuk mengaktifkan"

#: lex.c:1204
msgid "\"/*\" within comment"
msgstr "\"/*\" di dalam komentar"

#: lex.c:1262
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s dalam direktif preprosesing"

#: lex.c:1271
msgid "null character(s) ignored"
msgstr "karakter kosong diabaikan"

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

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

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

#: lex.c:1382
#, fuzzy
#| msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgid "__VA_OPT__ can only appear in the expansion of a C++20 variadic macro"
msgstr "__VA_ARGS__ hanya dapat muncul dalam ekspansi dari sebuah variadik makro C99"

#: lex.c:1413 lex.c:1506
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "mencoba untuk menggunakan terusak \"%s\""

#: lex.c:1423 lex.c:1516
#, fuzzy
#| 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 C++11 variadic macro"
msgstr "__VA_ARGS__ hanya dapat muncul dalam ekspansi dari sebuah variadik makro C99"

#: lex.c:1427 lex.c:1520
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ hanya dapat muncul dalam ekspansi dari sebuah variadik makro C99"

#: lex.c:1437 lex.c:1532
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr "pengidentifikasi \"%s\" adalah nama operator spesial dalam C++"

#: lex.c:1879
msgid "raw string delimiter longer than 16 characters"
msgstr "pembatas mentah string lebih panjang dari 16 karakter"

#: lex.c:1883
#, fuzzy
#| msgid "invalid character '%c' in raw string delimiter"
msgid "invalid new-line in raw string delimiter"
msgstr "karakter '%c' tidak valid dalam pembatas mentah string"

#: lex.c:1887 lex.c:4639
#, c-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "karakter '%c' tidak valid dalam pembatas mentah string"

#: lex.c:1926 lex.c:1949
msgid "unterminated raw string"
msgstr "tidak terselesaikan raw string"

#: lex.c:1971 lex.c:2100
msgid "invalid suffix on literal; C++11 requires a space between literal and string macro"
msgstr ""

#: lex.c:2083
msgid "null character(s) preserved in literal"
msgstr "karakter kosong dijaga dalam literal"

#: lex.c:2086
#, c-format
msgid "missing terminating %c character"
msgstr "hilang karakter pengakhir %c"

#: lex.c:2118
msgid "C++11 requires a space between string literal and macro"
msgstr ""

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

#: lex.c:2725
#, c-format
msgid "module control-line \"%s\" cannot be an object-like macro"
msgstr ""

#: lex.c:3099 lex.c:4472 traditional.c:174
msgid "unterminated comment"
msgstr "komentar tidak terakhiri"

#: lex.c:3113 lex.c:3147
msgid "C++ style comments are not allowed in ISO C90"
msgstr "komentar gaya C++ tidak diijinkan dalam ISO C90"

#: lex.c:3115 lex.c:3126 lex.c:3150
msgid "(this will be reported only once per input file)"
msgstr "(ini hanya akan dilaporkan sekali setiap berkas masukan)"

#: lex.c:3124
#, fuzzy
#| msgid "C++ style comments are not allowed in ISO C90"
msgid "C++ style comments are incompatible with C90"
msgstr "komentar gaya C++ tidak diijinkan dalam ISO C90"

#: lex.c:3156
msgid "multi-line comment"
msgstr "komentar multi baris"

#: lex.c:3550
#, c-format
msgid "unspellable token %s"
msgstr "tanda %s tidak dapat disebutkan"

#: lex.c:4627
#, fuzzy, c-format
#| msgid "raw string delimiter longer than 16 characters"
msgid "raw string delimiter longer than %d characters"
msgstr "pembatas mentah string lebih panjang dari 16 karakter"

#: lex.c:4697
#, fuzzy
#| msgid "unterminated #%s"
msgid "unterminated literal"
msgstr "tidak terakhiri #%s"

#: macro.c:94
#, fuzzy
#| msgid "'##' cannot appear at either end of a macro expansion"
msgid "'##' cannot appear at either end of __VA_OPT__"
msgstr "'##' tidak dapat muncul baik diakhir dari sebuah ekspansi makro"

#: macro.c:386
#, fuzzy, c-format
#| msgid "%s in preprocessing directive"
msgid "\"%s\" used outside of preprocessing directive"
msgstr "%s dalam direktif preprosesing"

#: macro.c:396
#, fuzzy, c-format
#| msgid "missing '(' in expression"
msgid "missing '(' before \"%s\" operand"
msgstr "hilang '(' dalam ekspresi"

#: macro.c:411
#, fuzzy, c-format
#| msgid "operator \"defined\" requires an identifier"
msgid "operator \"%s\" requires a header-name"
msgstr "operator \"defined\" membutuhkan sebuah pengidentifikasi"

#: macro.c:428
#, fuzzy, c-format
#| msgid "missing ')' after \"defined\""
msgid "missing ')' after \"%s\" operand"
msgstr "hilang ')' setelah \"defined\""

#: macro.c:448
#, c-format
msgid "macro \"%s\" is not used"
msgstr "makro \"%s\" tidak digunakan"

#: macro.c:487 macro.c:778
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "makro bawaan \"%s\" tidak valid"

#: macro.c:494 macro.c:596
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr ""

#: macro.c:525
msgid "could not determine file timestamp"
msgstr "tidak dapat menentukan berkas timestamp"

#: macro.c:610
msgid "could not determine date and time"
msgstr "tidak dapat menentukan tanggal dan waktu"

#: macro.c:642
msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgstr "__COUNTER__ diekspans didalam direktif dengan -fdirectives-only"

#: macro.c:897
msgid "invalid string literal, ignoring final '\\'"
msgstr "string literal tidak valid, mengabaikan final '\\'"

#: macro.c:959
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "pasting \"%s\" dan \"%s\" tidak memberikan sebuah tanda preprosesing valid"

#: macro.c:1085
msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
msgstr ""

#: macro.c:1089
#, fuzzy
#| msgid "ISO C99 requires rest arguments to be used"
msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C99 membutuhkan argumen rest untuk digunakan"

#: macro.c:1096
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "makro \"%s\" membutuhkan %u argumen, tetapi hanya %u diberikan"

#: macro.c:1101
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "makro \"%s\" melewatkan %u argumen, tetapi hanya mengambil %u"

#: macro.c:1299 traditional.c:822
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "daftar argumen tidak terselesaikan memanggil makro \"%s\""

#: macro.c:1442
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "makro \"%s\" seperti fungsi harus digunakan dengan argumen dalam tradisional C"

#: macro.c:2220
#, fuzzy, c-format
#| msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90 and ISO C++98"
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C++98"
msgstr "memanggil makro %s argumen %d: argumen makro kosong tidak didefinisikan dalam ISO C90 dan ISO C++98"

#: macro.c:2228 macro.c:2237
#, fuzzy, c-format
#| msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90 and ISO C++98"
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
msgstr "memanggil makro %s argumen %d: argumen makro kosong tidak didefinisikan dalam ISO C90 dan ISO C++98"

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

#: macro.c:3361
#, c-format
msgid "expected parameter name, found \"%s\""
msgstr ""

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

#: macro.c:3363
msgid "expected parameter name before end of line"
msgstr ""

#: macro.c:3364
#, fuzzy
#| msgid "unexpected end of file after #line"
msgid "expected ')' before end of line"
msgstr "tidak terduga akhir dari berkas setelah #line"

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

#: macro.c:3422
#, fuzzy
#| msgid "anonymous variadic macros were introduced in C99"
msgid "anonymous variadic macros were introduced in C++11"
msgstr "anonymous variadik makro diperkenalkan dalam C99"

#: macro.c:3423 macro.c:3427
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonymous variadik makro diperkenalkan dalam C99"

#: macro.c:3433
#, fuzzy
#| msgid "ISO C does not permit named variadic macros"
msgid "ISO C++ does not permit named variadic macros"
msgstr "ISO C tidak mengijinkan makro variadik bernama"

#: macro.c:3434
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C tidak mengijinkan makro variadik bernama"

#: macro.c:3480
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' tidak dapat muncul baik diakhir dari sebuah ekspansi makro"

#: macro.c:3518
#, fuzzy
#| msgid "ISO C99 requires whitespace after the macro name"
msgid "ISO C++11 requires whitespace after the macro name"
msgstr "ISO C99 membutuhkan whitespace setelah nama makro"

#: macro.c:3519
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 membutuhkan whitespace setelah nama makro"

#: macro.c:3543
msgid "missing whitespace after the macro name"
msgstr "kurang spasi setelah nama makro"

#: macro.c:3593
msgid "'#' is not followed by a macro parameter"
msgstr "'#' tidak diikuti dengan sebuah parameter makro"

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

#: macro.c:3754
msgid "this is the location of the previous definition"
msgstr "ini adalah lokasi dari definisi sebelumnya"

#: macro.c:3891
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "argumen makro \"%s\" akan stringified dalam tradisional 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 "ketika menulis precompiled header"

#: pch.c:616
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s: tidak digunakan karena `%.*s' teracuni"

#: pch.c:638
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s: tidak digunakan karena `%.*s' tidak didefinisikan"

#: pch.c:650
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s: tidak digunakan karena `%.*s' didefinisikan sebagai `%s' bukan `%.*s'"

#: pch.c:691
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s: tidak digunakan karena `%s' didefinisikan"

#: pch.c:711
#, c-format
msgid "%s: not used because `__COUNTER__' is invalid"
msgstr "%s: tidak digunakan karena `__COUNTER__' tidak valid"

#: pch.c:720 pch.c:876
msgid "while reading precompiled header"
msgstr "ketika membaca precompiled header"

#: traditional.c:891
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "terdeteksi rekursi ketika mengekspan makro \"%s\""

#: traditional.c:1114
msgid "syntax error in macro parameter list"
msgstr "sintaks erro dalam daftar parameter makro"

#~ msgid "Character %x might not be NFKC"
#~ msgstr "Karakter %x mungkin bukan NFKC"

#~ msgid "#include nested too deeply"
#~ msgstr "#include nested terlalu dalam"

#~ msgid "too many decimal points in number"
#~ msgstr "terlalu banyak titik desimal dalam angka"

#~ msgid "invalid digit \"%c\" in binary constant"
#~ msgstr "angka \"%c\" tidak valid dalam konstanta binari"

#~ msgid "invalid digit \"%c\" in octal constant"
#~ msgstr "angka \"%c\" tidak valid dalam konstanta oktal"

#~ msgid "no digits in hexadecimal floating constant"
#~ msgstr "tidak ada angka dalam konstanta pecahan heksa desimal"

#~ msgid "exponent has no digits"
#~ msgstr "eksponen tidak memiliki digits"

#~ msgid "hexadecimal floating constants require an exponent"
#~ msgstr "konstanta pecahan heksa desimal membutuhkan sebuah eksponen"

#~ msgid "missing binary operator before token \"%s\""
#~ msgstr "hilang operator binari sebelum tanda \"%s\""

#~ msgid "token \"%s\" is not valid in preprocessor expressions"
#~ msgstr "tanda \"%s\" bukan sebuah ekspresi preprosesor yang valid"

#~ msgid "missing expression between '(' and ')'"
#~ msgstr "hilang ekspresi diantara '(' dan ')'"

#~ msgid "%s with no expression"
#~ msgstr "%s dengan tanpa ekspresi"

#~ msgid "operator '%s' has no right operand"
#~ msgstr "operator '%s' tidak memiliki operan kanan"

#~ msgid "operator '%s' has no left operand"
#~ msgstr "operator '%s' tidak memiliki operan kiri"

#~ msgid " ':' without preceding '?'"
#~ msgstr " ':' tanpa awalan '?'"

#~ msgid "NULL directory in find_file"
#~ msgstr "direktori KOSONG dalam find_file"

#~ msgid "%s is a block device"
#~ msgstr "%s adalah sebuah perangkat blok"

#~ msgid "%s is too large"
#~ msgstr "%s terlalu besar"

#~ msgid "%s is shorter than expected"
#~ msgstr "%s lebih pendek dari yang diduga"

#~ msgid "\"%s\" may not appear in macro parameter list"
#~ msgstr "\"%s\" mungkin tidak muncul dalam daftar parameter makro"

#~ msgid "macro parameters must be comma-separated"
#~ msgstr "parameter makro yang berupa koma dipisahkan"

#~ msgid "parameter name missing"
#~ msgstr "nama parameter hilang"

#~ msgid "missing ')' in macro parameter list"
#~ msgstr "hilang ')' dalam daftar parameter makro"

#~ msgid "invalid hash type %d in cpp_macro_definition"
#~ msgstr "tipe hash %d tidak valid dalam cpp_macro_definition"

#~ msgid "warning: "
#~ msgstr "peringatan: "

#~ msgid "internal error: "
#~ msgstr "internal error: "

#~ msgid "error: "
#~ msgstr "error: "

#~ msgid "In file included from %s:%u"
#~ msgstr "Dalam berkas dimasukan dari %s:%u"

#~ msgid ""
#~ ",\n"
#~ "                 from %s:%u"
#~ msgstr ""
#~ ",\n"
#~ "                 dari %s:%u"
