# German translation of gcc messages.
# Copyright © 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
# Karl Eichwalder <ke@suse.de>, 2002, 2003.
# Roland Stigge <stigge@antcom.de>, 2003, 2004, 2005, 2006.
# This file is distributed under the same license as the gcc package.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 4.2.0\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
"POT-Creation-Date: 2007-05-13 19:48-0700\n"
"PO-Revision-Date: 2007-05-28 13:30+0100\n"
"Last-Translator: Roland Stigge <stigge@antcom.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: charset.c:654
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "Konvertierung von %s nach %s wird von iconv nicht unterstützt"

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

#: charset.c:665
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "keine Implementation für iconv, es kann nicht von %s nach %s konvertiert werden"

#: charset.c:742
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "Zeichen 0x%lx ist nicht im regulären Quellzeichensatz\n"

#: charset.c:759 charset.c:1352
msgid "converting to execution character set"
msgstr "Konvertierung in Zeichensatz der Ausführung"

#: charset.c:765
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "Zeichen 0x%lx ist kein Unibyte im Ausführungs-Zeichensatz"

#: charset.c:889
#, c-format
msgid "Character %x might not be NFKC"
msgstr "Zeichen %x ist nicht in NFKC"

#: charset.c:949
msgid "universal character names are only valid in C++ and C99"
msgstr "universelle Zeichennamen sind nur in C++ und C99 gültig"

#: charset.c:952
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "die Bedeutung von '\\%c' ist in traditionellem C anders"

#: charset.c:961
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "In _cpp_valid_ucn, aber kein UCN"

#: charset.c:986
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "unvollständiger Universal-Zeichenname %.*s"

#: charset.c:998
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "»%.*s« ist kein gültiges universelles Zeichen"

#: charset.c:1008 lex.c:472
msgid "'$' in identifier or number"
msgstr "'$' in Bezeichner oder Zahl"

#: charset.c:1018
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "universelles Zeichen %.*s ist nicht gültig in Bezeichner"

#: charset.c:1022
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "universelles Zeichen %.*s ist nicht gültig am Anfang eines Bezeichners"

#: charset.c:1056 charset.c:1571
msgid "converting UCN to source character set"
msgstr "UCN wird in Quellzeichensatz konvertiert"

#: charset.c:1060
msgid "converting UCN to execution character set"
msgstr "UCN wird in Ausführungszeichensatz konvertiert"

#: charset.c:1132
msgid "the meaning of '\\x' is different in traditional C"
msgstr "die Bedeutung von '\\x' ist in traditionellem C anders"

#: charset.c:1149
msgid "\\x used with no following hex digits"
msgstr "\\x ohne folgende Hex-Ziffern verwendet"

#: charset.c:1156
msgid "hex escape sequence out of range"
msgstr "Hex-Fluchtsequenz außerhalb des Wertebereiches"

#: charset.c:1195
msgid "octal escape sequence out of range"
msgstr "Oktal-Fluchtsequenz außerhalb des Wertebereiches"

#: charset.c:1263
msgid "the meaning of '\\a' is different in traditional C"
msgstr "die Bedeutung von '\\a' ist in traditionellem C anders"

#: charset.c:1270
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "nicht-ISO-standardkonforme Fluchtsequenz '\\%c'"

#: charset.c:1278
#, c-format
msgid "unknown escape sequence '\\%c'"
msgstr "unbekannte Fluchtsequenz '\\%c'"

#: charset.c:1286
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "unbekannte Fluchtsequenz: '\\%s'"

#: charset.c:1293
msgid "converting escape sequence to execution character set"
msgstr "Fluchtsequenz wird in Zeichensatz der Ausführung konvertiert"

#: charset.c:1415 charset.c:1478
msgid "character constant too long for its type"
msgstr "Zeichenkonstante zu lang für ihren Typ"

#: charset.c:1418
msgid "multi-character character constant"
msgstr "Zeichenkonstante mit mehreren Zeichen"

#: charset.c:1510
msgid "empty character constant"
msgstr "Leere Zeichenkonstante"

#: charset.c:1612
#, c-format
msgid "failure to convert %s to %s"
msgstr "Fehler beim Konvertieren von %s nach %s"

#: directives.c:214 directives.c:240
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "mehrere Token am Ende der Direktive #%s"

#: directives.c:343
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s ist eine Erweiterung des GCC"

#: directives.c:355
msgid "suggest not using #elif in traditional C"
msgstr "es wird empfohlen, in traditionellem C nicht #elif zu verwenden"

#: directives.c:358
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "traditionelles C ignoriert #%s mit eingerücktem #"

#: directives.c:362
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "es wird empfohlen, #%s vor traditionellem C mit # zu verbergen"

#: directives.c:388
msgid "embedding a directive within macro arguments is not portable"
msgstr "das Einbetten einer Direktive innerhalb von Makroargumenten ist nicht portierbar"

#: directives.c:408
msgid "style of line directive is a GCC extension"
msgstr "der Stil der line-Direktive ist eine Erweiterung des GCC"

#: directives.c:458
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "ungültige Präprozessordirektive #%s"

#: directives.c:524
msgid "\"defined\" cannot be used as a macro name"
msgstr "»defined« kann nicht als Makroname verwendet werden"

#: directives.c:530
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "»%s« kann nicht als Makroname verwendet werden, da es ein Operator in C++ ist"

#: directives.c:533
#, c-format
msgid "no macro name given in #%s directive"
msgstr "kein Makroname in Direktive #%s angegeben"

#: directives.c:536
msgid "macro names must be identifiers"
msgstr "Makronamen müssen Bezeichner sein"

#: directives.c:577
#, c-format
msgid "undefining \"%s\""
msgstr "»%s« wird un-definiert"

#: directives.c:632
msgid "missing terminating > character"
msgstr "fehlendes abschließendes »>«-Zeichen"

#: directives.c:687
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s erwartet \"DATEINAME\" oder <DATEINAME>"

#: directives.c:727
#, c-format
msgid "empty filename in #%s"
msgstr "leerer Dateiname in #%s"

#: directives.c:737
msgid "#include nested too deeply"
msgstr "#include ist zu tief geschachtelt"

#: directives.c:778
msgid "#include_next in primary source file"
msgstr "#include_next in erster Quelldatei"

#: directives.c:804
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "ungültiges Kennzeichen »%s« in line-Direktive"

#: directives.c:856
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "»%s« hinter #line ist keine positive Ganzzahl"

#: directives.c:862
msgid "line number out of range"
msgstr "Zeilennummer ist außerhalb des Wertebereiches"

#: directives.c:875 directives.c:952
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "»%s« ist kein gültiger Dateiname"

#: directives.c:912
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "»%s« hinter # ist keine positive Ganzzahl"

#: directives.c:1014
#, c-format
msgid "invalid #%s directive"
msgstr "ungültige #%s-Direktive"

#: directives.c:1077
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "Pragmas im Namespace »%s« werden ohne passende Namensauflösung registriert"

#: directives.c:1086
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "Pragma »%s« wird mit Namensauflösung und ohne Namespace registriert"

#: directives.c:1104
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "»%s« wird sowohl als Pragma als auch als Pragma-Namespace registriert"

#: directives.c:1107
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s ist bereits registriert"

#: directives.c:1110
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s ist bereits registriert"

#: directives.c:1140
msgid "registering pragma with NULL handler"
msgstr "Pragma mit NULL-Handler wird registriert"

#: directives.c:1350
msgid "#pragma once in main file"
msgstr "#pragma once in Hauptdatei"

#: directives.c:1373
msgid "invalid #pragma GCC poison directive"
msgstr "ungültige #pragma GCC Poison Direktive"

#: directives.c:1382
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "schlechtes existierendes Makro »%s«"

#: directives.c:1403
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header außerhalb include-Datei ignoriert"

#: directives.c:1427
#, c-format
msgid "cannot find source file %s"
msgstr "Quelldatei %s kann nicht gefunden werden"

#: directives.c:1431
#, c-format
msgid "current file is older than %s"
msgstr "aktuelle Datei ist älter als %s"

#: directives.c:1599
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma nimmt ein geklammertes Zeichenkettenliteral"

#: directives.c:1671
msgid "#else without #if"
msgstr "#else ohne #if"

#: directives.c:1676
msgid "#else after #else"
msgstr "#else hinter #else"

#: directives.c:1678 directives.c:1711
msgid "the conditional began here"
msgstr "die Bedingung begann hier"

#: directives.c:1704
msgid "#elif without #if"
msgstr "#elif ohne #if"

#: directives.c:1709
msgid "#elif after #else"
msgstr "#elif hinter #else"

#: directives.c:1739
msgid "#endif without #if"
msgstr "#endif ohne #if"

#: directives.c:1816
msgid "missing '(' after predicate"
msgstr "fehlendes '(' hinter Prädikat"

#: directives.c:1831
msgid "missing ')' to complete answer"
msgstr "fehlendes ')', um Antwort abzuschließen"

#: directives.c:1851
msgid "predicate's answer is empty"
msgstr "Prädikatantwort ist leer"

#: directives.c:1878
msgid "assertion without predicate"
msgstr "Behauptung ohne Prädikat"

#: directives.c:1880
msgid "predicate must be an identifier"
msgstr "Prädikat muss ein Bezeichner sein"

#: directives.c:1966
#, c-format
msgid "\"%s\" re-asserted"
msgstr "»%s« wieder behauptet"

#: directives.c:2190
#, c-format
msgid "unterminated #%s"
msgstr "unbeendetes #%s"

#: errors.c:118
msgid "warning: "
msgstr "Warnung: "

#: errors.c:120
msgid "internal error: "
msgstr "interner Fehler: "

#: errors.c:122
msgid "error: "
msgstr "Fehler: "

#: errors.c:186
msgid "stdout"
msgstr "Standardausgabe"

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

#: expr.c:203
msgid "too many decimal points in number"
msgstr "zu viele Dezimalpunkte in Zahl"

#: expr.c:223
#, c-format
msgid "invalid digit \"%c\" in octal constant"
msgstr "ungültige Ziffer »%c« in Oktal-Konstante"

#: expr.c:229
msgid "use of C99 hexadecimal floating constant"
msgstr "Verwendung von hexadezimaler C99-Gleitkommakonstante"

#: expr.c:238
msgid "exponent has no digits"
msgstr "Exponent hat keine Ziffern"

#: expr.c:245
msgid "hexadecimal floating constants require an exponent"
msgstr "hexadezimale Gleitkommakonstanten benötigen Exponenten"

#: expr.c:251
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "ungültiger Suffix »%.*s« an Gleitkommakonstante"

#: expr.c:261 expr.c:295
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "traditionelles C lehnt den Suffix »%.*s« ab"

#: expr.c:268
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "ungültiger Suffix »%.*s« mit hexadezimaler Gleitkommakonstante"

#: expr.c:281
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "ungültiger Suffix »%.*s« an Ganzzahlkonstante"

#: expr.c:303
msgid "use of C99 long long integer constant"
msgstr "C99 long long Ganzzahlkonstante verwendet"

#: expr.c:310
msgid "imaginary constants are a GCC extension"
msgstr "imaginäre Konstanten sind eine GCC-Erweiterung"

#: expr.c:396
msgid "integer constant is too large for its type"
msgstr "Ganzzahlkonstante ist zu groß für ihren Typ"

#: expr.c:408
msgid "integer constant is so large that it is unsigned"
msgstr "Ganzzahlkonstante ist so groß, dass sie vorzeichenlos ist"

#: expr.c:490
msgid "missing ')' after \"defined\""
msgstr "fehlendes ')' hinter »defined«"

#: expr.c:497
msgid "operator \"defined\" requires an identifier"
msgstr "Operator »defined« erfordert einen Bezeichner"

#: expr.c:505
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(»%s« ist ein alternatives Token for »%s« in C++)"

#: expr.c:515
msgid "this use of \"defined\" may not be portable"
msgstr "diese Verwendung von »defined« könnte nicht portierbar sein"

#: expr.c:554
msgid "floating constant in preprocessor expression"
msgstr "Gleitkommakonstante in Präprozessorausdruck"

#: expr.c:560
msgid "imaginary number in preprocessor expression"
msgstr "imaginäre Zahl in Präprozessorausdruck"

#: expr.c:605
#, c-format
msgid "\"%s\" is not defined"
msgstr "»%s« ist nicht definiert"

#: expr.c:733 expr.c:762
#, c-format
msgid "missing binary operator before token \"%s\""
msgstr "fehlender binärer Operator vor Token »%s«"

#: expr.c:753
#, c-format
msgid "token \"%s\" is not valid in preprocessor expressions"
msgstr "Token »%s« ist nicht gültig in Präprozessorausdrücken"

#: expr.c:770
msgid "missing expression between '(' and ')'"
msgstr "fehlender Ausdruck zwischen '(' und ')'"

#: expr.c:773
msgid "#if with no expression"
msgstr "#if ohne Ausdruck"

#: expr.c:776
#, c-format
msgid "operator '%s' has no right operand"
msgstr "Operator »%s« hat keinen rechten Operanden"

#: expr.c:781
#, c-format
msgid "operator '%s' has no left operand"
msgstr "Operator »%s« hat keinen linken Operanden"

#: expr.c:807
msgid " ':' without preceding '?'"
msgstr " ':' ohne vorangehendes '?'"

#: expr.c:834
msgid "unbalanced stack in #if"
msgstr "unausgeglichener Keller in #if"

#: expr.c:853
#, c-format
msgid "impossible operator '%u'"
msgstr "unmöglicher Operator '%u'"

#: expr.c:943
msgid "missing ')' in expression"
msgstr "fehlendes ')' in Ausdruck"

#: expr.c:964
msgid "'?' without following ':'"
msgstr "'?' ohne folgendes ':'"

#: expr.c:974
msgid "integer overflow in preprocessor expression"
msgstr "Ganzzahlüberlauf in Präprozessorausdruck"

#: expr.c:979
msgid "missing '(' in expression"
msgstr "fehlendes '(' in Ausdruck"

#: expr.c:1011
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "der linke Operand von »%s« ändert bei der Weitergabe das Vorzeichen"

#: expr.c:1016
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "der rechte Operand von »%s« ändert bei der Weitergabe das Vorzeichen"

#: expr.c:1275
msgid "traditional C rejects the unary plus operator"
msgstr "traditionelles C weist den unären Plus-Operator zurück"

#: expr.c:1358
msgid "comma operator in operand of #if"
msgstr "Kommaoperator in Operand von #if"

#: expr.c:1490
msgid "division by zero in #if"
msgstr "Division durch Null in #if"

#: files.c:402
msgid "NULL directory in find_file"
msgstr "NULL-Verzeichnis in find_file"

#: files.c:440
msgid "one or more PCH files were found, but they were invalid"
msgstr "ein oder mehrere PCH-Dateien wurden gefunden, aber sie sind ungültig"

#: files.c:443
msgid "use -Winvalid-pch for more information"
msgstr "-Winvalid-pch für mehr Informationen verwenden"

#: files.c:501
#, c-format
msgid "%s is a block device"
msgstr "%s ist ein Block-Gerät"

#: files.c:518
#, c-format
msgid "%s is too large"
msgstr "%s ist zu groß"

#: files.c:553
#, c-format
msgid "%s is shorter than expected"
msgstr "%s ist kürzer als erwartet"

#: files.c:782
#, c-format
msgid "no include path in which to search for %s"
msgstr "kein Include-Pfad, um %s zu finden"

#: files.c:1071
msgid "Multiple include guards may be useful for:\n"
msgstr "Mehrere Include-Wächter könnten nützlich sein für:\n"

#: init.c:407
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t muss ein vorzeichenloser Typ sein"

#: init.c:411
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "Präprozessorarithmetik hat maximale Präzision von %lu Bits; Ziel erfordert %lu Bits"

#: init.c:418
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "CPP-Arithmetik muss mindestens so genau sein wie das Ziel int"

#: init.c:421
msgid "target char is less than 8 bits wide"
msgstr "Ziel-char ist weniger als 8 Bits breit"

#: init.c:425
msgid "target wchar_t is narrower than target char"
msgstr "Ziel-wchar_t ist schmaler als Ziel char"

#: init.c:429
msgid "target int is narrower than target char"
msgstr "Ziel-int ist schmaler als Ziel-char"

#: init.c:434
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP Halb-Ganzzahl ist schmaler als CPP-Zeichen"

#: init.c:438
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP kann auf diesem Computer keine Wide-Zeichenkonstanten über %lu Bits Breite behandeln, das Ziel benötigt %lu Bits"

#: lex.c:271
msgid "backslash and newline separated by space"
msgstr "Backslash und Newline durch Leerzeichen getrennt"

#: lex.c:276
msgid "backslash-newline at end of file"
msgstr "Backslash-Newline am Dateiende"

#: lex.c:291
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "Trigraph ??%c in %c konvertiert"

#: lex.c:298
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "Trigraph ??%c ignoriert, -trigraphs zum Aktivieren verwenden"

#: lex.c:344
msgid "\"/*\" within comment"
msgstr "»/*« innerhalb des Kommentars"

#: lex.c:402
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s in Präprozessordirektive"

#: lex.c:411
msgid "null character(s) ignored"
msgstr "Null-Zeichen ignoriert"

#: lex.c:448
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr "»%.*s« ist nicht in NFKC"

#: lex.c:451
#, c-format
msgid "`%.*s' is not in NFC"
msgstr "»%.*s« ist nicht in NFC"

#: lex.c:539
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "Versuch, schlechtes »%s« zu verwenden"

#: lex.c:547
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ kann nur in Erweiterung eines variadischen C99-Makros auftreten"

#: lex.c:647
msgid "null character(s) preserved in literal"
msgstr "Null-Zeichen im Literal erhalten"

#: lex.c:650
#, c-format
msgid "missing terminating %c character"
msgstr "fehlendes abschließendes Zeichen %c"

#: lex.c:842
msgid "no newline at end of file"
msgstr "Kein Newline am Dateiende"

#: lex.c:1002 traditional.c:162
msgid "unterminated comment"
msgstr "nicht beendeter Kommentar"

#: lex.c:1013
msgid "C++ style comments are not allowed in ISO C90"
msgstr "C++-Stil-Kommentare sind in ISO-C90 nicht erlaubt"

#: lex.c:1015
msgid "(this will be reported only once per input file)"
msgstr "(dies wird nur einmal pro Eingabedatei gemeldet)"

#: lex.c:1020
msgid "multi-line comment"
msgstr "mehrzeiliger Kommentar"

#: lex.c:1333
#, c-format
msgid "unspellable token %s"
msgstr "nicht buchstabierbares Token %s"

#: line-map.c:313
#, c-format
msgid "In file included from %s:%u"
msgstr "In Datei, eingefügt von %s:%u"

#: line-map.c:331
#, c-format
msgid ""
",\n"
"                 from %s:%u"
msgstr ""
",\n"
"                 von %s:%u"

#: macro.c:83
#, c-format
msgid "macro \"%s\" is not used"
msgstr "Makro »%s« wird nicht benutzt"

#: macro.c:122 macro.c:312
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ungültiges eingebautes Makro »%s«"

#: macro.c:156
msgid "could not determine file timestamp"
msgstr "Datum und Zeit der Datei konnten nicht bestimmt werden"

#: macro.c:253
msgid "could not determine date and time"
msgstr "Datum und Zeit konnten nicht bestimmt werden"

#: macro.c:416
msgid "invalid string literal, ignoring final '\\'"
msgstr "ungültiges Zeichenkettenliteral, abschließendes '\\' wird ignoriert"

#: macro.c:466
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "das Einfügen von »%s« und »%s« ergibt kein gültiges Präprozessor-Token"

#: macro.c:538
msgid "ISO C99 requires rest arguments to be used"
msgstr "ISO-C99 erfordert, dass Restargumente verwendet werden"

#: macro.c:543
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "Makro »%s« erfordert %u Argumente, aber nur %u wurden angegeben"

#: macro.c:548
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "dem Makro »%s« wurden %u Argumente übergeben, aber es nimmt nur %u"

#: macro.c:659 traditional.c:675
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "unvollendete Argumentliste beim Makroaufruf »%s«"

#: macro.c:762
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "funktionsähnliches Makro »%s« muss mit Argumenten in traditionellem C verwendet werden"

#: macro.c:1278
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "doppelter Makroparameter »%s«"

#: macro.c:1324
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "»%s« darf nicht in Makroparameterliste auftreten"

#: macro.c:1332
msgid "macro parameters must be comma-separated"
msgstr "Makroparameter müssen mit Komma getrennt sein"

#: macro.c:1349
msgid "parameter name missing"
msgstr "Parametername fehlt"

#: macro.c:1366
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonyme variadische Makros wurden in C99 eingeführt"

#: macro.c:1371
msgid "ISO C does not permit named variadic macros"
msgstr "ISO-C erlaubt keine benannten variadischen Makros"

#: macro.c:1380
msgid "missing ')' in macro parameter list"
msgstr "fehlendes ')' in Makroparameterliste"

#: macro.c:1458
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO-C99 erfordert Whitespace hinter Makroname"

#: macro.c:1482
msgid "missing whitespace after the macro name"
msgstr "Whitespace hinter Makroname fehlt"

#: macro.c:1512
msgid "'#' is not followed by a macro parameter"
msgstr "'#' wird nicht von einem Makroparameter gefolgt"

#: macro.c:1531
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "'##' kann nicht an den Enden einer Makroexpansion auftreten"

#: macro.c:1629
#, c-format
msgid "\"%s\" redefined"
msgstr "»%s« redefiniert"

#: macro.c:1634
msgid "this is the location of the previous definition"
msgstr "dies ist die Stelle der vorherigen Definition"

#: macro.c:1684
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "Makroargument »%s« würde in traditionellem C zum String gewandelt werden"

#: macro.c:1707
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "ungültiger Hash-Typ %d in cpp_macro_definition"

#: pch.c:84 pch.c:332 pch.c:354 pch.c:360
msgid "while writing precompiled header"
msgstr "beim Schreiben des vorkompilierten Headers"

#: pch.c:467
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s: nicht verwendet, da »%.*s« nicht definiert"

#: pch.c:479
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s: nicht verwendet, da »%.*s« als »%s« statt als »%.*s« definiert wurde"

#: pch.c:520
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s: nicht verwendet, da »%s« definiert ist"

#: pch.c:533 pch.c:696
msgid "while reading precompiled header"
msgstr "beim Lesen des vorkompilierten Headers"

#: traditional.c:745
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "Rekursion bei Expansion des Makros »%s« entdeckt"

#: traditional.c:912
msgid "syntax error in macro parameter list"
msgstr "Syntaxfehler in Makroparameterliste"

#~ msgid "unknown escape sequence: '\\%03o'"
#~ msgstr "unbekannte Fluchtsequenz: '\\%03o'"

#~ msgid "`%s' attribute directive ignored"
#~ msgstr "Attribut-Anweisung »%s« wird ignoriert"

#~ msgid "wrong number of arguments specified for `%s' attribute"
#~ msgstr "falsche Anzahl an Argumenten für das Attribut »%s« angegeben"

#~ msgid "`%s' attribute does not apply to types"
#~ msgstr "Attribut »%s« kann nicht auf Typen angewandt werden"

#~ msgid "`%s' attribute only applies to function types"
#~ msgstr "Attribut »%s« kann nur auf Funktionstypen angewandt werden"

#~ msgid "`%s' attribute ignored"
#~ msgstr "Attribut »%s« wird ignoriert"

#~ msgid "offset outside bounds of constant string"
#~ msgstr "Adressabstand ist außerhalb der Grenzen der konstanten Zeichenkette"

#~ msgid "second arg to `__builtin_prefetch' must be a constant"
#~ msgstr "zweites Argument für »__builtin_prefetch« muss eine Konstante sein"

#~ msgid "invalid second arg to __builtin_prefetch; using zero"
#~ msgstr "ungültiges zweites Argument für »__builtin_prefetch«; es wird Null verwendet"

#~ msgid "third arg to `__builtin_prefetch' must be a constant"
#~ msgstr "drittes Argument für »__builtin_prefetch« muss eine Konstante sein"

#~ msgid "invalid third arg to __builtin_prefetch; using zero"
#~ msgstr "ungültiges drittes Argument für »__builtin_prefetch«; es wird Null verwendet"

#~ msgid "argument of `__builtin_args_info' must be constant"
#~ msgstr "Argument von »__builtin_args_info« muss konstant sein"

#~ msgid "argument of `__builtin_args_info' out of range"
#~ msgstr "Argument von »__builtin_args_info« außerhalb des Wertebereichs"

#~ msgid "missing argument in `__builtin_args_info'"
#~ msgstr "fehlendes Argument in »__builtin_args_info«"

#~ msgid "`va_start' used in function with fixed args"
#~ msgstr "»va_start« in Funktion mit fester Parameterzahl verwendet"

#~ msgid "second parameter of `va_start' not last named argument"
#~ msgstr "zweiter Parameter von »va_start« ist nicht letztgenanntes Argument"

#~ msgid "`__builtin_next_arg' called without an argument"
#~ msgstr "»__builtin_next_arg« ohne Argument gerufen"

#~ msgid "too many arguments to function `va_start'"
#~ msgstr "zu viele Argumente für »va_start«"

#~ msgid "first argument to `va_arg' not of type `va_list'"
#~ msgstr "erstes Argument für »va_arg« nicht vom Typ »va_list«"

#~ msgid "`%s' is promoted to `%s' when passed through `...'"
#~ msgstr "»%s« auf »%s« gesetzt beim Durchlaufen von »...«"

#~ msgid "(so you should pass `%s' not `%s' to `va_arg')"
#~ msgstr "(Sie sollten also »%s« statt »%s« an »va_arg« übergeben)"

#~ msgid "invalid arg to `__builtin_frame_address'"
#~ msgstr "ungültiges Argument für »__builtin_frame_address«"

#~ msgid "invalid arg to `__builtin_return_address'"
#~ msgstr "ungültiges Argument für »__builtin_return_address«"

#~ msgid "unsupported arg to `__builtin_frame_address'"
#~ msgstr "nicht unterstütztes Argument für »__builtin_frame_address«"

#~ msgid "unsupported arg to `__builtin_return_address'"
#~ msgstr "nicht unterstütztes Argument für »__builtin_return_address«"

#~ msgid "second arg to `__builtin_expect' must be a constant"
#~ msgstr "zweites Argument für »__builtin_expect« muss eine Konstante sein"

#~ msgid "__builtin_longjmp second argument must be 1"
#~ msgstr "zweites Argument für __builtin_longjmp muss 1 sein"

#~ msgid "built-in function `%s' not currently supported"
#~ msgstr "eingebaute Funktion »%s« gegenwärtig nicht unterstützt"

#~ msgid "target format does not support infinity"
#~ msgstr "Zielformat unterstützt nicht »unendlich«"

#~ msgid "%Hsuggest explicit braces to avoid ambiguous `else'"
#~ msgstr "%Hes wird empfohlen, explizite geschweifte Klammern zu setzen, um mehrdeutiges »else« zu vermeiden"

#~ msgid "%J'%D' is not defined outside of function scope"
#~ msgstr "%J»%D« ist außerhalb des Funktionsgültigkeitsbereiches nicht definiert"

#~ msgid "string length `%d' is greater than the length `%d' ISO C%d compilers are required to support"
#~ msgstr "Zeichenkettenlänge »%d« ist größer als die Länge »%d«, die von ISO-C%d-Compilern unterstützt werden muss"

#~ msgid "overflow in constant expression"
#~ msgstr "Überlauf in Konstanten-Ausdruck"

#~ msgid "integer overflow in expression"
#~ msgstr "Ganzzahlüberlauf in Ausdruck"

#~ msgid "floating point overflow in expression"
#~ msgstr "Gleitkommaüberlauf in Ausdruck"

#~ msgid "vector overflow in expression"
#~ msgstr "Vektorüberlauf in Ausdruck"

#~ msgid "large integer implicitly truncated to unsigned type"
#~ msgstr "große Ganzzahl implizit auf vorzeichenlosen Typen abgeschnitten"

#~ msgid "negative integer implicitly converted to unsigned type"
#~ msgstr "negative Ganzzahl implizit in vorzeichenlosen Typen konvertiert"

#~ msgid "overflow in implicit constant conversion"
#~ msgstr "Überlauf in impliziter Konstantenkonvertierung"

#~ msgid "operation on `%s' may be undefined"
#~ msgstr "Operation auf »%s« könnte undefiniert sein"

#~ msgid "expression statement has incomplete type"
#~ msgstr "Ausdrucksanweisung hat unvollständigen Typ"

#~ msgid "case label does not reduce to an integer constant"
#~ msgstr "case-Marke reduziert nicht auf Ganzzahlkonstante"

#~ msgid "invalid truth-value expression"
#~ msgstr "ungültiger Wahrheitswert-Ausdruck"

#~ msgid "invalid operands to binary %s"
#~ msgstr "ungültige Operanden für binäres %s"

#~ msgid "comparison is always false due to limited range of data type"
#~ msgstr "Vergleich ist durch beschränkten Wertebereich des Datentyps stets »unwahr«"

#~ msgid "comparison is always true due to limited range of data type"
#~ msgstr "Vergleich ist durch beschränkten Wertebereich des Datentyps stets »wahr«"

#~ msgid "comparison of unsigned expression >= 0 is always true"
#~ msgstr "Vergleich eines vorzeichenlosen Ausdrucks >= 0 ist stets »wahr«"

#~ msgid "comparison of unsigned expression < 0 is always false"
#~ msgstr "Vergleich eines vorzeichenlosen Ausdrucks < 0 ist stets »unwahr«"

#~ msgid "pointer of type `void *' used in arithmetic"
#~ msgstr "Zeiger auf Typen »void *« in Arithmetik verwendet"

#~ msgid "pointer to a function used in arithmetic"
#~ msgstr "Zeiger auf Funktion in Arithmetik verwendet"

#~ msgid "pointer to member function used in arithmetic"
#~ msgstr "Zeiger auf Elementfunktion in Arithmetik verwendet"

#~ msgid "pointer to a member used in arithmetic"
#~ msgstr "Zeiger auf Element in Arithmetik verwendet"

#~ msgid "struct type value used where scalar is required"
#~ msgstr "Wert eines struct-Typs anstelle des geforderten Skalars verwendet"

#~ msgid "union type value used where scalar is required"
#~ msgstr "Wert eines union-Typs anstelle des geforderten Skalars verwendet"

#~ msgid "array type value used where scalar is required"
#~ msgstr "Wert eines array-Typs anstelle des geforderten Skalars verwendet"

#~ msgid "the address of `%D', will always evaluate as `true'"
#~ msgstr "die Adresse von »%D« wird immer zu »true« auswerten"

#~ msgid "suggest parentheses around assignment used as truth value"
#~ msgstr "um Zuweisung, die als Wahrheitswert verwendet wird, werden Klammern vorgeschlagen"

#~ msgid "invalid use of `restrict'"
#~ msgstr "ungültige Verwendung von »restrict«"

#~ msgid "invalid application of `sizeof' to a function type"
#~ msgstr "ungültige Anwendung von »sizeof« auf einen Funktionstypen"

#~ msgid "invalid application of `%s' to a void type"
#~ msgstr "ungültige Anwendung von »%s« auf einen void-Typen"

#~ msgid "invalid application of `%s' to an incomplete type"
#~ msgstr "ungültige Anwendung von »%s« auf einen unvollständigen Typen"

#~ msgid "`__alignof' applied to a bit-field"
#~ msgstr "»__alignof« auf Bitfeld angewandt"

#~ msgid "cannot disable built-in function `%s'"
#~ msgstr "kann eingebaute Funktion »%s« nicht abschalten"

#~ msgid "too few arguments to function `%s'"
#~ msgstr "zu wenig Argumente für Funktion »%s«"

#~ msgid "too many arguments to function `%s'"
#~ msgstr "zu viele Argumente für Funktion »%s«"

#~ msgid "non-floating-point argument to function `%s'"
#~ msgstr "nicht-Gleitkomma-Argument für Funktion »%s«"

#~ msgid "pointers are not permitted as case values"
#~ msgstr "Zeiger sind nicht als case-Werte zugelassen"

#~ msgid "range expressions in switch statements are non-standard"
#~ msgstr "Wertebereichsausdrücke in switch-Anweisungen sind nicht standardkonform"

#~ msgid "empty range specified"
#~ msgstr "leerer Wertebereich angegeben"

#~ msgid "duplicate (or overlapping) case value"
#~ msgstr "doppelte (oder sich überschneidende) case-Werte"

#~ msgid "%Jthis is the first entry overlapping that value"
#~ msgstr "%Jdies ist der erste Eintrag, der diesen Wert überschneidet"

#~ msgid "duplicate case value"
#~ msgstr "doppelter case-Wert"

#~ msgid "%Jpreviously used here"
#~ msgstr "%Jbereits hier verwendet"

#~ msgid "multiple default labels in one switch"
#~ msgstr "mehrere Standardmarken in einem »switch«"

#~ msgid "%Jthis is the first default label"
#~ msgstr "%Jdies ist die erste Standardmarke"

#~ msgid "taking the address of a label is non-standard"
#~ msgstr "das Ermitteln der Adresse einer Marke ist nicht standardkonform"

#~ msgid "%Hignoring return value of `%D', declared with attribute warn_unused_result"
#~ msgstr "%Hder Rückgabewert von »%D« mit dem Attribut warn_unused_result wird ignoriert"

#~ msgid "%Hignoring return value of function declared with attribute warn_unused_result"
#~ msgstr "%Hder Rückgabewert der Funktion, die mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert"

#~ msgid "declaration of \"%s\" shadows a parameter"
#~ msgstr "Deklaration von »%s« überdeckt einen Parameter"

#~ msgid "declaration of \"%s\" shadows a previous local"
#~ msgstr "Deklaration von »%s« überdeckt einen vorhergehenden lokalen Bezeichner"

#~ msgid "declaration of \"%s\" shadows a global declaration"
#~ msgstr "Deklaration von »%s« überdeckt eine globale Deklaration"

#~ msgid "%Jshadowed declaration is here"
#~ msgstr "%Jverdeckte Deklaration ist hier"

#~ msgid "unknown machine mode `%s'"
#~ msgstr "unbekannter Maschinenzustand »%s«"

#~ msgid "no data type for mode `%s'"
#~ msgstr "kein Datentyp für Zustand »%s«"

#~ msgid "invalid pointer mode `%s'"
#~ msgstr "ungültiger Zeigermodus »%s«"

#~ msgid "unable to emulate '%s'"
#~ msgstr "»%s« kann nicht emuliert werden"

#~ msgid "%Jsection attribute cannot be specified for local variables"
#~ msgstr "%JAbschnitts-Attribut kann nicht für lokale Variablen angegeben werden"

#~ msgid "%Jsection of '%D' conflicts with previous declaration"
#~ msgstr "%JAbschnitt von »%D« in Konflikt mit vorheriger Deklaration"

#~ msgid "%Jsection attribute not allowed for '%D'"
#~ msgstr "%JAbschnitts-Attribute nicht erlaubt für »%D«"

#~ msgid "%Jsection attributes are not supported for this target"
#~ msgstr "%JAbschnitts-Attribute werden für dieses Ziel nicht unterstützt"

#~ msgid "requested alignment is not a constant"
#~ msgstr "verlangte Ausrichtung ist keine Konstante"

#~ msgid "requested alignment is not a power of 2"
#~ msgstr "verlangte Ausrichtung ist keine Zweierpotenz"

#~ msgid "requested alignment is too large"
#~ msgstr "verlangte Ausrichtung ist zu groß"

#~ msgid "%Jalignment may not be specified for '%D'"
#~ msgstr "%Jfür »%D« darf keine Ausrichtung angegeben werden"

#~ msgid "%J'%D' defined both normally and as an alias"
#~ msgstr "%J»%D« sowohl normal als auch als Alias definiert"

#~ msgid "alias arg not a string"
#~ msgstr "Alias-Argument ist keine Zeichenkette"

#~ msgid "visibility arg not a string"
#~ msgstr "Sichtbarkeitsargument ist keine Zeichenkette"

#~ msgid "visibility arg must be one of \"default\", \"hidden\", \"protected\" or \"internal\""
#~ msgstr "Sichtbarkeitsargument muss »default«, »hidden«, »protected« oder »internal« sein"

#~ msgid "tls_model arg not a string"
#~ msgstr "Argument für tls_model ist keine Zeichenkette"

#~ msgid "tls_model arg must be one of \"local-exec\", \"initial-exec\", \"local-dynamic\" or \"global-dynamic\""
#~ msgstr "Argument für tls_model muss »local-exec«, »initial-exec«, »local-dynamic« oder »global-dynamic« sein"

#~ msgid "%J'%E' attribute applies only to functions"
#~ msgstr "%JAttribut »%E« kann nur auf Funktionen angewandt werden"

#~ msgid "%Jcan't set '%E' attribute after definition"
#~ msgstr "%Jkann Attribut »%E« nicht nach der Definition setzen"

#~ msgid "`%s' attribute ignored for `%s'"
#~ msgstr "Attribut »%s« ignoriert für »%s«"

#~ msgid "invalid vector type for attribute `%s'"
#~ msgstr "ungültiger Vektortyp für Attribut »%s«"

#~ msgid "no vector mode with the size and type specified could be found"
#~ msgstr "Vektorzustand mit der angegebenen Größe und dem angegebenen Typ konnte nicht gefunden werden"

#~ msgid "nonnull attribute without arguments on a non-prototype"
#~ msgstr "Nicht-Null-Attribut ohne Argumente für einen Nicht-Prototyp"

#~ msgid "nonnull argument has invalid operand number (arg %lu)"
#~ msgstr "Nicht-Null-Argument hat ungültige Operandenzahl (Argument %lu)"

#~ msgid "nonnull argument with out-of-range operand number (arg %lu, operand %lu)"
#~ msgstr "Nicht-Null-Argument mit Operandenzahl außerhalb des Wertebereiches (Argument %lu, Operand %lu)"

#~ msgid "nonnull argument references non-pointer operand (arg %lu, operand %lu)"
#~ msgstr "Nicht-Null-Argument referenziert Nicht-Zeiger-Operanden (Argument %lu, Operand %lu)"

#~ msgid "null argument where non-null required (arg %lu)"
#~ msgstr "Null-Argument, wo Nicht-Null erwartet (Argument %lu)"

#~ msgid "cleanup arg not an identifier"
#~ msgstr "Argument für cleanup ist kein Bezeichner"

#~ msgid "cleanup arg not a function"
#~ msgstr "Argument für cleanup ist keine Funktion"

#~ msgid "%s at end of input"
#~ msgstr "%s am Ende der Eingabe"

#~ msgid "%s before %s'%c'"
#~ msgstr "%s vor %s'%c'"

#~ msgid "%s before %s'\\x%x'"
#~ msgstr "%s vor %s'\\x%x'"

#~ msgid "%s before string constant"
#~ msgstr "%s vor Zeichenkettenkonstante"

#~ msgid "%s before numeric constant"
#~ msgstr "%s vor numerischer Konstante"

#~ msgid "%s before \"%s\""
#~ msgstr "%s vor \"%s\""

#~ msgid "%s before '%s' token"
#~ msgstr "%s vor »%s«"

#~ msgid "%s"
#~ msgstr "%s"

#~ msgid "void value not ignored as it ought to be"
#~ msgstr "void-Wert nicht ignoriert wie es sein sollte"

#~ msgid "conversion to non-scalar type requested"
#~ msgstr "Konvertierung zu Nicht-Skalar-Typ verlangt"

#~ msgid "%Jarray '%D' assumed to have one element"
#~ msgstr "%JFeld »%D« als einelementig betrachtet"

#~ msgid "%Jlabel `%D' used but not defined"
#~ msgstr "%JMarke »%D« verwendet, aber nicht definiert"

#~ msgid "%Jlabel `%D' defined but not used"
#~ msgstr "%JMarke »%D« definiert aber nicht verwendet"

#~ msgid "%Jlabel `%D' declared but not defined"
#~ msgstr "%JMarke »%D« deklariert, aber nicht definiert"

#~ msgid "%Junused variable `%D'"
#~ msgstr "%JVariable »%D« wird nicht verwendet"

#~ msgid "a parameter list with an ellipsis can't match an empty parameter name list declaration"
#~ msgstr "eine Parameterliste mit Auslassung passt nicht zu einer leeren Parameternamenslistendeklaration"

#~ msgid "an argument type that has a default promotion can't match an empty parameter name list declaration"
#~ msgstr "ein Argumenttyp mit Standard-Promotion passt nicht zu leerer Parameternamenslistendeklaration"

#~ msgid "%Jprototype for '%D' declares more arguments than previous old-style definition"
#~ msgstr "%JPrototyp für »%D« deklariert mehr Argumente als vorherige Definition im alten Stil"

#~ msgid "%Jprototype for '%D' declares fewer arguments than previous old-style definition"
#~ msgstr "%JPrototyp für »%D« deklariert weniger Argumente als vorherige Definition im alten Stil"

#~ msgid "%Jprototype for '%D' declares arg %d with incompatible type"
#~ msgstr "%JPrototyp für »%D« deklariert Argument %d mit inkompatiblem Typen"

#~ msgid "%Jprototype for '%D' follows non-prototype definition"
#~ msgstr "%JPrototyp für »%D« folgt einer Nicht-Prototyp-Definition"

#~ msgid "%Jprevious definition of '%D' was here"
#~ msgstr "%Jvorherige Definition von »%D« war hier"

#~ msgid "%Jprevious implicit declaration of '%D' was here"
#~ msgstr "%Jvorherige implizite Deklaration von »%D« war hier"

#~ msgid "%Jprevious declaration of '%D' was here"
#~ msgstr "%Jvorherige Deklaration von »%D« war hier"

#~ msgid "%J'%D' redeclared as different kind of symbol"
#~ msgstr "%J»%D« redeklariert als andere Symbolart"

#~ msgid "%Jbuilt-in function '%D' declared as non-function"
#~ msgstr "%Jeingebaute Funktion »%D« als Nicht-Funktion deklariert"

#~ msgid "%Jshadowing built-in function '%D'"
#~ msgstr "%Jeingebaute Funktion »%D« überdeckt"

#~ msgid "%Jconflicting types for built-in function '%D'"
#~ msgstr "%Jin Konflikt stehende Typen für eingebaute Funktion »%D«"

#~ msgid "%Jconflicting types for '%D'"
#~ msgstr "%Jin Konflikt stehende Typen für »%D«"

#~ msgid "%Jredefinition of typedef '%D'"
#~ msgstr "%JRedefinition des typedef »%D«"

#~ msgid "%Jredefinition of '%D'"
#~ msgstr "%JRedefinition von »%D«"

#~ msgid "%Jstatic declaration of '%D' follows non-static declaration"
#~ msgstr "%Jstatische Deklaration von »%D« folgt Nicht-statischer Deklaration"

#~ msgid "%Jnon-static declaration of '%D' follows static declaration"
#~ msgstr "%JNicht-statische-Deklaration von »%D« folgt statischer Deklaration"

#~ msgid "%Jthread-local declaration of '%D' follows non-thread-local declaration"
#~ msgstr "%JThread-lokale Deklaration von »%D« folgt nicht-Thread-lokaler Deklaration"

#~ msgid "%Jnon-thread-local declaration of '%D' follows thread-local declaration"
#~ msgstr "%JNicht-Thread-lokale Deklaration von »%D« folgt Thread-lokaler Deklaration"

#~ msgid "%Jextern declaration of '%D' follows declaration with no linkage"
#~ msgstr "%Jextern-Deklaration von »%D« folgt Deklaration ohne Bindung"

#~ msgid "%Jdeclaration of '%D' with no linkage follows extern declaration"
#~ msgstr "%JDeklaration von »%D« ohne Bindung folgt einer externen Deklaration"

#~ msgid "%Jredeclaration of '%D' with no linkage"
#~ msgstr "%JRedeklarationen von »%D« ohne Bindung"

#~ msgid "%Jredeclaration of '%D' with different visibility (old visibility preserved)"
#~ msgstr "%JRedeklaration von »%D« mit anderer Sichtbarkeit (alte Sichtbarkeit beibehalten)"

#~ msgid "%Jinline declaration of '%D' follows declaration with attribute noinline"
#~ msgstr "%Jinline-Deklaration von »%D« folgt Deklaration mit Attribut noinline"

#~ msgid "%Jdeclaration of '%D' with attribute noinline follows inline declaration "
#~ msgstr "%JDeklaration von »%D« mit Attribut noinline folgt inline-Deklaration "

#~ msgid "%J'%D' declared inline after being called"
#~ msgstr "%J»%D« als inline deklariert nachdem es aufgerufen wurde"

#~ msgid "%J'%D' declared inline after its definition"
#~ msgstr "%J»%D« nach der Definition als inline deklariert"

#~ msgid "%Jvolatile declaration of '%D' follows non-volatile declaration"
#~ msgstr "%J»volatile«-Deklaration von »%D« folgt nicht-»volatile«-Deklaration"

#~ msgid "%Jnon-volatile declaration of '%D' follows volatile declaration"
#~ msgstr "%JNicht-»volatile«-Deklaration von »%D« folgt »volatile«-Deklaration"

#~ msgid "%Jconst declaration of '%D' follows non-const declaration"
#~ msgstr "%Jconst-Deklaration für »%D« folgt Nicht-const Deklaration"

#~ msgid "%Jnon-const declaration of '%D' follows const declaration"
#~ msgstr "%JNicht-const-Deklaration von »%D« folgt const-Deklaration"

#~ msgid "%Jredundant redeclaration of '%D'"
#~ msgstr "%Jredundante Redeklaration von »%D«"

#~ msgid "nested extern declaration of `%s'"
#~ msgstr "geschachtelte extern-Deklaration von »%s«"

#~ msgid "%Jprevious declaration of '%D'"
#~ msgstr "%Jvorherige Deklaration von »%D«"

#~ msgid "implicit declaration of function `%s'"
#~ msgstr "implizite Deklaration der Funktion »%s«"

#~ msgid "`%s' undeclared here (not in a function)"
#~ msgstr "»%s« ist hier nicht deklariert (nicht in einer Funktion)"

#~ msgid "`%s' undeclared (first use in this function)"
#~ msgstr "»%s« nicht deklariert (erste Benutzung in dieser Funktion)"

#~ msgid "(Each undeclared identifier is reported only once"
#~ msgstr "(Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt"

#~ msgid "for each function it appears in.)"
#~ msgstr "für jede Funktion in der er auftritt.)"

#~ msgid "label %s referenced outside of any function"
#~ msgstr "Marke %s außerhalb einer Funktion referenziert"

#~ msgid "duplicate label declaration `%s'"
#~ msgstr "doppelte Markendeklaration »%s«"

#~ msgid "%Jthis is a previous declaration"
#~ msgstr "%Jdies ist eine vorherige Deklaration"

#~ msgid "%Hduplicate label `%D'"
#~ msgstr "%Hdoppelte Marke »%D«"

#~ msgid "%J`%D' previously defined here"
#~ msgstr "%J»%D« bereits hier definiert"

#~ msgid "%J`%D' previously declared here"
#~ msgstr "%J»%D« bereits hier deklariert"

#~ msgid "%Htraditional C lacks a separate namespace for labels, identifier `%s' conflicts"
#~ msgstr "%Htraditionelles C bietet keinen separaten Namespace für Marken an, Bezeichner »%s« steht in Konflikt"

#~ msgid "%H`%s' defined as wrong kind of tag"
#~ msgstr "%H»%s« definiert als falsche Symbolart"

#~ msgid "unnamed struct/union that defines no instances"
#~ msgstr "unbenannte struct/union, die keine Instanzen definiert"

#~ msgid "useless keyword or type name in empty declaration"
#~ msgstr "nutzloses Schlüsselwort oder Typenname in leerer Deklaration"

#~ msgid "two types specified in one empty declaration"
#~ msgstr "zwei Typen in einer leeren Deklaration angegeben"

#~ msgid "empty declaration"
#~ msgstr "leere Deklaration"

#~ msgid "ISO C90 does not support `static' or type qualifiers in parameter array declarators"
#~ msgstr "ISO-C90 unterstützt kein »static« oder Typkennzeichner in Parameterfelddeklaratoren"

#~ msgid "ISO C90 does not support `[*]' array declarators"
#~ msgstr "ISO-C90 unterstützt nicht »[*]«-Felddeklaratoren"

#~ msgid "GCC does not yet properly implement `[*]' array declarators"
#~ msgstr "GCC implementiert noch keine richtigen »[*]«-Felddeklaratoren"

#~ msgid "static or type qualifiers in abstract declarator"
#~ msgstr "static oder Typkennzeichner in abstraktem Deklarator"

#~ msgid "%J'%D' is usually a function"
#~ msgstr "%J»%D« ist üblicherweise eine Funktion"

#~ msgid "typedef `%s' is initialized (use __typeof__ instead)"
#~ msgstr "typedef »%s« ist initialisiert (benutzen Sie stattdessen __typeof__)"

#~ msgid "function `%s' is initialized like a variable"
#~ msgstr "Funktion »%s« ist wie eine Variable initialisiert"

#~ msgid "parameter `%s' is initialized"
#~ msgstr "Parameter »%s« ist initialisiert"

#~ msgid "variable-sized object may not be initialized"
#~ msgstr "Objekt variabler Größe darf nicht initialisiert werden"

#~ msgid "variable `%s' has initializer but incomplete type"
#~ msgstr "Variable »%s« hat Initialisierung, aber unvollständigen Typ"

#~ msgid "elements of array `%s' have incomplete type"
#~ msgstr "Elemente des Feldes »%s« haben unvollständigen Typ"

#~ msgid "%Jinline function '%D' given attribute noinline"
#~ msgstr "%Jinline-Funktion »%D« wurde das Attribut »noinline« gegeben"

#~ msgid "%Jinitializer fails to determine size of '%D'"
#~ msgstr "%JInitialisierung scheitert an Größenbestimmung von »%D«"

#~ msgid "%Jarray size missing in '%D'"
#~ msgstr "%JFeldgröße in »%D« fehlt"

#~ msgid "%Jzero or negative size array '%D'"
#~ msgstr "%JFeldgröße von »%D« ist null oder negativ"

#~ msgid "%Jstorage size of '%D' isn't known"
#~ msgstr "%JSpeichergröße von »%D« ist unbekannt"

#~ msgid "%Jstorage size of '%D' isn't constant"
#~ msgstr "%JSpeichergröße von »%D« ist nicht konstant"

#~ msgid "%Jignoring asm-specifier for non-static local variable '%D'"
#~ msgstr "%Jasm-Symbol für nicht-statische lokale Variable »%D« wird ignoriert"

#~ msgid "ISO C forbids forward parameter declarations"
#~ msgstr "ISO-C verbietet Vorwärtsdeklaration für Parameter"

#~ msgid "<anonymous>"
#~ msgstr "<anonym>"

#~ msgid "bit-field `%s' width not an integer constant"
#~ msgstr "Breite des Bitfeldes »%s« ist keine Ganzzahlkonstante"

#~ msgid "negative width in bit-field `%s'"
#~ msgstr "negative Breite in Bitfeld »%s«"

#~ msgid "zero width for bit-field `%s'"
#~ msgstr "Breite null für Bitfeld »%s«"

#~ msgid "bit-field `%s' has invalid type"
#~ msgstr "Bitfeld »%s« hat ungültigen Typen"

#~ msgid "type of bit-field `%s' is a GCC extension"
#~ msgstr "der Typ des Bitfeldes »%s« ist eine Erweiterung des GCC"

#~ msgid "width of `%s' exceeds its type"
#~ msgstr "Breite von »%s« überschreitet dessen Typen"

#~ msgid "`%s' is narrower than values of its type"
#~ msgstr "»%s« ist schmaler als die Werte seines Typs"

#~ msgid "`long long long' is too long for GCC"
#~ msgstr "»long long long« ist für GCC zu lang"

#~ msgid "ISO C90 does not support `long long'"
#~ msgstr "ISO-C90 unterstützt nicht »long long«"

#~ msgid "duplicate `%s'"
#~ msgstr "doppeltes »%s«"

#~ msgid "`__thread' before `extern'"
#~ msgstr "»__thread« vor »extern«"

#~ msgid "`__thread' before `static'"
#~ msgstr "»__thread« vor »static«"

#~ msgid "two or more data types in declaration of `%s'"
#~ msgstr "zwei oder mehr Datentypen in Deklaration von »%s«"

#~ msgid "`%s' fails to be a typedef or built in type"
#~ msgstr "»%s« ist kein typedef oder eingebauter Typ"

#~ msgid "type defaults to `int' in declaration of `%s'"
#~ msgstr "»int« ist Standardtyp in Deklaration von »%s«"

#~ msgid "both long and short specified for `%s'"
#~ msgstr "sowohl »long« als auch »short« für »%s« angegeben"

#~ msgid "long or short specified with char for `%s'"
#~ msgstr "»long« oder »short« mit »char« für »%s« angegeben"

#~ msgid "long or short specified with floating type for `%s'"
#~ msgstr "»long« oder »short« mit Gleitkommatyp für »%s« angegeben"

#~ msgid "the only valid combination is `long double'"
#~ msgstr "die einzig gültige Kombination ist »long double«"

#~ msgid "both signed and unsigned specified for `%s'"
#~ msgstr "sowohl »signed« als auch »unsigned« für »%s« angegeben"

#~ msgid "long, short, signed or unsigned invalid for `%s'"
#~ msgstr "long, short, signed oder unsigned ist ungültig für »%s«"

#~ msgid "long, short, signed or unsigned used invalidly for `%s'"
#~ msgstr "long, short, signed oder unsigned ungültig verwendet für »%s«"

#~ msgid "complex invalid for `%s'"
#~ msgstr "complex ungültig für »%s«"

#~ msgid "ISO C90 does not support complex types"
#~ msgstr "ISO-C90 unterstützt nicht komplexe Typen"

#~ msgid "ISO C does not support plain `complex' meaning `double complex'"
#~ msgstr "ISO-C unterstützt nicht »double complex« bedeutendes »complex«"

#~ msgid "ISO C does not support complex integer types"
#~ msgstr "ISO-C unterstützt keine komplexen Ganzzahltypen"

#~ msgid "duplicate `const'"
#~ msgstr "doppeltes »const«"

#~ msgid "duplicate `restrict'"
#~ msgstr "doppeltes »restrict«"

#~ msgid "duplicate `volatile'"
#~ msgstr "doppeltes »volatile«"

#~ msgid "multiple storage classes in declaration of `%s'"
#~ msgstr "mehrere Speicherklassen in Deklaration von »%s«"

#~ msgid "function definition declared `auto'"
#~ msgstr "Funktionsdefinition deklarierte »auto«"

#~ msgid "function definition declared `register'"
#~ msgstr "Funktionsdefinition deklarierte »register«"

#~ msgid "function definition declared `typedef'"
#~ msgstr "Funktionsdefinition deklarierte »typedef«"

#~ msgid "function definition declared `__thread'"
#~ msgstr "Funktionsdefinition deklarierte »__thread«"

#~ msgid "storage class specified for structure field `%s'"
#~ msgstr "Speicherklasse für Strukturfeld »%s« angegeben"

#~ msgid "storage class specified for parameter `%s'"
#~ msgstr "Speicherklasse für Parameter »%s« angegeben"

#~ msgid "storage class specified for typename"
#~ msgstr "Speicherklasse für Typnamen angegeben"

#~ msgid "`%s' initialized and declared `extern'"
#~ msgstr "»%s« initialisiert und als »extern« deklariert"

#~ msgid "`%s' has both `extern' and initializer"
#~ msgstr "»%s« hat sowohl »extern« als auch Initialisierung"

#~ msgid "file-scope declaration of `%s' specifies `auto'"
#~ msgstr "Deklaration von »%s« in Datei-Sichtbarkeitsbereich spezifiziert »auto«"

#~ msgid "nested function `%s' declared `extern'"
#~ msgstr "geschachtelte Funktion »%s« als »extern« deklariert"

#~ msgid "function-scope `%s' implicitly auto and declared `__thread'"
#~ msgstr "Funktions-Gültigkeitsbereich »%s« ist implizit auto und deklarierte »__thread«"

#~ msgid "static or type qualifiers in non-parameter array declarator"
#~ msgstr "»static« oder Typkennzeichner in Nicht-Parameter-Felddeklarator"

#~ msgid "declaration of `%s' as array of voids"
#~ msgstr "Deklaration von »%s« als Feld von voids"

#~ msgid "declaration of `%s' as array of functions"
#~ msgstr "Deklaration von »%s« als Feld von Funtionen"

#~ msgid "invalid use of structure with flexible array member"
#~ msgstr "ungültige Verwendung einer Struktur mit flexiblem Feldelement"

#~ msgid "size of array `%s' has non-integer type"
#~ msgstr "Feldgröße von »%s« hat Nicht-Ganzzahltyp"

#~ msgid "ISO C forbids zero-size array `%s'"
#~ msgstr "ISO-C verbietet Feld »%s« der Größe null"

#~ msgid "size of array `%s' is negative"
#~ msgstr "Feldgröße von »%s« ist negativ"

#~ msgid "ISO C90 forbids array `%s' whose size can't be evaluated"
#~ msgstr "ISO-C90 verbietet Feld »%s«, dessen Größe nicht ausgewertet werden kann"

#~ msgid "ISO C90 forbids variable-size array `%s'"
#~ msgstr "ISO-C90 verbietet Feld »%s« variabler Größe"

#~ msgid "size of array `%s' is too large"
#~ msgstr "Feldgröße von »%s« ist zu groß"

#~ msgid "ISO C90 does not support flexible array members"
#~ msgstr "ISO-C90 unterstützt keine flexiblen Felder als Elemente"

#~ msgid "array type has incomplete element type"
#~ msgstr "Feldtyp hat unvollständigen Elementtypen"

#~ msgid "`%s' declared as function returning a function"
#~ msgstr "»%s« als Funktion, die eine Funktion zurückgibt, deklariert"

#~ msgid "`%s' declared as function returning an array"
#~ msgstr "»%s« als Funktion, die ein Feld zurückgibt, deklariert"

#~ msgid "ISO C forbids qualified void function return type"
#~ msgstr "ISO-C verbietet qualifiziertes void als Funktions-Rückgabetypen"

#~ msgid "type qualifiers ignored on function return type"
#~ msgstr "Typkennzeichner ignoriert an Funktions-Rückgabewert"

#~ msgid "ISO C forbids qualified function types"
#~ msgstr "ISO-C verbietet qualifizierte Funktionstypen"

#~ msgid "invalid type modifier within pointer declarator"
#~ msgstr "ungültiger Typmodifizierer innerhalb Zeigerdeklarator"

#~ msgid "ISO C forbids const or volatile function types"
#~ msgstr "ISO-C verbietet const- oder volatile-Funktionstypen"

#~ msgid "variable or field `%s' declared void"
#~ msgstr "Variable oder Feld »%s« als »void« deklariert"

#~ msgid "attributes in parameter array declarator ignored"
#~ msgstr "Attribute in Parameterfelddeklarator ignoriert"

#~ msgid "invalid type modifier within array declarator"
#~ msgstr "ungültiger Typmodifizierer in Felddeklarator"

#~ msgid "field `%s' declared as a function"
#~ msgstr "Feld »%s« als Funktion deklariert"

#~ msgid "field `%s' has incomplete type"
#~ msgstr "Feld »%s« hat unvollständigen Typen"

#~ msgid "invalid storage class for function `%s'"
#~ msgstr "ungültige Speicherklasse für Funktion »%s«"

#~ msgid "`noreturn' function returns non-void value"
#~ msgstr "»noreturn«-Funktion gibt nicht-void-Wert zurück"

#~ msgid "cannot inline function `main'"
#~ msgstr "»main« ist nicht als »inline« möglich"

#~ msgid "variable previously declared `static' redeclared `extern'"
#~ msgstr "als »extern« redeklarierte Variable war bereits als »static« deklariert"

#~ msgid "%Jvariable '%D' declared `inline'"
#~ msgstr "%JVariable »%D« als »inline« deklariert"

#~ msgid "thread-local storage not supported for this target"
#~ msgstr "Thread-lokaler Speicher wird für dieses Ziel nicht unterstützt"

#~ msgid "function declaration isn't a prototype"
#~ msgstr "Funktionsdeklaration ist kein Prototyp"

#~ msgid "parameter names (without types) in function declaration"
#~ msgstr "Parameternamen (ohne Typen) in Funktionsdeklaration"

#~ msgid "parameter `%s' has incomplete type"
#~ msgstr "Parameter »%s« hat unvollständigen Typen"

#~ msgid "parameter has incomplete type"
#~ msgstr "Parameter hat unvollständigen Typen"

#~ msgid "\"void\" as only parameter may not be qualified"
#~ msgstr "\"void\" kann als einziger Parameter nicht qualifiziert werden"

#~ msgid "\"void\" must be the only parameter"
#~ msgstr "\"void\" muss der einzige Parameter sein"

#~ msgid "%Jparameter \"%D\" has just a forward declaration"
#~ msgstr "%JParameter »%D« hat nur eine Vorwärtsdeklaration"

#~ msgid "\"%s %s\" declared inside parameter list"
#~ msgstr "\"%s %s\" innerhalb Parameterliste deklariert"

#~ msgid "anonymous %s declared inside parameter list"
#~ msgstr "anonymes %s innerhalb Parameterliste deklariert"

#~ msgid "its scope is only this definition or declaration, which is probably not what you want"
#~ msgstr "sein Gültigkeitsbereich umfasst nur diese Definition bzw. Deklaration, was Sie wahrscheinlich nicht wollten"

#~ msgid "redefinition of `union %s'"
#~ msgstr "Redefinition von »union %s«"

#~ msgid "redefinition of `struct %s'"
#~ msgstr "Redefinition von »struct %s«"

#~ msgid "declaration does not declare anything"
#~ msgstr "Deklaration deklariert nichts"

#~ msgid "%Jduplicate member '%D'"
#~ msgstr "%Jdoppeltes Element »%D«"

#~ msgid "%s defined inside parms"
#~ msgstr "%s innerhalb Parameter definiert"

#~ msgid "union"
#~ msgstr "Union"

#~ msgid "structure"
#~ msgstr "Struktur"

#~ msgid "%s has no %s"
#~ msgstr "%s hat kein %s"

#~ msgid "struct"
#~ msgstr "struct"

#~ msgid "named members"
#~ msgstr "benannte Elemente"

#~ msgid "members"
#~ msgstr "Elemente"

#~ msgid "nested redefinition of `%s'"
#~ msgstr "Verschachtelte Redefinition von »%s«"

#~ msgid "%Jflexible array member in union"
#~ msgstr "%Jflexibles Feldelement in Union"

#~ msgid "%Jflexible array member not at end of struct"
#~ msgstr "%Jflexibles Feld-Element nicht am Ende von struct"

#~ msgid "%Jflexible array member in otherwise empty struct"
#~ msgstr "%Jlexibler Feld-Element in ansonsten leerem struct"

#~ msgid "%Jinvalid use of structure with flexible array member"
#~ msgstr "%Jungültige Verwendung einer Struktur mit flexiblem Feld-Element"

#~ msgid "union cannot be made transparent"
#~ msgstr "union kann nicht transparent gemacht werden"

#~ msgid "redeclaration of `enum %s'"
#~ msgstr "Redeklaration von »enum %s«"

#~ msgid "enum defined inside parms"
#~ msgstr "enum innerhalb von Parametern definiert"

#~ msgid "enumeration values exceed range of largest integer"
#~ msgstr "Aufzählungswerte überschreiten Wertebereich des größten Ganzzahltypen"

#~ msgid "enumerator value for `%s' not integer constant"
#~ msgstr "Aufzählungswert für »%s« ist keine Ganzzahlkonstante"

#~ msgid "overflow in enumeration values"
#~ msgstr "Überlauf in Aufzählungswerten"

#~ msgid "ISO C restricts enumerator values to range of `int'"
#~ msgstr "ISO-C beschränkt Aufzählungswerte auf Bereich von »int«"

#~ msgid "return type is an incomplete type"
#~ msgstr "Rückgabetyp ist unvollständig"

#~ msgid "return type defaults to `int'"
#~ msgstr "Rückgabetyp ist auf »int« voreingestellt"

#~ msgid "%Jno previous prototype for '%D'"
#~ msgstr "%Jkein vorheriger Prototyp für »%D«"

#~ msgid "%J'%D' was used with no prototype before its definition"
#~ msgstr "%J»%D« wurde vor seiner Definition ohne Prototyp verwendet"

#~ msgid "%Jno previous declaration for '%D'"
#~ msgstr "%Jkeine vorherige Deklaration für »%D«"

#~ msgid "%J`%D' was used with no declaration before its definition"
#~ msgstr "%J»%D« wurde vor seiner Definition ohne Deklaration verwendet"

#~ msgid "%Jreturn type of '%D' is not `int'"
#~ msgstr "%JRückgabetyp von »%D« ist nicht »int«"

#~ msgid "%Jfirst argument of '%D' should be `int'"
#~ msgstr "%Jerstes Argument von »%D« sollte »int« sein"

#~ msgid "%Jsecond argument of '%D' should be 'char **'"
#~ msgstr "%Jzweites Argument von »%D« sollte »char **« sein"

#~ msgid "%Jthird argument of '%D' should probably be 'char **'"
#~ msgstr "%Jdrittes Argument von »%D« sollte wahrscheinlich »char **« sein"

#~ msgid "%J'%D' takes only zero or two arguments"
#~ msgstr "%J»%D« benötigt entweder null oder zwei Argumente"

#~ msgid "%J'%D' is normally a non-static function"
#~ msgstr "%J»%D« ist normalerweise eine Nicht-static-Funktion"

#~ msgid "%Jold-style parameter declarations in prototyped function definition"
#~ msgstr "%JParameterdeklarationen alten Stils in Prototyp-Funktionsdeklaration"

#~ msgid "%Jparameter name omitted"
#~ msgstr "%JParametername ausgelassen"

#~ msgid "%Jparameter name missing from parameter list"
#~ msgstr "%JParametername fehlt in Parameterliste"

#~ msgid "%J\"%D\" declared as a non-parameter"
#~ msgstr "%J\"%D\" als Nicht-Parameter deklariert"

#~ msgid "%Jmultiple parameters named \"%D\""
#~ msgstr "%Jmehrere Parameter wurden »%D« genannt"

#~ msgid "%Jparameter \"%D\" declared void"
#~ msgstr "%JParameter »%D« als void deklariert"

#~ msgid "%Jtype of \"%D\" defaults to \"int\""
#~ msgstr "%JTyp von »%D« ist auf »int« voreingestellt"

#~ msgid "%Jparameter \"%D\" has incomplete type"
#~ msgstr "%JParameter \"%D\" hat unvollständigen Typen"

#~ msgid "%Jdeclaration for parameter \"%D\" but no such parameter"
#~ msgstr "%Jnicht vorhandener Parameter »%D« deklariert"

#~ msgid "number of arguments doesn't match prototype"
#~ msgstr "Anzahl der Argumente passt nicht zum Prototypen"

#~ msgid "%Hprototype declaration"
#~ msgstr "%HPrototyp-Deklaration"

#~ msgid "promoted argument \"%D\" doesn't match prototype"
#~ msgstr "weitergegebenes Argument »%D« passt nicht zum Prototypen"

#~ msgid "argument \"%D\" doesn't match prototype"
#~ msgstr "Argument »%D« passt nicht zum Prototypen"

#~ msgid "no return statement in function returning non-void"
#~ msgstr "keine return-Anweisung in nicht void zurückgebender Funktion"

#~ msgid "this function may return with or without a value"
#~ msgstr "diese Funktion kann mit oder ohne Wert zurückkehren"

#~ msgid "'for' loop initial declaration used outside C99 mode"
#~ msgstr "Anfangsdeklaration in »for«-Schleife außerhalb C99-Modus verwendet"

#~ msgid "'struct %s' declared in 'for' loop initial declaration"
#~ msgstr "»struct %s« in Anfangsdeklaration einer »for«-Schleife deklariert"

#~ msgid "'union %s' declared in 'for' loop initial declaration"
#~ msgstr "»union %s« in Anfangsdeklaration einer »for«-Schleife deklariert"

#~ msgid "'enum %s' declared in 'for' loop initial declaration"
#~ msgstr "»enum %s« in Anfangsdeklaration einer »for«-Schleife deklariert"

#~ msgid "%Jdeclaration of non-variable '%D' in 'for' loop initial declaration"
#~ msgstr "%JDeklaration der Nicht-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"

#~ msgid "%Jdeclaration of static variable '%D' in 'for' loop initial declaration"
#~ msgstr "%JDeklaration der »static«-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"

#~ msgid "%Jdeclaration of 'extern' variable '%D' in 'for' loop initial declaration"
#~ msgstr "%JDeklaration der »extern«-Variablen »%D« in Anfangsdeklaration einer »for«-Schleife"

#~ msgid "%Jredefinition of global '%D'"
#~ msgstr "%JRedefinition des globalen »%D«"

#~ msgid "%J'%D' previously defined here"
#~ msgstr "%J»%D« bereits hier verwendet"

#~ msgid "format string has invalid operand number"
#~ msgstr "Formatzeichenkette hat ungültige Operandenzahl"

#~ msgid "function does not return string type"
#~ msgstr "Funktion gibt keinen Zeichenkettentypen zurück"

#~ msgid "format string arg not a string type"
#~ msgstr "Format-Zeichenkettenargument ist kein Zeichenkettentyp"

#~ msgid "unrecognized format specifier"
#~ msgstr "unerkannte Formatangabe"

#~ msgid "`%s' is an unrecognized format function type"
#~ msgstr "»%s« ist ein nicht erkannter Formatfunktionstyp"

#~ msgid "'...' has invalid operand number"
#~ msgstr "»...« hat ungültige Operandenzahl"

#~ msgid "format string arg follows the args to be formatted"
#~ msgstr "Format-Zeichenkettenargument folgt den zu formatierenden Argumenten"

#~ msgid "` ' flag"
#~ msgstr "» «-Kennzeichen"

#~ msgid "the ` ' printf flag"
#~ msgstr "das » «-printf-Kennzeichen"

#~ msgid "`+' flag"
#~ msgstr "»+«-Kennzeichen"

#~ msgid "the `+' printf flag"
#~ msgstr "das »+«-printf-Kennzeichen"

#~ msgid "`#' flag"
#~ msgstr "»#«-Kennzeichen"

#~ msgid "the `#' printf flag"
#~ msgstr "das »#«-printf-Kennzeichen"

#~ msgid "`0' flag"
#~ msgstr "»0«-Kennzeichen"

#~ msgid "the `0' printf flag"
#~ msgstr "das »0«-printf-Kennzeichen"

#~ msgid "`-' flag"
#~ msgstr "»-«-Kennzeichen"

#~ msgid "the `-' printf flag"
#~ msgstr "das »-«-printf-Kennzeichen"

#~ msgid "`'' flag"
#~ msgstr "»'«-Kennzeichen"

#~ msgid "the `'' printf flag"
#~ msgstr "das »'«-printf-Kennzeichen"

#~ msgid "`I' flag"
#~ msgstr "»I«-Kennzeichen"

#~ msgid "the `I' printf flag"
#~ msgstr "das »I«-printf-Kennzeichen"

#~ msgid "field width"
#~ msgstr "Feldbreite"

#~ msgid "field width in printf format"
#~ msgstr "Feldbreite im printf-Format"

#~ msgid "precision"
#~ msgstr "Genauigkeit"

#~ msgid "precision in printf format"
#~ msgstr "Genauigkeit im printf-Format"

#~ msgid "length modifier"
#~ msgstr "Längenmodifizierer"

#~ msgid "length modifier in printf format"
#~ msgstr "Längenmodifizierer im printf-Format"

#~ msgid "assignment suppression"
#~ msgstr "Zuweisungsunterdrückung"

#~ msgid "the assignment suppression scanf feature"
#~ msgstr "das scanf-Merkmal der Zuweisungsunterdrückung"

#~ msgid "`a' flag"
#~ msgstr "»a«-Kennzeichen"

#~ msgid "the `a' scanf flag"
#~ msgstr "das »a«-scanf-Kennzeichen"

#~ msgid "field width in scanf format"
#~ msgstr "Feldbreite im scanf-Format"

#~ msgid "length modifier in scanf format"
#~ msgstr "Längenmodifizierer im scanf-Format"

#~ msgid "the `'' scanf flag"
#~ msgstr "das »'«-scanf-Kennzeichen"

#~ msgid "the `I' scanf flag"
#~ msgstr "das »I«-scanf-Kennzeichen"

#~ msgid "`_' flag"
#~ msgstr "»_«-Kennzeichen"

#~ msgid "the `_' strftime flag"
#~ msgstr "das »_«-strftime-Kennzeichen"

#~ msgid "the `-' strftime flag"
#~ msgstr "das »-«-strftime-Kennzeichen"

#~ msgid "the `0' strftime flag"
#~ msgstr "das »0«-strftime-Kennzeichen"

#~ msgid "`^' flag"
#~ msgstr "»^«-Kennzeichen"

#~ msgid "the `^' strftime flag"
#~ msgstr "das »^«-strftime-Kennzeichen"

#~ msgid "the `#' strftime flag"
#~ msgstr "das »#«-strftime-Kennzeichen"

#~ msgid "field width in strftime format"
#~ msgstr "Feldbreite im strftime-Format"

#~ msgid "`E' modifier"
#~ msgstr "»E«-Modifizierer"

#~ msgid "the `E' strftime modifier"
#~ msgstr "der »E«-strftime-Modifizierer"

#~ msgid "`O' modifier"
#~ msgstr "»O«-Modifizierer"

#~ msgid "the `O' strftime modifier"
#~ msgstr "der »O«-strftime-Modifizierer"

#~ msgid "the `O' modifier"
#~ msgstr "der »O«-Modifizierer"

#~ msgid "fill character"
#~ msgstr "Füllzeichen"

#~ msgid "fill character in strfmon format"
#~ msgstr "Füllzeichen im strfmon-Format"

#~ msgid "the `^' strfmon flag"
#~ msgstr "das »^«-strfmon-Kennzeichen"

#~ msgid "the `+' strfmon flag"
#~ msgstr "das »+«-strfmon-Kennzeichen"

#~ msgid "`(' flag"
#~ msgstr "»(«-Kennzeichen"

#~ msgid "the `(' strfmon flag"
#~ msgstr "das »(«-strfmon-Kennzeichen"

#~ msgid "`!' flag"
#~ msgstr "»!«-Kennzeichen"

#~ msgid "the `!' strfmon flag"
#~ msgstr "das »!«-strfmon-Kennzeichen"

#~ msgid "the `-' strfmon flag"
#~ msgstr "das »-«-strfmon-Kennzeichen"

#~ msgid "field width in strfmon format"
#~ msgstr "Feldbreite im strfmon-Format"

#~ msgid "left precision"
#~ msgstr "linke Präzision"

#~ msgid "left precision in strfmon format"
#~ msgstr "linke Präzision im strfmon-Format"

#~ msgid "right precision"
#~ msgstr "rechte Präzision"

#~ msgid "right precision in strfmon format"
#~ msgstr "rechte Präzision im strfmon-Format"

#~ msgid "length modifier in strfmon format"
#~ msgstr "Längenmodifizierer im strfmon-Format"

#~ msgid "function might be possible candidate for `%s' format attribute"
#~ msgstr "Funktion könnte möglicher Kandidat für Formatattribut »%s« sein"

#~ msgid "missing $ operand number in format"
#~ msgstr "fehlende $-Operandennummer im Format"

#~ msgid "%s does not support %%n$ operand number formats"
#~ msgstr "%s unterstützt nicht %%n$-Operandennummerformate"

#~ msgid "operand number out of range in format"
#~ msgstr "Operandennummer außerhalb des Wertebereiches im Format"

#~ msgid "format argument %d used more than once in %s format"
#~ msgstr "Formatargument %d mehr als einmal im %s-Format verwendet"

#~ msgid "format argument %d unused before used argument %d in $-style format"
#~ msgstr "Formatargument %d nicht verwendet vor benutztem Argument %d im $-Stil-Format"

#~ msgid "format not a string literal, format string not checked"
#~ msgstr "Format ist kein Zeichenkettenliteral, Formatzeichenkette ungeprüft"

#~ msgid "format not a string literal and no format arguments"
#~ msgstr "Format ist kein Zeichenkettenliteral, und keine Formatargumente"

#~ msgid "format not a string literal, argument types not checked"
#~ msgstr "Format ist kein Zeichenkettenliteral, Argumenttypen ungeprüft"

#~ msgid "too many arguments for format"
#~ msgstr "zu viele Argumente für Format"

#~ msgid "unused arguments in $-style format"
#~ msgstr "unbenutzte Argumente in $-Stil-Format"

#~ msgid "zero-length %s format string"
#~ msgstr "Format-Zeichenkette %s der Länge null"

#~ msgid "format is a wide character string"
#~ msgstr "Format ist »wide character«-Zeichenkette"

#~ msgid "unterminated format string"
#~ msgstr "unbeendete Formatzeichenkette"

#~ msgid "embedded `\\0' in format"
#~ msgstr "eingebettetes »\\0« im Format"

#~ msgid "spurious trailing `%%' in format"
#~ msgstr "störendes letztes »%%« im Format"

#~ msgid "repeated %s in format"
#~ msgstr "wiederholtes %s im Format"

#~ msgid "missing fill character at end of strfmon format"
#~ msgstr "fehlendes Füllzeichen am Ende des strfmon-Formates"

#~ msgid "too few arguments for format"
#~ msgstr "zu wenig Argumente für Format"

#~ msgid "zero width in %s format"
#~ msgstr "Breite null im Format %s"

#~ msgid "empty left precision in %s format"
#~ msgstr "leere linke Präzision im Format %s"

#~ msgid "field precision"
#~ msgstr "Feldpräzision"

#~ msgid "empty precision in %s format"
#~ msgstr "fehlende Präzision im Format %s"

#~ msgid "%s does not support the `%s' %s length modifier"
#~ msgstr "%s unterstützt nicht den Längenmodifizierer »%s« %s"

#~ msgid "conversion lacks type at end of format"
#~ msgstr "Konvertierung fehlt der Typ am Ende des Formates"

#~ msgid "unknown conversion type character `%c' in format"
#~ msgstr "unbekanntes Konvertierungstyp-Zeichen »%c« im Format"

#~ msgid "unknown conversion type character 0x%x in format"
#~ msgstr "unbekanntes Konvertierungstyp-Zeichen 0x%x im Format"

#~ msgid "%s does not support the `%%%c' %s format"
#~ msgstr "%s unterstützt nicht das Format »%%%c« %s"

#~ msgid "%s used with `%%%c' %s format"
#~ msgstr "%s verwendet mit Format »%%%c« %s"

#~ msgid "%s does not support %s"
#~ msgstr "%s unterstützt nicht %s"

#~ msgid "%s does not support %s with the `%%%c' %s format"
#~ msgstr "%s unterstützt nicht %s mit dem Format »%%%c« %s"

#~ msgid "%s ignored with %s and `%%%c' %s format"
#~ msgstr "%s ignoriert mit %s und Format »%%%c« %s"

#~ msgid "%s ignored with %s in %s format"
#~ msgstr "%s ignoriert mit %s im Format %s"

#~ msgid "use of %s and %s together with `%%%c' %s format"
#~ msgstr "Verwendung von %s und %s zusammen mit Format »%%%c« %s"

#~ msgid "use of %s and %s together in %s format"
#~ msgstr "Verwendung von %s und %s zusammen im Format %s"

#~ msgid "`%%%c' yields only last 2 digits of year in some locales"
#~ msgstr "»%%%c« liefert in manchen Locales nur die letzten 2 Ziffern des Jahres"

#~ msgid "`%%%c' yields only last 2 digits of year"
#~ msgstr "»%%%c« liefert nur die letzten 2 Ziffern des Jahres"

#~ msgid "no closing `]' for `%%[' format"
#~ msgstr "kein schließendes »]« für »%%[«-Format"

#~ msgid "use of `%s' length modifier with `%c' type character"
#~ msgstr "Verwendung des »%s«-Längenmodifizierers mit »%c«-Typ-Zeichen"

#~ msgid "%s does not support the `%%%s%c' %s format"
#~ msgstr "%s unterstützt nicht das Format »%%%s%c« %s"

#~ msgid "operand number specified with suppressed assignment"
#~ msgstr "Operandennummer mit unterdrückter Zuweisung angegeben"

#~ msgid "operand number specified for format taking no argument"
#~ msgstr "Operandennummer für Format ohne Argumente angegeben"

#~ msgid "writing through null pointer (arg %d)"
#~ msgstr "Schreiben mit Null-Zeiger (Argument %d)"

#~ msgid "reading through null pointer (arg %d)"
#~ msgstr "Lesen mit Null-Zeiger (Argument %d)"

#~ msgid "writing into constant object (arg %d)"
#~ msgstr "Schreiben in konstantes Objekt (Argument %d)"

#~ msgid "extra type qualifiers in format argument (arg %d)"
#~ msgstr "zusätzliche Typqualifizierer in Format-Argument (Argument %d)"

#~ msgid "format argument is not a pointer (arg %d)"
#~ msgstr "Format-Argument ist kein Zeiger (Argument %d)"

#~ msgid "format argument is not a pointer to a pointer (arg %d)"
#~ msgstr "Format-Argument ist kein Zeiger auf einen Zeiger (Argument %d)"

#~ msgid "pointer"
#~ msgstr "Zeiger"

#~ msgid "different type"
#~ msgstr "anderer Typ"

#~ msgid "%s is not type %s (arg %d)"
#~ msgstr "%s ist nicht vom Typ %s (Argument %d)"

#~ msgid "%s format, %s arg (arg %d)"
#~ msgstr "%s Format, %s Argument (Argument %d)"

#~ msgid "args to be formatted is not '...'"
#~ msgstr "zu formatierendes Argument ist nicht »...«"

#~ msgid "strftime formats cannot format arguments"
#~ msgstr "strftime-Formate können keine Argumente formatieren"

#~ msgid "ignoring duplicate directory \"%s\"\n"
#~ msgstr "doppeltes Verzeichnis »%s« wird ignoriert\n"

#~ msgid "  as it is a non-system directory that duplicates a system directory\n"
#~ msgstr "  da es ein Nicht-Systemverzeichnis ist, das ein Systemverzeichnis dupliziert\n"

#~ msgid "ignoring nonexistent directory \"%s\"\n"
#~ msgstr "nicht vorhandenes Verzeichnis »%s« wird ignoriert\n"

#~ msgid "#include \"...\" search starts here:\n"
#~ msgstr "#include \"...\" - Suche beginnt hier:\n"

#~ msgid "#include <...> search starts here:\n"
#~ msgstr "#include <...> - Suche beginnt hier:\n"

#~ msgid "End of search list.\n"
#~ msgstr "Ende der Suchliste.\n"

#~ msgid "badly nested C headers from preprocessor"
#~ msgstr "schlecht geschachtelte C-Header vom Präprozessor"

#~ msgid "ignoring #pragma %s %s"
#~ msgstr "ignoriere #pragma %s %s"

#~ msgid "%Hstray '@' in program"
#~ msgstr "%Hverirrtes »@« im Programm"

#~ msgid "stray '%c' in program"
#~ msgstr "verirrtes »%c« im Programm"

#~ msgid "stray '\\%o' in program"
#~ msgstr "verirrtes »\\%o« im Programm"

#~ msgid "this decimal constant is unsigned only in ISO C90"
#~ msgstr "diese Dezimalkonstante ist nur in ISO-C90 vorzeichenlos"

#~ msgid "this decimal constant would be unsigned in ISO C90"
#~ msgstr "diese Dezimalkonstante wäre in ISO-C90 vorzeichenlos"

#~ msgid "integer constant is too large for \"%s\" type"
#~ msgstr "Ganzzahlkonstante ist zu groß für »%s«-Typ"

#~ msgid "floating constant exceeds range of \"%s\""
#~ msgstr "Gleitkommakonstante überschreitet Wertebereich von »%s«"

#~ msgid "traditional C rejects string constant concatenation"
#~ msgstr "traditionelles C weist Stringkonstantenverkettung zurück"

#~ msgid "%Jfunction '%F' can never be inlined because it is supressed using -fno-inline"
#~ msgstr "%JFunktion »%F« kann nie inline sein, da dies mit -fno-inline unterdrückt wird"

#~ msgid "%Jfunction '%F' can never be inlined because it might not be bound within this unit of translation"
#~ msgstr "%JFunktion »%F« kann nie inline sein, da sie nicht in diese Übersetzungseinheit gebunden wird"

#~ msgid "%Jfunction '%F' can never be inlined because it uses attributes conflicting with inlining"
#~ msgstr "%JFunktion »%F« kann nie inline sein, da sie mit inline in Konflikt stehende Attribute hat"

#~ msgid "%Jfunction '%F' can never be inlined because it has pending sizes"
#~ msgstr "%JFunktion »%F« kann nie inline sein, da sie noch offene Größen hat"

#~ msgid "%Jnested function '%F' can never be inlined because it has possibly saved pending sizes"
#~ msgstr "%Jdie geschachtelte Funktion »%F« kann nie inline sein, da sie möglicherweise gespeicherte, noch offene Größen hat"

#~ msgid "no class name specified with \"%s\""
#~ msgstr "kein Klassenname mit \"%s\" angegeben"

#~ msgid "assertion missing after \"%s\""
#~ msgstr "Behauptung fehlt hinter \"%s\""

#~ msgid "macro name missing after \"%s\""
#~ msgstr "Makroname fehlt hinter \"%s\""

#~ msgid "missing path after \"%s\""
#~ msgstr "fehlender Pfad hinter \"%s\""

#~ msgid "missing filename after \"%s\""
#~ msgstr "fehlender Dateiname hinter \"%s\""

#~ msgid "missing makefile target after \"%s\""
#~ msgstr "fehlendes Makefile-Ziel hinter \"%s\""

#~ msgid "-I- specified twice"
#~ msgstr "-I- doppelt angegeben"

#~ msgid "switch \"%s\" is no longer supported"
#~ msgstr "Option »%s« wird nicht mehr unterstützt"

#~ msgid "-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
#~ msgstr "-fhandle-exceptions wurde in -fexceptions umbenannt (und ist nun voreingestellt)"

#~ msgid "output filename specified twice"
#~ msgstr "Ausgabedatei doppelt angegeben"

#~ msgid "-Wformat-y2k ignored without -Wformat"
#~ msgstr "-Wformat-y2k wird ohne -Wformat ignoriert"

#~ msgid "-Wformat-extra-args ignored without -Wformat"
#~ msgstr "-Wformat-extra-args wird ohne -Wformat ignoriert"

#~ msgid "-Wformat-zero-length ignored without -Wformat"
#~ msgstr "-Wformat-zero-length wird ohne -Wformat ignoriert"

#~ msgid "-Wformat-nonliteral ignored without -Wformat"
#~ msgstr "-Wformat-nonliteral wird ohne -Wformat ignoriert"

#~ msgid "-Wformat-security ignored without -Wformat"
#~ msgstr "-Wformat-security wird ohne -Wformat ignoriert"

#~ msgid "-Wmissing-format-attribute ignored without -Wformat"
#~ msgstr "-Wmissing-format-attribute wird ohne -Wformat ignoriert"

#~ msgid "opening output file %s: %m"
#~ msgstr "Ausgabedatei »%s« wird geöffnet: %m"

#~ msgid "too many filenames given.  Type %s --help for usage"
#~ msgstr "zu viele Dateinamen angegeben. Geben sie »%s --help« für Hilfe ein"

#~ msgid "YYDEBUG not defined"
#~ msgstr "YYDEBUG ist nicht definiert"

#~ msgid "opening dependency file %s: %m"
#~ msgstr "Abhängigkeitsdatei »%s« wird geöffnet: %m"

#~ msgid "closing dependency file %s: %m"
#~ msgstr "Abhängigkeitsdatei »%s« wird geschlossen: %m"

#~ msgid "when writing output to %s: %m"
#~ msgstr "beim Schreiben der Ausgabe nach %s: %m"

#~ msgid "to generate dependencies you must specify either -M or -MM"
#~ msgstr "um Abhängigkeiten zu erzeugen, müssen Sie entweder -M oder -MM angeben"

#~ msgid "<built-in>"
#~ msgstr "<eingebaut>"

#~ msgid "<command line>"
#~ msgstr "<Kommandozeile>"

#~ msgid "too late for # directive to set debug directory"
#~ msgstr "zu spät für »#«-Direktive, um Debug-Verzeichnis festzulegen"

#~ msgid "syntax error"
#~ msgstr "Syntaxfehler"

#~ msgid "syntax error: cannot back up"
#~ msgstr "Syntaxfehler: es kann nicht zurückgesetzt werden"

#~ msgid "ISO C forbids an empty source file"
#~ msgstr "ISO-C erlaubt keine leeren Quelldateien"

#~ msgid "argument of `asm' is not a constant string"
#~ msgstr "Argument von »asm« ist keine konstante Zeichenkette"

#~ msgid "ISO C forbids data definition with no type or storage class"
#~ msgstr "ISO-C verbietet Datendefinition ohne Typ und Speicherklasse"

#~ msgid "data definition has no type or storage class"
#~ msgstr "Datendefinition hat keinen Typ oder Speicherklasse"

#~ msgid "ISO C does not allow extra `;' outside of a function"
#~ msgstr "ISO-C erlaubt kein extra »;« außerhalb einer Funktion"

#~ msgid "`sizeof' applied to a bit-field"
#~ msgstr "»sizeof«-Operator auf ein Bitfeld angewandt"

#~ msgid "ISO C forbids omitting the middle term of a ?: expression"
#~ msgstr "ISO-C verbietet das Weglassen des mittleren Terms eines ?:-Ausdruckes"

#~ msgid "ISO C89 forbids compound literals"
#~ msgstr "ISO-C89 verbietet zusammengesetzte Literale"

#~ msgid "ISO C forbids braced-groups within expressions"
#~ msgstr "ISO-C verbietet geklammerte Gruppen innerhalb von Ausdrücken"

#~ msgid "first argument to __builtin_choose_expr not a constant"
#~ msgstr "das erste Argument für __builtin_choose_expr ist keine Konstante"

#~ msgid "traditional C rejects ISO C style function definitions"
#~ msgstr "traditionelles C weist Funktionsdefinitionen im ISO-C-Stil zurück"

#~ msgid "old-style parameter declaration"
#~ msgstr "Parameterdeklaration alten Stils"

#~ msgid "`%s' is not at beginning of declaration"
#~ msgstr "»%s« ist nicht am Beginn einer Deklaration"

#~ msgid "`typeof' applied to a bit-field"
#~ msgstr "»typeof« auf ein Bitfeld angewandt"

#~ msgid "ISO C forbids empty initializer braces"
#~ msgstr "ISO-C verbietet leere Initialisierungsklammern"

#~ msgid "ISO C89 forbids specifying subobject to initialize"
#~ msgstr "ISO-C89 verbietet die Angabe von zu initialisierenden Unterobjekten"

#~ msgid "obsolete use of designated initializer without `='"
#~ msgstr "veraltete Verwendung einer bestimmten Initialisierung ohne »=«"

#~ msgid "obsolete use of designated initializer with `:'"
#~ msgstr "veraltete Verwendung einer bestimmten Initialisierung mit »:«"

#~ msgid "ISO C forbids specifying range of elements to initialize"
#~ msgstr "ISO-C verbietet die Angabe eines zu initialisierenden Wertebereiches"

#~ msgid "ISO C forbids nested functions"
#~ msgstr "ISO-C verbietet verschachtelte Funktionen"

#~ msgid "ISO C forbids forward references to `enum' types"
#~ msgstr "ISO-C verbietet Vorwärts-Referenzen auf »enum«-Typen"

#~ msgid "comma at end of enumerator list"
#~ msgstr "Komma am Ende der Aufzählungsliste"

#~ msgid "no semicolon at end of struct or union"
#~ msgstr "kein Semikolon am Ende von »struct« oder »union«"

#~ msgid "extra semicolon in struct or union specified"
#~ msgstr "zusätzliches Semikolon in »struct« oder »union« angegeben"

#~ msgid "ISO C doesn't support unnamed structs/unions"
#~ msgstr "ISO-C unterstützt keine namenlosen structs/unions"

#~ msgid "ISO C forbids member declarations with no members"
#~ msgstr "ISO-C verbietet Elementdeklarationen ohne Elemente"

#~ msgid "label at end of compound statement"
#~ msgstr "Marke am Ende einer Verbundanweisung"

#~ msgid "ISO C90 forbids mixed declarations and code"
#~ msgstr "ISO-C90 verbietet gemischte Deklarationen und Code"

#~ msgid "ISO C forbids label declarations"
#~ msgstr "ISO-C verbietet Markendeklarationen"

#~ msgid "braced-group within expression allowed only inside a function"
#~ msgstr "geklammerte Gruppe innerhalb eines Ausdrucks nur in Funktion erlaubt"

#~ msgid "empty body in an else-statement"
#~ msgstr "leerer Körper in einer else-Anweisung"

#~ msgid "%Hempty body in an if-statement"
#~ msgstr "%Hleerer Körper in einer if-Anweisung"

#~ msgid "break statement not within loop or switch"
#~ msgstr "break-Anweisung nicht innerhalb einer Schleife oder »switch«"

#~ msgid "continue statement not within a loop"
#~ msgstr "continue-Anweisung nicht innerhalb einer Schleife"

#~ msgid "ISO C forbids `goto *expr;'"
#~ msgstr "ISO-C verbietet »goto *expr;«"

#~ msgid "ISO C requires a named argument before `...'"
#~ msgstr "ISO-C erfordert ein benanntes Argument vor »...«"

#~ msgid "`...' in old-style identifier list"
#~ msgstr "»...« in einer Bezeichnerliste alten Stils"

#~ msgid "syntax error; also virtual memory exhausted"
#~ msgstr "Syntaxfehler; auch virtueller Speicher verbraucht"

#~ msgid "parser stack overflow"
#~ msgstr "Parser-Keller-Überlauf"

#~ msgid "syntax error at '%s' token"
#~ msgstr "Syntaxfehler beim Token »%s«"

#~ msgid "can't create precompiled header %s: %m"
#~ msgstr "der vorkompilierte Header »%s« kann nicht erzeugt werden: %m"

#~ msgid "can't write to %s: %m"
#~ msgstr "in %s kann nicht geschrieben werden: %m"

#~ msgid "`%s' is not a valid output file"
#~ msgstr "»%s« ist keine gültige Ausgabedatei"

#~ msgid "can't write %s: %m"
#~ msgstr "%s kann nicht geschrieben werden: %m"

#~ msgid "can't seek in %s: %m"
#~ msgstr "in %s kann nicht positioniert werden: %m"

#~ msgid "can't read %s: %m"
#~ msgstr "%s kann nicht gelesen werden: %m"

#~ msgid "%s: not compatible with this GCC version"
#~ msgstr "%s: nicht kompatibel mit dieser Version des GCC"

#~ msgid "%s: not for %s"
#~ msgstr "%s: nicht für %s"

#~ msgid "%s: not a PCH file"
#~ msgstr "%s: keine PCH-Datei"

#~ msgid "%s: created on host `%.*s', but used on host `%s'"
#~ msgstr "%s: auf Rechner »%.*s« erzeugt, aber auf Rechner »%s« verwendet"

#~ msgid "%s: created for target `%.*s', but used for target `%s'"
#~ msgstr "%s: für das Ziel »%.*s« erzeugt, aber für das Ziel »%s« verwendet"

#~ msgid "%s: created by version `%.*s', but this is version `%s'"
#~ msgstr "%s: durch Version »%.*s« erzeugt, aber dies ist Version »%s«"

#~ msgid "%s: created with -g%s, but used with -g%s"
#~ msgstr "%s: mit -g%s erzeugt, aber mit -g%s verwendet"

#~ msgid "%s: had text segment at different address"
#~ msgstr "%s: Textsegment trat an anderer Adresse auf"

#~ msgid "calling fdopen"
#~ msgstr "fdopen wird aufgerufen"

#~ msgid "reading"
#~ msgstr "Lesen"

#~ msgid "#pragma pack (pop) encountered without matching #pragma pack (push, <n>)"
#~ msgstr "#pragma pack (pop) gefunden ohne passendes #pragma pack (push, <n>)"

#~ msgid "#pragma pack(pop, %s) encountered without matching #pragma pack(push, %s, <n>)"
#~ msgstr "#pragma pack(pop, %s) gefunden ohne passendes #pragma pack(push, %s, <n>)"

#~ msgid "#pragma pack(push[, id], <n>) is not supported on this target"
#~ msgstr "#pragma pack(push[, id], <n>) wird von diesem Ziel nicht unterstützt"

#~ msgid "#pragma pack(pop[, id], <n>) is not supported on this target"
#~ msgstr "#pragma pack(pop[, id], <n>) wird von diesem Ziel nicht unterstützt"

#~ msgid "missing '(' after '#pragma pack' - ignored"
#~ msgstr "fehlendes »(« hinter »#pragma pack« - ignoriert"

#~ msgid "malformed '#pragma pack' - ignored"
#~ msgstr "falsch geformtes »#pragma pack« - ignoriert"

#~ msgid "malformed '#pragma pack(push[, id], <n>)' - ignored"
#~ msgstr "falsch geformtes »#pragma pack(push[, id], <n>)« - ignoriert"

#~ msgid "malformed '#pragma pack(pop[, id])' - ignored"
#~ msgstr "falsch geformtes »#pragma pack(pop[, id])« - ignoriert"

#~ msgid "unknown action '%s' for '#pragma pack' - ignored"
#~ msgstr "unbekannte Aktion »%s« für »#pragma pack« - ignoriert"

#~ msgid "junk at end of '#pragma pack'"
#~ msgstr "Ausschuss am Ende von »#pragma pack«"

#~ msgid "alignment must be a small power of two, not %d"
#~ msgstr "Ausrichtung muss eine kleine Zweierpotenz sein, nicht %d"

#~ msgid "%Japplying #pragma weak '%D' after first use results in unspecified behavior"
#~ msgstr "%JAnwendung von #pragma weak »%D« nach erster Benutzung führt zu nicht spezifiziertem Verhalten"

#~ msgid "malformed #pragma weak, ignored"
#~ msgstr "falsch geformtes #pragma weak, ignoriert"

#~ msgid "junk at end of #pragma weak"
#~ msgstr "Ausschuss am Ende von #pragma weak"

#~ msgid "malformed #pragma redefine_extname, ignored"
#~ msgstr "falsch geformtes #pragma redefine_extname, ignoriert"

#~ msgid "junk at end of #pragma redefine_extname"
#~ msgstr "Ausschuss am Ende von #pragma redefine_extname"

#~ msgid "#pragma redefine_extname conflicts with declaration"
#~ msgstr "#pragma redefine_extname steht in Konflikt mit Deklaration"

#~ msgid "malformed #pragma extern_prefix, ignored"
#~ msgstr "falsch geformtes #pragma extern_prefix, ignoriert"

#~ msgid "junk at end of #pragma extern_prefix"
#~ msgstr "Ausschuss am Ende von #pragma extern_prefix"

#~ msgid "asm declaration conflicts with previous rename"
#~ msgstr "asm-Deklaration steht in Konflikt mit vorheriger Umbenennung"

#~ msgid "destructor needed for `%D'"
#~ msgstr "Destruktor für »%D« benötigt"

#~ msgid "where case label appears here"
#~ msgstr "wobei die case-Marke hier auftritt"

#~ msgid "(enclose actions of previous case statements requiring destructors in their own scope.)"
#~ msgstr "(schließen Sie Aktionen vorheriger case-Anweisungen, die Destruktoren benötigen, in ihrem eigenen Gültigkeitsbereich ein)"

#~ msgid "%s qualifier ignored on asm"
#~ msgstr "%s-Qualifizierer für asm ignoriert"

#~ msgid "will never be executed"
#~ msgstr "wird niemals ausgeführt"

#~ msgid "`%s' has an incomplete type"
#~ msgstr "»%s« hat unvollständigen Typ"

#~ msgid "invalid use of void expression"
#~ msgstr "falsche Benutzung eines void-Ausdruckes"

#~ msgid "invalid use of flexible array member"
#~ msgstr "falsche Benutzung eines flexiblen Feldelements"

#~ msgid "invalid use of array with unspecified bounds"
#~ msgstr "falsche Benutzung eines Feldes mit unbekannten Grenzen"

#~ msgid "invalid use of undefined type `%s %s'"
#~ msgstr "falsche Benutzung des undefinierten Typs »%s %s«"

#~ msgid "invalid use of incomplete typedef `%s'"
#~ msgstr "falsche Benutzung des unvollständigen typedef »%s«"

#~ msgid "function types not truly compatible in ISO C"
#~ msgstr "Funktionstypen nicht wirklich kompatibel in ISO-C"

#~ msgid "types are not quite compatible"
#~ msgstr "Typen nicht sehr kompatibel"

#~ msgid "function return types not compatible due to `volatile'"
#~ msgstr "Funktionsrückgabetypen nicht kompatibel wegen »volatile«"

#~ msgid "arithmetic on pointer to an incomplete type"
#~ msgstr "Arithmetik mit Zeiger auf unvollständigen Typen"

#~ msgid "%s has no member named `%s'"
#~ msgstr "%s hat kein Element namens »%s«"

#~ msgid "request for member `%s' in something not a structure or union"
#~ msgstr "Anfrage nach Element »%s« in etwas, was keine Struktur oder Variante ist"

#~ msgid "dereferencing pointer to incomplete type"
#~ msgstr "Dereferenzierung eines Zeigers auf unvollständigen Typen"

#~ msgid "dereferencing `void *' pointer"
#~ msgstr "Dereferenzierung eines »void *«-Zeigers"

#~ msgid "invalid type argument of `%s'"
#~ msgstr "falsches Typ-Argument von »%s«"

#~ msgid "subscript missing in array reference"
#~ msgstr "Index fehlt in Feldreferenz"

#~ msgid "array subscript has type `char'"
#~ msgstr "Feldindex hat Typ »char«"

#~ msgid "array subscript is not an integer"
#~ msgstr "Feldindex ist keine Ganzzahl"

#~ msgid "ISO C forbids subscripting `register' array"
#~ msgstr "ISO-C verbietet, ein »register«-Array zu indizieren"

#~ msgid "ISO C90 forbids subscripting non-lvalue array"
#~ msgstr "ISO-C90 verbietet, ein Nicht-L-Wert-Feld zu indizieren"

#~ msgid "subscript has type `char'"
#~ msgstr "Index hat Typ »char«"

#~ msgid "subscripted value is neither array nor pointer"
#~ msgstr "indizierter Wert ist weder ein Feld noch ein Zeiger"

#~ msgid "local declaration of `%s' hides instance variable"
#~ msgstr "lokale Deklaration von »%s« verdeckt Instanzvariable"

#~ msgid "called object is not a function"
#~ msgstr "gerufenes Objekt ist keine Funktion"

#~ msgid "function called through a non-compatible type"
#~ msgstr "Funktion über nicht kompatiblen Typen aufgerufen"

#~ msgid "too many arguments to function"
#~ msgstr "zu viele Argumente für Funktion"

#~ msgid "type of formal parameter %d is incomplete"
#~ msgstr "Typ des formalen Parameters %d ist unvollständig"

#~ msgid "%s as integer rather than floating due to prototype"
#~ msgstr "%s als Ganzzahl statt Gleitkomma aufgrund des Prototyps"

#~ msgid "%s as integer rather than complex due to prototype"
#~ msgstr "%s als Ganzzahl statt komplex aufgrund des Prototyps"

#~ msgid "%s as complex rather than floating due to prototype"
#~ msgstr "%s als komplex statt Gleitkomma aufgrund des Prototyps"

#~ msgid "%s as floating rather than integer due to prototype"
#~ msgstr "%s als Gleitkomma statt Ganzzahl aufgrund des Prototyps"

#~ msgid "%s as complex rather than integer due to prototype"
#~ msgstr "%s als komplex statt Ganzzahl aufgrund des Prototyps"

#~ msgid "%s as floating rather than complex due to prototype"
#~ msgstr "%s als Gleitkomma statt komplex aufgrund des Prototyps"

#~ msgid "%s as `float' rather than `double' due to prototype"
#~ msgstr "%s als »float« statt »double« aufgrund des Prototyps"

#~ msgid "%s with different width due to prototype"
#~ msgstr "%s mit anderer Breite aufgrund des Prototyps"

#~ msgid "%s as unsigned due to prototype"
#~ msgstr "%s als vorzeichenlos aufgrund des Prototyps"

#~ msgid "%s as signed due to prototype"
#~ msgstr "%s als vorzeichenbehaftet aufgrund des Prototyps"

#~ msgid "too few arguments to function"
#~ msgstr "zu wenige Argumente für Funktion"

#~ msgid "suggest parentheses around + or - inside shift"
#~ msgstr "Klammern um + oder - innerhalb von Schiebeoperation empfohlen"

#~ msgid "suggest parentheses around && within ||"
#~ msgstr "Klammern um && innerhalb von || empfohlen"

#~ msgid "suggest parentheses around arithmetic in operand of |"
#~ msgstr "Klammern um Arithmetik in Operand von | empfohlen"

#~ msgid "suggest parentheses around comparison in operand of |"
#~ msgstr "Klammern um Vergleich in Operand von | empfohlen"

#~ msgid "suggest parentheses around arithmetic in operand of ^"
#~ msgstr "Klammern um Arithmetik in Operand von ^ empfohlen"

#~ msgid "suggest parentheses around comparison in operand of ^"
#~ msgstr "Klammern um Vergleich in Operand von ^ empfohlen"

#~ msgid "suggest parentheses around + or - in operand of &"
#~ msgstr "Klammern um + oder - in Operand von & empfohlen"

#~ msgid "suggest parentheses around comparison in operand of &"
#~ msgstr "Klammern um Vergleich in Operand von & empfohlen"

#~ msgid "comparisons like X<=Y<=Z do not have their mathematical meaning"
#~ msgstr "Vergleiche wie X<=Y<=Z haben nicht ihre mathematische Bedeutung"

#~ msgid "pointer of type `void *' used in subtraction"
#~ msgstr "Zeiger des Typs »void *« in Subtraktion verwendet"

#~ msgid "pointer to a function used in subtraction"
#~ msgstr "Zeiger auf eine Funktion in Subtraktion verwendet"

#~ msgid "wrong type argument to unary plus"
#~ msgstr "Argument falschen Typs für unäres Plus"

#~ msgid "wrong type argument to unary minus"
#~ msgstr "Argument falschen Typs für unäres Minus"

#~ msgid "ISO C does not support `~' for complex conjugation"
#~ msgstr "ISO-C unterstützt nicht »~« für komplexe Konjugation"

#~ msgid "wrong type argument to bit-complement"
#~ msgstr "Argument falschen Typs für Bit-Komplement"

#~ msgid "wrong type argument to abs"
#~ msgstr "Argument falschen Typs für abs"

#~ msgid "wrong type argument to conjugation"
#~ msgstr "Argument falschen Typs für Konjugation"

#~ msgid "wrong type argument to unary exclamation mark"
#~ msgstr "Argument falschen Typs für unäres Ausrufungszeichen"

#~ msgid "ISO C does not support `++' and `--' on complex types"
#~ msgstr "ISO-C unterstützt kein »++« und »--« für komplexe Typen"

#~ msgid "wrong type argument to increment"
#~ msgstr "Argument falschen Typs für Inkrementierung"

#~ msgid "wrong type argument to decrement"
#~ msgstr "Argument falschen Typs für Dekrementierung"

#~ msgid "increment of pointer to unknown structure"
#~ msgstr "Erhöhung eines Zeigers auf unbekannte Struktur"

#~ msgid "decrement of pointer to unknown structure"
#~ msgstr "Verminderung eines Zeigers auf unbekannte Struktur"

#~ msgid "invalid lvalue in unary `&'"
#~ msgstr "ungültiger L-Wert in unärem »&«"

#~ msgid "attempt to take address of bit-field structure member `%s'"
#~ msgstr "Versuch, die Adresse des Bitfeld-Element »%s« einer Struktur zu verwenden"

#~ msgid "use of conditional expressions as lvalues is deprecated"
#~ msgstr "die Verwendung bedingter Ausdrücke als L-Werte ist veraltet"

#~ msgid "use of compound expressions as lvalues is deprecated"
#~ msgstr "Verwendung zusammengesetzter Ausdrücke als L-Werte ist veraltet"

#~ msgid "use of cast expressions as lvalues is deprecated"
#~ msgstr "die Verwendung von cast-Ausdrücken als L-Werte ist veraltet"

#~ msgid "%s of read-only member `%s'"
#~ msgstr "%s des schreibgeschützten Elementes »%s«"

#~ msgid "%s of read-only variable `%s'"
#~ msgstr "%s der schreibgeschützten Variable »%s«"

#~ msgid "%s of read-only location"
#~ msgstr "%s der schreibgeschützten Speicherstelle"

#~ msgid "cannot take address of bit-field `%s'"
#~ msgstr "die Adresse des Bit-Feldes »%s« kann nicht ermittelt werden"

#~ msgid "global register variable `%s' used in nested function"
#~ msgstr "globale Register-Variable »%s« in verschachtelter Funktion verwendet"

#~ msgid "register variable `%s' used in nested function"
#~ msgstr "Register-Variable »%s« in verschachtelter Funktion verwendet"

#~ msgid "address of global register variable `%s' requested"
#~ msgstr "Adresse der globalen Variable »%s« angefordert"

#~ msgid "cannot put object with volatile field into register"
#~ msgstr "kann kein Objekt mit volatile-Feld in Register laden"

#~ msgid "address of register variable `%s' requested"
#~ msgstr "Adresse der Register-Variablen »%s« angefordert"

#~ msgid "signed and unsigned type in conditional expression"
#~ msgstr "Vorzeichenloser und -behafteter Typ in bedingtem Ausdruck"

#~ msgid "ISO C forbids conditional expr with only one void side"
#~ msgstr "ISO-C verbietet bedingten Ausdruck mit nur einer void-Seite"

#~ msgid "ISO C forbids conditional expr between `void *' and function pointer"
#~ msgstr "ISO-C verbietet bedingten Ausdruck zwischen »void *« und Funktionszeiger"

#~ msgid "pointer type mismatch in conditional expression"
#~ msgstr "Zeigertyp passt nicht in bedingtem Ausdruck"

#~ msgid "pointer/integer type mismatch in conditional expression"
#~ msgstr "Zeiger-/Ganzzahltyp passt nicht in bedingtem Ausdruck"

#~ msgid "type mismatch in conditional expression"
#~ msgstr "Typ passt nicht in bedingtem Ausdruck"

#~ msgid "left-hand operand of comma expression has no effect"
#~ msgstr "linker Operand des Komma-Ausdrucks hat keinen Effekt"

#~ msgid "cast specifies array type"
#~ msgstr "Typkonvertierung gibt Feldtyp an"

#~ msgid "cast specifies function type"
#~ msgstr "Typkonvertierung gibt Funktionstyp an"

#~ msgid "ISO C forbids casting nonscalar to the same type"
#~ msgstr "ISO-C verbietet Typkonvertierung von Nicht-Skalar auf selben Typen"

#~ msgid "ISO C forbids casts to union type"
#~ msgstr "ISO-C verbietet Typkonvertierung auf union-Typ"

#~ msgid "cast to union type from type not present in union"
#~ msgstr "Typkonvertierung in union-Typ von nicht in union vorhandenem Typen"

#~ msgid "cast adds new qualifiers to function type"
#~ msgstr "Typkonvertierung fügt neue Typqualifizierer zu Funktionstypen hinzu"

#~ msgid "cast discards qualifiers from pointer target type"
#~ msgstr "Typkonvertierung streicht Qualifizierer von Zeiger-Zieltyp"

#~ msgid "cast increases required alignment of target type"
#~ msgstr "Typkonvertierung erfordert Ausrichtung des Zieltyps"

#~ msgid "cast from pointer to integer of different size"
#~ msgstr "Typkonvertierung von Zeiger auf Ganzzahl anderer Breite"

#~ msgid "cast does not match function type"
#~ msgstr "Typkonvertierung passt nicht zum Funktionstypen"

#~ msgid "cast to pointer from integer of different size"
#~ msgstr "Typkonvertierung in Zeiger von Ganzzahl anderer Breite"

#~ msgid "type-punning to incomplete type might break strict-aliasing rules"
#~ msgstr "Type-Punning auf unvollständigen Typen kann strict-aliasing-Regeln verletzen"

#~ msgid "dereferencing type-punned pointer will break strict-aliasing rules"
#~ msgstr "Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln"

#~ msgid "ISO C forbids conversion of function pointer to object pointer type"
#~ msgstr "ISO-C verbietet Konvertierung von Funktionszeigern in Objektzeigertyp"

#~ msgid "ISO C forbids conversion of object pointer to function pointer type"
#~ msgstr "ISO-C verbietet Konvertierung von Objektzeigertypen in Funktionszeigertyp"

#~ msgid "invalid lvalue in assignment"
#~ msgstr "ungültiger L-Wert in Zuweisung"

#~ msgid "assignment"
#~ msgstr "Zuweisung"

#~ msgid "cannot pass rvalue to reference parameter"
#~ msgstr "kann R-Wert nicht an Referenzparameter übergeben"

#~ msgid "%s makes qualified function pointer from unqualified"
#~ msgstr "%s erzeugt aus unqualifiziertem einen qualifizierten Funktionszeiger"

#~ msgid "%s discards qualifiers from pointer target type"
#~ msgstr "%s streicht Qualifizierer von Zeiger-Zieltypen"

#~ msgid "ISO C prohibits argument conversion to union type"
#~ msgstr "ISO-C verbietet Argumentkonvertierung in union-Typ"

#~ msgid "ISO C forbids %s between function pointer and `void *'"
#~ msgstr "ISO-C verbietet %s zwischen Funktionszeiger und »void *«"

#~ msgid "pointer targets in %s differ in signedness"
#~ msgstr "Zeigerziele in %s unterscheiden sich im Vorzeichenbesitz"

#~ msgid "%s from incompatible pointer type"
#~ msgstr "%s von inkompatiblem Zeigertyp"

#~ msgid "invalid use of non-lvalue array"
#~ msgstr "ungültige Verwendung eines Nicht-L-Wert-Feldes"

#~ msgid "%s makes pointer from integer without a cast"
#~ msgstr "%s erzeugt Zeiger von Ganzzahl ohne Typkonvertierung"

#~ msgid "%s makes integer from pointer without a cast"
#~ msgstr "%s erzeugt Ganzzahl von Zeiger ohne Typkonvertierung"

#~ msgid "incompatible type for argument %d of `%s'"
#~ msgstr "inkompatibler Typ für Argument %d von »%s«"

#~ msgid "incompatible type for argument %d of indirect function call"
#~ msgstr "inkompatibler Typ für Argument %d eines indirekten Funktionsaufrufes"

#~ msgid "incompatible types in %s"
#~ msgstr "inkompatible Typen in %s"

#~ msgid "passing arg of `%s'"
#~ msgstr "Verarbeiten des Argumentes von »%s«"

#~ msgid "passing arg of pointer to function"
#~ msgstr "Verarbeiten des Zeigerargumentes an Funktion"

#~ msgid "passing arg %d of `%s'"
#~ msgstr "Verarbeiten des Argumentes %d von »%s«"

#~ msgid "passing arg %d of pointer to function"
#~ msgstr "Verarbeiten des Argumentes %d von Zeiger auf Funktion"

#~ msgid "traditional C rejects automatic aggregate initialization"
#~ msgstr "traditionelles C lehnt automatische Gesamt-Initialisierung ab"

#~ msgid "(near initialization for `%s')"
#~ msgstr "(nahe der Initialisierung für »%s«)"

#~ msgid "char-array initialized from wide string"
#~ msgstr "char-Feld mit wide-Zeichenkette initialisiert"

#~ msgid "int-array initialized from non-wide string"
#~ msgstr "int-Feld mit Nicht-wide-Zeichenkette initialisiert"

#~ msgid "initializer-string for array of chars is too long"
#~ msgstr "Initialisierungs-Zeichenkette für char-Feld ist zu lang"

#~ msgid "array initialized from non-constant array expression"
#~ msgstr "Feld mit nicht konstantem Feldausdruck initialisiert"

#~ msgid "initializer element is not constant"
#~ msgstr "Initialisierungselement ist nicht konstant"

#~ msgid "initialization"
#~ msgstr "Initialisierung"

#~ msgid "initializer element is not computable at load time"
#~ msgstr "Initialisierungs-Element ist zur Lade-Zeit nicht berechenbar"

#~ msgid "invalid initializer"
#~ msgstr "ungültige Initialisierung"

#~ msgid "opaque vector types cannot be initialized"
#~ msgstr "opake Vektortypen können nicht initialisiert werden"

#~ msgid "extra brace group at end of initializer"
#~ msgstr "zusätzliche geschweifte Klammern am Ende der Initialisierung"

#~ msgid "missing braces around initializer"
#~ msgstr "geschweifte Klammern fehlen um Initialisierung"

#~ msgid "braces around scalar initializer"
#~ msgstr "geschweifte Klammern um Skalar-Initialisierung"

#~ msgid "initialization of flexible array member in a nested context"
#~ msgstr "Initialisierung eines flexiblen Feld-Elements in geschachteltem Kontext"

#~ msgid "initialization of a flexible array member"
#~ msgstr "Initialisierung eines flexiblen Feld-Elements"

#~ msgid "missing initializer"
#~ msgstr "fehlende Initialisierung"

#~ msgid "empty scalar initializer"
#~ msgstr "leere Skalar-Initialisierung"

#~ msgid "extra elements in scalar initializer"
#~ msgstr "zusätzliche Elemente in Skalar-Initialisierung"

#~ msgid "initialization designators may not nest"
#~ msgstr "Initialisierungs-Bezeichner dürfen nicht geschachtelt werden"

#~ msgid "array index in non-array initializer"
#~ msgstr "Feldindex in Nicht-Feld-Initialisierung"

#~ msgid "field name not in record or union initializer"
#~ msgstr "Feldname nicht in Datensatz- oder union-Initialisierung"

#~ msgid "nonconstant array index in initializer"
#~ msgstr "nichtkonstanter Feldindex in Initialisierung"

#~ msgid "array index in initializer exceeds array bounds"
#~ msgstr "Feldindex in Initialisierung überschreitet Feldgrenzen"

#~ msgid "empty index range in initializer"
#~ msgstr "leerer Indexbereich in Initialisierung"

#~ msgid "array index range in initializer exceeds array bounds"
#~ msgstr "Feldindexbereich in Initialisierung überschreitet Feldgrenzen"

#~ msgid "unknown field `%s' specified in initializer"
#~ msgstr "unbekanntes Feld »%s« in Initialisierung angegeben"

#~ msgid "initialized field with side-effects overwritten"
#~ msgstr "initialisiertes Feld mit Seiteneffekten überschrieben"

#~ msgid "excess elements in char array initializer"
#~ msgstr "Elementüberschreitung in char-Feld-Initialisierung"

#~ msgid "excess elements in struct initializer"
#~ msgstr "Elementüberschreitung in struct-Initialisierung"

#~ msgid "non-static initialization of a flexible array member"
#~ msgstr "nicht-statische Initialisierung eines flexiblen Feldelements"

#~ msgid "excess elements in union initializer"
#~ msgstr "Elementüberschreitung in union-Initialisierung"

#~ msgid "traditional C rejects initialization of unions"
#~ msgstr "traditionelles C lehnt Initialisierung von unions ab"

#~ msgid "excess elements in array initializer"
#~ msgstr "Elementüberschreitung in Feldinitialisierung"

#~ msgid "excess elements in vector initializer"
#~ msgstr "Elementüberschreitung in Vektorinitialisierung"

#~ msgid "excess elements in scalar initializer"
#~ msgstr "Elementüberschreitung in Skalar-Initialisierung"

#~ msgid "asm template is not a string constant"
#~ msgstr "asm-Template ist keine Zeichenkettenkonstante"

#~ msgid "invalid lvalue in asm statement"
#~ msgstr "ungültiger L-Wert in asm-Anweisung"

#~ msgid "modification by `asm'"
#~ msgstr "Modifizierung durch »asm«"

#~ msgid "function declared `noreturn' has a `return' statement"
#~ msgstr "als »noreturn« deklarierte Funktion hat »return«-Anweisung"

#~ msgid "`return' with no value, in function returning non-void"
#~ msgstr "»return« ohne Wert in nicht void zurückgebender Funktion"

#~ msgid "`return' with a value, in function returning void"
#~ msgstr "»return« mit Wert in void zurückgebender Funktion"

#~ msgid "return"
#~ msgstr "return"

#~ msgid "function returns address of local variable"
#~ msgstr "Funktion liefert Adresse einer lokalen Variablen zurück"

#~ msgid "switch quantity not an integer"
#~ msgstr "switch-Größe keine Ganzzahl"

#~ msgid "`long' switch expression not converted to `int' in ISO C"
#~ msgstr "»long« switch-Ausdruck nicht nach »int« konvertiert in ISO C"

#~ msgid "case label not within a switch statement"
#~ msgstr "case-Marke nicht innerhalb einer switch-Anweisung"

#~ msgid "`default' label not within a switch statement"
#~ msgstr "»default«-Marke nicht innerhalb einer switch-Anweisung"

#~ msgid "division by zero"
#~ msgstr "Teilung durch Null"

#~ msgid "right shift count is negative"
#~ msgstr "Rechts-Schiebe-Weite ist negativ"

#~ msgid "right shift count >= width of type"
#~ msgstr "Rechts-Schiebe-Weite >= Breite des Typs"

#~ msgid "left shift count is negative"
#~ msgstr "Links-Schiebe-Weite ist negativ"

#~ msgid "left shift count >= width of type"
#~ msgstr "Links-Schiebe-Weite >= Breite des Typs"

#~ msgid "shift count is negative"
#~ msgstr "Schiebeweite ist negativ"

#~ msgid "shift count >= width of type"
#~ msgstr "Schiebeweite >= Breite des Typs"

#~ msgid "comparing floating point with == or != is unsafe"
#~ msgstr "Vergleich von Gleitkomma mit == oder != ist unsicher"

#~ msgid "ISO C forbids comparison of `void *' with function pointer"
#~ msgstr "ISO-C verbietet Vergleich von »void *« mit Funktionszeiger"

#~ msgid "comparison of distinct pointer types lacks a cast"
#~ msgstr "in Vergleich verschiedener Zeigertypen fehlt Typkonvertierung"

#~ msgid "comparison between pointer and integer"
#~ msgstr "Vergleich zwischen Zeiger und Ganzzahl"

#~ msgid "ISO C forbids ordered comparisons of pointers to functions"
#~ msgstr "ISO-C verbietet geordnete Vergleiche zwischen Zeigern auf Funktionen"

#~ msgid "comparison of complete and incomplete pointers"
#~ msgstr "Vergleich von vollständigen und unvollständigen Zeigern"

#~ msgid "ordered comparison of pointer with integer zero"
#~ msgstr "geordneter Vergleich von Zeiger mit Ganzzahlnull"

#~ msgid "unordered comparison on non-floating point argument"
#~ msgstr "ungeordneter Vergleich mit Nicht-Gleitkomma-Argument"

#~ msgid "comparison between signed and unsigned"
#~ msgstr "Vergleich zwischen vorzeichenbehaftet und vorzeichenlos"

#~ msgid "comparison of promoted ~unsigned with constant"
#~ msgstr "Vergleich von weitergegebenem ~unsigned mit Konstante"

#~ msgid "comparison of promoted ~unsigned with unsigned"
#~ msgstr "Vergleich von weitergegebenem ~unsigned mit unsigned"

#~ msgid "%Jinlining failed in call to '%F'"
#~ msgstr "%J»inline« beim Aufruf von »%F« gescheitert"

#~ msgid "called from here"
#~ msgstr "von hier aufgerufen"

#~ msgid "%Jcan't inline call to '%F'"
#~ msgstr "%JAufruf von »%F« kann nicht »inline« erfolgen"

#~ msgid "ignoring return value of `%D', declared with attribute warn_unused_result"
#~ msgstr "Rückgabewert von »%D«, das mit dem Attribut warn_unused_result definiert wurde, wird ignoriert"

#~ msgid "ignoring return value of function declared with attribute warn_unused_result"
#~ msgstr "Rückgabewert der mit dem Attribut warn_unused_result definierten Funktion wird ignoriert"

#~ msgid "function call has aggregate value"
#~ msgstr "Funktionsaufruf hat zusammengesetzten Wert"

#~ msgid "bb %d on wrong place"
#~ msgstr "bb %d an falscher Stelle"

#~ msgid "prev_bb of %d should be %d, not %d"
#~ msgstr "prev_bb von %d sollte %d sein, nicht %d"

#~ msgid "verify_flow_info: Wrong count of block %i %i"
#~ msgstr "verify_flow_info: Falsche Blockzahl %i %i"

#~ msgid "verify_flow_info: Wrong frequency of block %i %i"
#~ msgstr "verify_flow_info: Falsche Blockfrequenz %i %i"

#~ msgid "verify_flow_info: Duplicate edge %i->%i"
#~ msgstr "verify_flow_info: Doppelte Kante %i->%i"

#~ msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
#~ msgstr "verify_flow_info: Falsche Wahrscheinlichkeit der Kante %i->%i %i"

#~ msgid "verify_flow_info: Wrong count of edge %i->%i %i"
#~ msgstr "verify_flow_info: Falsche Kantenzahl %i->%i %i"

#~ msgid "verify_flow_info: Basic block %d succ edge is corrupted"
#~ msgstr "verify_flow_info: Nachfolgekante des Basis-Blocks %d ist beschädigt"

#~ msgid "Wrong amount of branch edges after unconditional jump %i"
#~ msgstr "Falsche Summe der Zweig-Kanten nach unbedingtem Sprung %i"

#~ msgid "basic block %d pred edge is corrupted"
#~ msgstr "Vorgänger des Basis-Blocks %d ist beschädigt"

#~ msgid "basic block %i edge lists are corrupted"
#~ msgstr "Kantenlisten des Basis-Blockes %i sind beschädigt"

#~ msgid "verify_flow_info failed"
#~ msgstr "verify_flow_info gescheitert"

#~ msgid "Size of loop %d should be %d, not %d."
#~ msgstr "Größe der Schleife %d sollte %d sein, nicht %d"

#~ msgid "Bb %d do not belong to loop %d."
#~ msgstr "Bb %d gehört nicht zur Schleife %d."

#~ msgid "Loop %d's header does not have exactly 2 entries."
#~ msgstr "Kopf der Schleife %d hat nicht genau 2 Einträge."

#~ msgid "Loop %d's latch does not have exactly 1 successor."
#~ msgstr "Falle der Schleife %d hat nicht genau einen Nachfolger."

#~ msgid "Loop %d's latch does not have header as successor."
#~ msgstr "Falle der Schleife %d hat nicht den Kopf als Nachfolger."

#~ msgid "Loop %d's latch does not belong directly to it."
#~ msgstr "Falle der Schleife %d gehört nicht direkt zu ihr."

#~ msgid "Loop %d's header does not belong directly to it."
#~ msgstr "Kopf der Schleife %d gehört nicht direkt zu ihr."

#~ msgid "Loop %d's latch is marked as part of irreducible region."
#~ msgstr "Falle der Schleife %d ist als Teil einer irreduziblen Region markiert."

#~ msgid "Basic block %d should be marked irreducible."
#~ msgstr "Basisblock %d sollte als irreduzibel markiert werden."

#~ msgid "Basic block %d should not be marked irreducible."
#~ msgstr "Basisblock %d sollte nicht als irreduzibel markiert werden."

#~ msgid "Edge from %d to %d should be marked irreducible."
#~ msgstr "Kante von %d nach %d sollte als irreduzibel markiert werden."

#~ msgid "Edge from %d to %d should not be marked irreducible."
#~ msgstr "Kante von %d nach %d sollte nicht als irreduzibel markiert werden."

#~ msgid "end insn %d for block %d not found in the insn stream"
#~ msgstr "Ende-insn %d für Block %d nicht im insn-Stream gefunden"

#~ msgid "insn %d is in multiple basic blocks (%d and %d)"
#~ msgstr "insn %d ist in mehreren Basisblöcken (%d und %d)"

#~ msgid "head insn %d for block %d not found in the insn stream"
#~ msgstr "Kopf-insn %d für Block %d nicht im insn-Stream gefunden"

#~ msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
#~ msgstr "verify_flow_info: REG_BR_PROB passt nicht zu cfg %wi %i"

#~ msgid "Missing REG_EH_REGION note in the end of bb %i"
#~ msgstr "Fehlender Vermerk von REG_EH_REGION am Ende vom bb %i"

#~ msgid "Too many outgoing branch edges from bb %i"
#~ msgstr "Zu viele abgehende Zweig-Kanten vom bb %i"

#~ msgid "Fallthru edge after unconditional jump %i"
#~ msgstr "Fallthru-Kante nach unbedingtem Sprung %i"

#~ msgid "Wrong amount of branch edges after conditional jump %i"
#~ msgstr "Falsche Summe der Zweig-Kanten nach bedingtem Sprung %i"

#~ msgid "Call edges for non-call insn in bb %i"
#~ msgstr "Ruf-Kanten für Nicht-Aufruf-insn im bb %i"

#~ msgid "Abnormal edges for no purpose in bb %i"
#~ msgstr "Abnormale Kanten ohne Grund in bb %i"

#~ msgid "insn %d inside basic block %d but block_for_insn is NULL"
#~ msgstr "insn %d innerhalb des Basis-Blockes %d, aber block_for_insn ist NULL"

#~ msgid "insn %d inside basic block %d but block_for_insn is %i"
#~ msgstr "insn %d innerhalb Basis-Blockes %d, aber block_for_insn ist %i"

#~ msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
#~ msgstr "NOTE_INSN_BASIC_BLOCK fehlt für Block %d"

#~ msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
#~ msgstr "NOTE_INSN_BASIC_BLOCK %d in der Mitte des Basis-Blocks %d"

#~ msgid "in basic block %d:"
#~ msgstr "im Basis-Block %d:"

#~ msgid "flow control insn inside a basic block"
#~ msgstr "Flusskontroll-insn innerhalb eines Basis-Blockes"

#~ msgid "missing barrier after block %i"
#~ msgstr "fehlende Sperre nach Block %i"

#~ msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
#~ msgstr "verify_flow_info: Falsche Blöcke für »fallthru« %i->%i"

#~ msgid "verify_flow_info: Incorrect fallthru %i->%i"
#~ msgstr "verify_flow_info: Falsches »fallthru« %i->%i"

#~ msgid "wrong insn in the fallthru edge"
#~ msgstr "falsche insn in »fallthru«-Kante"

#~ msgid "basic blocks not laid down consecutively"
#~ msgstr "Basis-Blöcke sind nicht fortlaufend"

#~ msgid "insn outside basic block"
#~ msgstr "insn außerhalb eines Basis-Blockes"

#~ msgid "return not followed by barrier"
#~ msgstr "»return« nicht gefolgt von Sperre"

#~ msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
#~ msgstr "Anzahl der bb-Vermerke in insn-Kette (%d) != n_basic_blocks (%d)"

#~ msgid "function body not available"
#~ msgstr "Funktionskörper nicht verfügbar"

#~ msgid "redefined extern inline functions are not considered for inlining"
#~ msgstr "redefinierte »extern inline«-Funktionen kommen nicht als »inline« in Betracht"

#~ msgid "function not considered for inlining"
#~ msgstr "Funktion kommt nicht für »inline« in Betracht"

#~ msgid "function not inlinable"
#~ msgstr "Funktion kann nicht »inline« sein"

#~ msgid "%D renamed after being referenced in assembly"
#~ msgstr "%D nach Referenzierung in Assemblierung umbenannt"

#~ msgid "--param large-function-growth limit reached"
#~ msgstr "--param large-function-growth: Limit erreicht"

#~ msgid "--param large-function-growth limit reached while inlining the caller"
#~ msgstr "--param large-function-growth: Limit bei »inline« des Aufrufers erreicht"

#~ msgid "--param max-inline-insns-single limit reached"
#~ msgstr "--param max-inline-insns-single: Limit erreicht"

#~ msgid "--param max-inline-insns-single limit reached after inlining into the callee"
#~ msgstr "--param max-inline-insns-single: Limit nach »inline« im Aufgerufenen erreicht"

#~ msgid "--param inline-unit-growth limit reached"
#~ msgstr "--param inline-unit-growth: Limit erreicht"

#~ msgid "recursive inlining"
#~ msgstr "rekursives inline"

#~ msgid "internal error"
#~ msgstr "interner Fehler"

#~ msgid "no arguments"
#~ msgstr "Keiner Argumente"

#~ msgid "fopen %s"
#~ msgstr "fopen %s"

#~ msgid "fclose %s"
#~ msgstr "fclose %s"

#~ msgid "collect2 version %s"
#~ msgstr "collect2-Version %s"

#~ msgid "%d constructor(s) found\n"
#~ msgstr "%d Konstruktor(en) gefunden\n"

#~ msgid "%d destructor(s)  found\n"
#~ msgstr "%d Destruktor(en) gefunden\n"

#~ msgid "%d frame table(s) found\n"
#~ msgstr "%d Rahmentabelle(n) gefunden\n"

#~ msgid "%s terminated with signal %d [%s]%s"
#~ msgstr "%s mit Signal %d [%s]%s beendet"

#~ msgid "%s returned %d exit status"
#~ msgstr "%s gab Ende-Status %d zurück"

#~ msgid "[cannot find %s]"
#~ msgstr "[kann %s nicht finden]"

#~ msgid "cannot find `%s'"
#~ msgstr "kann »%s« nicht finden"

#~ msgid "redirecting stdout: %s"
#~ msgstr "leite Standardausgabe um: %s"

#~ msgid "[Leaving %s]\n"
#~ msgstr "[Verlasse %s]\n"

#~ msgid ""
#~ "\n"
#~ "write_c_file - output name is %s, prefix is %s\n"
#~ msgstr ""
#~ "\n"
#~ "write_c_file - Ausgabename ist %s, Präfix ist %s\n"

#~ msgid "cannot find `nm'"
#~ msgstr "kann »nm« nicht finden"

#~ msgid "pipe"
#~ msgstr "Pipe"

#~ msgid "fdopen"
#~ msgstr "fdopen"

#~ msgid "dup2 %d 1"
#~ msgstr "dup2 %d 1"

#~ msgid "close %d"
#~ msgstr "close %d"

#~ msgid "execv %s"
#~ msgstr "execv %s"

#~ msgid "init function found in object %s"
#~ msgstr "init-Funktion im Objekt %s gefunden"

#~ msgid "fini function found in object %s"
#~ msgstr "fini-Funktion im Objekt %s gefunden"

#~ msgid "fclose"
#~ msgstr "fclose"

#~ msgid "unable to open file '%s'"
#~ msgstr "kann Datei »%s« nicht öffnen"

#~ msgid "unable to stat file '%s'"
#~ msgstr "kann Dateistatus für »%s« nicht ermitteln"

#~ msgid "unable to mmap file '%s'"
#~ msgstr "kann mmap nicht auf Datei »%s« anwenden"

#~ msgid "not found\n"
#~ msgstr "nicht gefunden\n"

#~ msgid "dynamic dependency %s not found"
#~ msgstr "dynamische Abhängigkeit %s nicht gefunden"

#~ msgid "bad magic number in file '%s'"
#~ msgstr "Falsche magische Zahl in Datei »%s«"

#~ msgid "dynamic dependencies.\n"
#~ msgstr "dynamische Abhängigkeiten.\n"

#~ msgid "cannot find `ldd'"
#~ msgstr "kann »ldd« nicht finden"

#~ msgid ""
#~ "\n"
#~ "ldd output with constructors/destructors.\n"
#~ msgstr ""
#~ "\n"
#~ "Ausgabe von ldd mit Konstruktoren/Destruktoren.\n"

#~ msgid "unable to open dynamic dependency '%s'"
#~ msgstr "kann dynamische Abhängigkeit »%s« nicht öffnen"

#~ msgid "%s: not a COFF file"
#~ msgstr "%s: keine COFF-Datei"

#~ msgid "%s: cannot open as COFF file"
#~ msgstr "kann %s nicht als COFF-Datei öffnen"

#~ msgid "library lib%s not found"
#~ msgstr "Bibliothek lib%s nicht gefunden"

#~ msgid ""
#~ ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
#~ ";; %d successes.\n"
#~ "\n"
#~ msgstr ""
#~ ";; Kombinierer-Statistik: %d Versuche, %d Ersetzungen (%d benötigten neuen Platz),\n"
#~ ";; %d Erfolge.\n"
#~ "\n"

#~ msgid ""
#~ "\n"
#~ ";; Combiner totals: %d attempts, %d substitutions (%d requiring new space),\n"
#~ ";; %d successes.\n"
#~ msgstr ""
#~ "\n"
#~ ";; Kombinierer-Gesamtwerte: %d Versuche, %d Ersetzungen (%d benötigten neuen Platz),\n"
#~ ";; %d Erfolge.\n"

#~ msgid "cannot convert to a pointer type"
#~ msgstr "kann nicht in Zeigertyp konvertieren"

#~ msgid "pointer value used where a floating point value was expected"
#~ msgstr "Zeigerwert verwendet, wo Gleitkommawert erwartet wurde"

#~ msgid "aggregate value used where a float was expected"
#~ msgstr "zusammengesetzten Wert verwendet, wo Gleitkomma erwartet wurde"

#~ msgid "conversion to incomplete type"
#~ msgstr "Konvertierung in unvollständigen Typen"

#~ msgid "can't convert between vector values of different size"
#~ msgstr "kann nicht zwischen Vektorwerten verschiedener Größen konvertieren"

#~ msgid "aggregate value used where an integer was expected"
#~ msgstr "zusammengesetzter Wert verwendet, wo Ganzzahl erwartet wurde"

#~ msgid "pointer value used where a complex was expected"
#~ msgstr "Zeigerwert verwendet, wo »complex« erwartet wurde"

#~ msgid "aggregate value used where a complex was expected"
#~ msgstr "zusammengesetzer Wert verwendet, wo »complex« erwartet wurde"

#~ msgid "can't convert value to a vector"
#~ msgstr "kann Wert nicht in Vektor konvertieren"

#~ msgid "`%s' is not a gcov data file"
#~ msgstr "»%s« ist keine gcov-Datei"

#~ msgid "`%s' is version `%.4s', expected version `%.4s'"
#~ msgstr "»%s« hat Version »%.4s«, Version »%.4s« erwartet"

#~ msgid "coverage mismatch for function %u while reading execution counters."
#~ msgstr "Überdeckung passt nicht für Funktion %u beim Lesen der Ausführungszähler."

#~ msgid "checksum is %x instead of %x"
#~ msgstr "Prüfsumme ist %x statt %x"

#~ msgid "number of counters is %d instead of %d"
#~ msgstr "Zahl der Zähler ist %d statt %d"

#~ msgid "cannot merge separate %s counters for function %u"
#~ msgstr "separate %s Zähler für die Funktion %u können nicht verschmolzen werden"

#~ msgid "`%s' has overflowed"
#~ msgstr "»%s« übergelaufen"

#~ msgid "`%s' is corrupted"
#~ msgstr "»%s« ist beschädigt"

#~ msgid "file %s not found, execution counts assumed to be zero"
#~ msgstr "Datei %s nicht gefunden, Ausführungszähler als null angenommen"

#~ msgid "no coverage for function '%s' found."
#~ msgstr "keine Überdeckung für Funktion »%s« gefunden."

#~ msgid "coverage mismatch for function '%s' while reading counter '%s'."
#~ msgstr "Überdeckung passt nicht bei Funktion »%s« beim Lesen des Zählers »%s«."

#~ msgid "cannot open %s"
#~ msgstr "Es ist nicht möglich, »%s« zu öffnen"

#~ msgid "error writing `%s'"
#~ msgstr "Fehler beim Schreiben der Datei »%s«"

#~ msgid "\"%s\" is not a valid option to the preprocessor"
#~ msgstr "»%s« ist keine gültige Präprozessoroption"

#~ msgid "too many input files"
#~ msgstr "zu viele Eingabedateien"

#~ msgid ";; Processing block from %d to %d, %d sets.\n"
#~ msgstr ";; Bearbeite Block von %d bis %d, %d Sets.\n"

#~ msgid "%s:%d: confused by earlier errors, bailing out\n"
#~ msgstr "%s:%d: durch frühere Fehler verwirrt, Abbruch\n"

#~ msgid "compilation terminated.\n"
#~ msgstr "Kompilierung beendet.\n"

#~ msgid "Internal compiler error: Error reporting routines re-entered.\n"
#~ msgstr "Interner Compilerfehler: Fehlerbehandlungsroutinen doppelt betreten.\n"

#~ msgid "in %s, at %s:%d"
#~ msgstr "in %s, bei %s:%d"

#~ msgid "dominator of %d should be %d, not %d"
#~ msgstr "Herrscher über %d sollte %d sein, nicht %d"

#~ msgid "DW_LOC_OP %s not implemented\n"
#~ msgstr "DW_LOC_OP %s nicht implementiert\n"

#~ msgid "can't access real part of complex value in hard register"
#~ msgstr "kann nicht auf realen Teil des komplexen Wertes im festen Register zugreifen"

#~ msgid "can't access imaginary part of complex value in hard register"
#~ msgstr "kann nicht auf imaginären Teil des komplexen Wertes im festen Register zugreifen"

#~ msgid "Invalid rtl sharing found in the insn"
#~ msgstr "ungültige gemeinsame rtl-Benutzung in insn gefunden"

#~ msgid "Shared rtx"
#~ msgstr "Gemeinsames rtx"

#~ msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
#~ msgstr "ICE: emit_insn verwendet, wo emit_jump_insn erforderlich:\n"

#~ msgid "abort in %s, at %s:%d"
#~ msgstr "Abbruch in %s, bei %s:%d"

#~ msgid "exception handling disabled, use -fexceptions to enable"
#~ msgstr "Ausnahmebehandlung ausgeschaltet, benutzen Sie -fexeptions zum Anschalten"

#~ msgid "argument of `__builtin_eh_return_regno' must be constant"
#~ msgstr "Argument für »__builtin_eh_return_regno« muss konstant sein"

#~ msgid "__builtin_eh_return not supported on this target"
#~ msgstr "__builtin_eh_return für dieses Ziel nicht unterstützt"

#~ msgid "stack limits not supported on this target"
#~ msgstr "Kellergrenzen nicht für dieses Ziel unterstützt"

#~ msgid "function using short complex types cannot be inline"
#~ msgstr "Funktion, die komplexe »short«-Typen verwendet, kann nicht »inline« sein"

#~ msgid "%Jprior parameter's size depends on '%D'"
#~ msgstr "%Jvorherige Parametergröße hängt von »%D« ab"

#~ msgid "returned value in block_exit_expr"
#~ msgstr "zurückgelieferter Wert in block_exit_expr"

#~ msgid "cannot take the address of an unaligned member"
#~ msgstr "die Adresse eines nicht ausgerichteten Elements kann nicht ermittelt werden"

#~ msgid "negative insn length"
#~ msgstr "negative insn-Länge"

#~ msgid "could not split insn"
#~ msgstr "insn kann nicht aufgeteilt werden"

#~ msgid "invalid `asm': "
#~ msgstr "ungültiges »asm«: "

#~ msgid "nested assembly dialect alternatives"
#~ msgstr "geschachtelte Assemblerdialekt-Alternativen"

#~ msgid "unterminated assembly dialect alternative"
#~ msgstr "unbeendete Assemblerdialekt-Alternative"

#~ msgid "operand number missing after %%-letter"
#~ msgstr "Operandenzahl fehlt hinter %%-Buchstabe"

#~ msgid "operand number out of range"
#~ msgstr "Operandenzahl außerhalb des Wertebereiches"

#~ msgid "invalid %%-code"
#~ msgstr "ungültiger %%-Code"

#~ msgid "`%%l' operand isn't a label"
#~ msgstr "»%%l«-Operand ist keine Marke"

#~ msgid "floating constant misused"
#~ msgstr "Gleitkommakonstante falsch benutzt"

#~ msgid "invalid expression as operand"
#~ msgstr "ungültiger Ausdruck als Operand"

#~ msgid "function might be possible candidate for attribute `noreturn'"
#~ msgstr "Funktion könnte möglicher Kandidat für Attribut »noreturn« sein"

#~ msgid "`noreturn' function does return"
#~ msgstr "»noreturn«-Funktion kehrt zurück"

#~ msgid "control reaches end of non-void function"
#~ msgstr "Kontrollfluss erreicht Ende einer Nicht-void-Funktion"

#~ msgid "Attempt to delete prologue/epilogue insn:"
#~ msgstr "Versuch, Prolog/Epilog-insn zu löschen"

#~ msgid "comparison is always %d due to width of bit-field"
#~ msgstr "Vergleich ist immer %d wegen Breite des Bitfeldes"

#~ msgid "comparison is always %d"
#~ msgstr "Vergleich ist immer %d"

#~ msgid "`or' of unmatched not-equal tests is always 1"
#~ msgstr "»oder« nicht passender Ungleichheits-Tests ist immer 1"

#~ msgid "`and' of mutually exclusive equal-tests is always 0"
#~ msgstr "»und« gegenseitig ausschließender Gleichheits-Tests ist immer 0"

#~ msgid "fold check: original tree changed by fold"
#~ msgstr "Faltungstest: ursprünglicher Baum durch Faltung geändert"

#~ msgid "%Jsize of variable '%D' is too large"
#~ msgstr "%JGröße der Variable »%D« ist zu hoch"

#~ msgid "impossible constraint in `asm'"
#~ msgstr "unmögliche Bedingung in »asm«"

#~ msgid "%J'%D' might be used uninitialized in this function"
#~ msgstr "%J»%D« könnte in dieser Funktion uninitialisiert bleiben"

#~ msgid "%Jvariable '%D' might be clobbered by `longjmp' or `vfork'"
#~ msgstr "%JVariable »%D« könnte von »longjmp« oder »vfork« zerstört werden"

#~ msgid "%Jargument '%D' might be clobbered by `longjmp' or `vfork'"
#~ msgstr "%JArgument »%D« könnte von »longjmp« oder »vfork« zerstört werden"

#~ msgid "function returns an aggregate"
#~ msgstr "Funktion gibt Aggregat zurück"

#~ msgid "%Junused parameter '%D'"
#~ msgstr "%Jnicht benutzter Parameter »%D«"

#~ msgid "ambiguous abbreviation %s"
#~ msgstr "mehrdeutige Abkürzung %s"

#~ msgid "incomplete `%s' option"
#~ msgstr "unvollständige »%s«-Option"

#~ msgid "missing argument to `%s' option"
#~ msgstr "fehlendes Argument für »%s«-Option"

#~ msgid "extraneous argument to `%s' option"
#~ msgstr "zusätzliches (belangloses) Argument für »%s«-Option"

#~ msgid "Using built-in specs.\n"
#~ msgstr "Benutze eingebaute Spezifikationen.\n"

#~ msgid ""
#~ "Setting spec %s to '%s'\n"
#~ "\n"
#~ msgstr ""
#~ "Setze Spezifikation %s auf '%s'\n"
#~ "\n"

#~ msgid "Reading specs from %s\n"
#~ msgstr "Lese Spezifikationen von %s\n"

#~ msgid "specs %%include syntax malformed after %ld characters"
#~ msgstr "falsche %%include-Syntax für Spezifikationen nach %ld Zeichen"

#~ msgid "could not find specs file %s\n"
#~ msgstr "konnte Spezifikationsdatei %s nicht finden\n"

#~ msgid "specs %%rename syntax malformed after %ld characters"
#~ msgstr "falsche %%rename-Syntax für Spezifikationen nach %ld Zeichen"

#~ msgid "specs %s spec was not found to be renamed"
#~ msgstr "keine %s-Spezifikation zum Umbenennen gefunden"

#~ msgid "%s: attempt to rename spec '%s' to already defined spec '%s'"
#~ msgstr "%s: Versuch, Spezifikation »%s« in bereits definierte Spezifikation »%s« umzubenennen"

#~ msgid "rename spec %s to %s\n"
#~ msgstr "benenne Spezifikation %s nach %s um\n"

#~ msgid ""
#~ "spec is '%s'\n"
#~ "\n"
#~ msgstr ""
#~ "Spezifikation ist '%s'\n"
#~ "\n"

#~ msgid "specs unknown %% command after %ld characters"
#~ msgstr "Spezifikation: unbekannter %%-Befehl nach %ld Zeichen"

#~ msgid "specs file malformed after %ld characters"
#~ msgstr "Fehler in Spezifikationsdatei nach %ld Zeichen"

#~ msgid "spec file has no spec for linking"
#~ msgstr "Spezifikationsdatei hat keine Spezifikation zum Binden"

#~ msgid "-pipe not supported"
#~ msgstr "-pipe wird nicht unterstützt"

# can we use j/n here, too?
# 2002-04-23 18:57:43 CEST -ke-
#~ msgid ""
#~ "\n"
#~ "Go ahead? (y or n) "
#~ msgstr ""
#~ "\n"
#~ "Fortfahren? (y oder n) "

#~ msgid ""
#~ "Internal error: %s (program %s)\n"
#~ "Please submit a full bug report.\n"
#~ "See %s for instructions."
#~ msgstr ""
#~ "Interner Fehler: %s (Programm %s)\n"
#~ "Bitte senden Sie einen vollständigen Fehlerbericht\n"
#~ "auf Englisch ein; Fehler in der deutschen Übersetzung\n"
#~ "sind an de@li.org zu melden.\n"
#~ "Gehen Sie gemäß den Hinweisen in %s vor."

#~ msgid "# %s %.2f %.2f\n"
#~ msgstr "# %s %.2f %.2f\n"

#~ msgid "Usage: %s [options] file...\n"
#~ msgstr "Aufruf: %s [Optionen] Datei...\n"

#~ msgid "Options:\n"
#~ msgstr "Optionen:\n"

#~ msgid "  -pass-exit-codes         Exit with highest error code from a phase\n"
#~ msgstr "  -pass-exit-codes         Ende mit höchstem Rückgabe-Code einer Phase\n"

#~ msgid "  --help                   Display this information\n"
#~ msgstr "  --help                   Diese Informationen anzeigen\n"

#~ msgid "  --target-help            Display target specific command line options\n"
#~ msgstr "  --target-help            Zielspezifische Kommandozeilenoptionen anzeigen\n"

#~ msgid "  (Use '-v --help' to display command line options of sub-processes)\n"
#~ msgstr "  ('-v --help' zum Anzeigen der Kommandozeilenoptionen von Subprozessen verwenden)\n"

#~ msgid "  -dumpspecs               Display all of the built in spec strings\n"
#~ msgstr "  -dumpspecs               Alle eingebauten Spezifikationszeichenketten anzeigen\n"

#~ msgid "  -dumpversion             Display the version of the compiler\n"
#~ msgstr "  -dumpversion             Compilerversion anzeigen\n"

#~ msgid "  -dumpmachine             Display the compiler's target processor\n"
#~ msgstr "  -dumpmachine             Zielprozessor des Compilers anzeigen\n"

#~ msgid "  -print-search-dirs       Display the directories in the compiler's search path\n"
#~ msgstr "  -print-search-dirs       Verzeichnisse im Suchpfad des Compilers anzeigen\n"

#~ msgid "  -print-libgcc-file-name  Display the name of the compiler's companion library\n"
#~ msgstr "  -print-libgcc-file-name  Name der Begleitbibliothek des Compilers anzeigen\n"

#~ msgid "  -print-file-name=<lib>   Display the full path to library <lib>\n"
#~ msgstr "  -print-file-name=<lib>   Vollen Pfad zur Bibliothek <lib> anzeigen\n"

#~ msgid "  -print-prog-name=<prog>  Display the full path to compiler component <prog>\n"
#~ msgstr "  -print-prog-name=<prog>  Vollen Pfad zur Compilerkomponente <prog> anzeigen\n"

#~ msgid "  -print-multi-directory   Display the root directory for versions of libgcc\n"
#~ msgstr "  -print-multi-directory   Wurzelverzeichnis für Versionen von libgcc anzeigen\n"

#~ msgid ""
#~ "  -print-multi-lib         Display the mapping between command line options and\n"
#~ "                           multiple library search directories\n"
#~ msgstr ""
#~ "  -print-multi-lib         Abbildung zwischen Kommandozeilenoptionen und\n"
#~ "                           mehreren Suchverzeichnissen für Bibliotheken anzeigen\n"

#~ msgid "  -print-multi-os-directory Display the relative path to OS libraries\n"
#~ msgstr ""
#~ "  -print-multi-os-directory Relativen Pfad zu Betriebssystembibliotheken\n"
#~ "                            anzeigen\n"

#~ msgid "  -Wa,<options>            Pass comma-separated <options> on to the assembler\n"
#~ msgstr "  -Wa,<Optionen>           Komma-getrennte <Optionen> an Assembler übergeben\n"

#~ msgid "  -Wp,<options>            Pass comma-separated <options> on to the preprocessor\n"
#~ msgstr "  -Wp,<Optionen>           Komma-getrennte <Optionen> an Präprozessor übergeben\n"

#~ msgid "  -Wl,<options>            Pass comma-separated <options> on to the linker\n"
#~ msgstr "  -Wl,<Optionen>           Komma-getrennte <Optionen> an Linker übergeben\n"

#~ msgid "  -Xassembler <arg>        Pass <arg> on to the assembler\n"
#~ msgstr "  -Xassembler <arg>        <arg> an den Assembler übergeben\n"

#~ msgid "  -Xpreprocessor <arg>     Pass <arg> on to the preprocessor\n"
#~ msgstr "  -Xpreprocessor <arg>     <arg> an den Präprozessor übergeben\n"

#~ msgid "  -Xlinker <arg>           Pass <arg> on to the linker\n"
#~ msgstr "  -Xlinker <arg>           <arg> an den Linker übergeben\n"

#~ msgid "  -save-temps              Do not delete intermediate files\n"
#~ msgstr "  -save-temps              Temporäre Dateien nicht löschen\n"

#~ msgid "  -pipe                    Use pipes rather than intermediate files\n"
#~ msgstr "  -pipe                    Pipes statt temporärer Dateien verwenden\n"

#~ msgid "  -time                    Time the execution of each subprocess\n"
#~ msgstr "  -time                    Zeit für Ausführung jedes Subprozesses stoppen\n"

#~ msgid "  -specs=<file>            Override built-in specs with the contents of <file>\n"
#~ msgstr ""
#~ "  -specs=<Datei>           Eingebaute Spezifikationen mit Inhalt der <Datei>\n"
#~ "                           überschreiben\n"

#~ msgid "  -std=<standard>          Assume that the input sources are for <standard>\n"
#~ msgstr "  -std=<Standard>          Annehmen, dass die Eingabequellen für <Standard> sind\n"

#~ msgid "  -B <directory>           Add <directory> to the compiler's search paths\n"
#~ msgstr "  -B <Verzeichnis>         <Verzeichnis> zum Suchpfad des Compilers hinzufügen\n"

#~ msgid "  -b <machine>             Run gcc for target <machine>, if installed\n"
#~ msgstr ""
#~ "  -b <Maschine>            GCC für die Ziel-<Maschine> laufen lassen, falls\n"
#~ "                           installiert\n"

#~ msgid "  -V <version>             Run gcc version number <version>, if installed\n"
#~ msgstr "  -V <Version>             GCC <Version> laufen lassen, falls installiert\n"

#~ msgid "  -v                       Display the programs invoked by the compiler\n"
#~ msgstr "  -v                       Vom Compiler aufgerufene Programme anzeigen\n"

#~ msgid "  -###                     Like -v but options quoted and commands not executed\n"
#~ msgstr ""
#~ "  -###                     Wie -v, aber mit zitierten Optionen und nicht\n"
#~ "                           ausgeführten Befehlen\n"

#~ msgid "  -E                       Preprocess only; do not compile, assemble or link\n"
#~ msgstr ""
#~ "  -E                       Nur Präprozessor, kein Compiler, Assembler oder\n"
#~ "                           Binder\n"

#~ msgid "  -S                       Compile only; do not assemble or link\n"
#~ msgstr "  -S                       Nur kompilieren, nicht assemblieren oder binden\n"

#~ msgid "  -c                       Compile and assemble, but do not link\n"
#~ msgstr "  -c                       Nur kompilieren und assemblieren, aber nicht binden\n"

#~ msgid "  -o <file>                Place the output into <file>\n"
#~ msgstr "  -o <Datei>               Ausgabe in <Datei> schreiben\n"

#~ msgid ""
#~ "  -x <language>            Specify the language of the following input files\n"
#~ "                           Permissible languages include: c c++ assembler none\n"
#~ "                           'none' means revert to the default behavior of\n"
#~ "                           guessing the language based on the file's extension\n"
#~ msgstr ""
#~ "  -x <Sprache>             Sprache der folgenden Eingabedateien angeben\n"
#~ "                           Zulässige Sprachen sind: c c++ assembler none\n"
#~ "                           'none' bedeutet den Rückfall auf das Standard-\n"
#~ "                           verhalten, die Sprache aufgrund der Dateinamens-\n"
#~ "                           erweiterung zu vermuten\n"

#~ msgid ""
#~ "\n"
#~ "Options starting with -g, -f, -m, -O, -W, or --param are automatically\n"
#~ " passed on to the various sub-processes invoked by %s.  In order to pass\n"
#~ " other options on to these processes the -W<letter> options must be used.\n"
#~ msgstr ""
#~ "\n"
#~ "Optionen, die mit -g, -f, -m, -O, -W, oder --param beginnen, werden automatisch\n"
#~ " an die verschiedenen Subprozesse, die von %s aufgerufen werden, übergeben.\n"
#~ " Um andere Optionen an diese Prozesse zu übergeben, müssen die Optionen\n"
#~ " -W<Buchstabe> verwendet werden.\n"

#~ msgid "`-%c' option must have argument"
#~ msgstr "Die Option »-%c« muss ein Argument haben"

#~ msgid "couldn't run `%s': %s"
#~ msgstr "konnte »%s« nicht ausführen: %s"

#~ msgid "%s (GCC) %s\n"
#~ msgstr "%s (GCC) %s\n"

#~ msgid ""
#~ "This is free software; see the source for copying conditions.  There is NO\n"
#~ "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
#~ "\n"
#~ msgstr ""
#~ "Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es\n"
#~ "gibt KEINE Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.\n"
#~ "\n"

#~ msgid "argument to `-Xlinker' is missing"
#~ msgstr "Argument für »-Xlinker« fehlt"

#~ msgid "argument to `-Xpreprocessor' is missing"
#~ msgstr "Argument für »-Xpreprocessor« fehlt"

#~ msgid "argument to `-Xassembler' is missing"
#~ msgstr "Argument für »-Xassembler« fehlt"

#~ msgid "argument to `-l' is missing"
#~ msgstr "Argument für »-l« fehlt"

#~ msgid "argument to `-specs' is missing"
#~ msgstr "Argument für »-specs« fehlt"

#~ msgid "argument to `-specs=' is missing"
#~ msgstr "Argument für »-specs=« fehlt"

#~ msgid "`-%c' must come at the start of the command line"
#~ msgstr "»-%c« muss am Anfang der Kommandozeile stehen"

#~ msgid "argument to `-B' is missing"
#~ msgstr "Argument für »-B« fehlt"

#~ msgid "warning: -pipe ignored because -save-temps specified"
#~ msgstr "Warnung: -pipe ignoriert, da -save-temps angegeben"

#~ msgid "warning: -pipe ignored because -time specified"
#~ msgstr "Warnung: -pipe ignoriert, da -time angegeben"

#~ msgid "argument to `-x' is missing"
#~ msgstr "Argument für »-x« fehlt"

#~ msgid "argument to `-%s' is missing"
#~ msgstr "Argument für »-%s« fehlt"

#~ msgid "warning: `-x %s' after last input file has no effect"
#~ msgstr "Warnung: »-x %s« hinter letzter Eingabedatei hat keine Wirkung"

#~ msgid "invalid specification!  Bug in cc"
#~ msgstr "ungültige Spezifikation!  Fehler in cc"

#~ msgid "%s\n"
#~ msgstr "%s\n"

#~ msgid "spec failure: '%%*' has not been initialized by pattern match"
#~ msgstr "Spezifikationsfehler: »%%*« wurde nicht durch Mustererkennung initialisiert"

#~ msgid "warning: use of obsolete %%[ operator in specs"
#~ msgstr "Warnung: Verwendung des veralteten Operators %%[ in Spezifikation"

#~ msgid "Processing spec %c%s%c, which is '%s'\n"
#~ msgstr "Verarbeite Spezifikation %c%s%c, welche »%s« ist\n"

#~ msgid "spec failure: unrecognized spec option '%c'"
#~ msgstr "Spezifikationsfehler: nicht erkannte Option »%c«"

#~ msgid "unknown spec function `%s'"
#~ msgstr "unbekannte Spezifikationsfunktion »%s«"

#~ msgid "error in args to spec function `%s'"
#~ msgstr "Fehler in Argumenten für Spezifikationsfunktion »%s«"

#~ msgid "malformed spec function name"
#~ msgstr "schlechter Name für Spezifikationsfunktion"

#~ msgid "no arguments for spec function"
#~ msgstr "keine Argumente für Spezifikationsfunktion"

#~ msgid "malformed spec function arguments"
#~ msgstr "schlechte Argumente für Spezifikationsfunktion"

#~ msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC."
#~ msgstr "Spezifikationsfehler: mehr als ein Argument für SYSROOT_SUFFIX_SPEC."

#~ msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC."
#~ msgstr "Spezifikationsfehler: mehr als ein Argument für SYSROOT_HEADERS_SUFFIX_SPEC."

#~ msgid "unrecognized option `-%s'"
#~ msgstr "nicht erkannte Option »-%s«"

#~ msgid "install: %s%s\n"
#~ msgstr "installiere: %s%s\n"

#~ msgid "programs: %s\n"
#~ msgstr "Programme: %s\n"

#~ msgid "libraries: %s\n"
#~ msgstr "Bibliotheken: %s\n"

#~ msgid ""
#~ "\n"
#~ "For bug reporting instructions, please see:\n"
#~ msgstr ""
#~ "\n"
#~ "Zum Einsenden von Fehlerberichten (auf Englisch) lesen Sie bitte die\n"
#~ "folgenden Hinweise; Fehler in der deutschen Übersetzung sind an de@li.org\n"
#~ "zu melden:\n"

#~ msgid "Configured with: %s\n"
#~ msgstr "Konfiguriert mit: %s\n"

#~ msgid "Thread model: %s\n"
#~ msgstr "Thread-Modell: %s\n"

#~ msgid "gcc version %s\n"
#~ msgstr "gcc-Version %s\n"

#~ msgid "gcc driver version %s executing gcc version %s\n"
#~ msgstr "gcc-Treiberversion %s führt gcc Version %s aus\n"

#~ msgid "no input files"
#~ msgstr "keine Eingabedateien"

#~ msgid "%s: linker input file unused because linking not done"
#~ msgstr "%s: Eingabedateien des Binders unbenutzt, da keine Bindung geschieht"

#~ msgid "cannot specify -o with -c or -S and multiple languages"
#~ msgstr "-o kann nicht mit -c oder -S und mehreren Sprachen angegeben werden"

#~ msgid "%s: %s compiler not installed on this system"
#~ msgstr "%s: %s-Compiler ist auf diesem System nicht installiert"

#~ msgid "language %s not recognized"
#~ msgstr "Sprache %s nicht erkannt"

#~ msgid "internal gcc abort"
#~ msgstr "interner Abruch des gcc"

#~ msgid "Internal gcov abort.\n"
#~ msgstr "Interner gcov-Abbruch.\n"

#~ msgid ""
#~ "Usage: gcov [OPTION]... SOURCEFILE\n"
#~ "\n"
#~ msgstr ""
#~ "Aufruf: gcov [OPTION]... QUELLDATEI\n"
#~ "\n"

#~ msgid ""
#~ "Print code coverage information.\n"
#~ "\n"
#~ msgstr ""
#~ "Information zur Code-Überdeckung ausgeben.\n"
#~ "\n"

#~ msgid "  -h, --help                      Print this help, then exit\n"
#~ msgstr "  -h, --help                      Diese Hilfe anzeigen\n"

#~ msgid "  -v, --version                   Print version number, then exit\n"
#~ msgstr "  -v, --version                   Versionsnummer anzeigen\n"

#~ msgid "  -a, --all-blocks                Show information for every basic block\n"
#~ msgstr "  -a, --all-blocks                Informationen für jeden Basisblock zeigen\n"

#~ msgid "  -b, --branch-probabilities      Include branch probabilities in output\n"
#~ msgstr "  -b, --branch-probabilities      Zweigwahrscheinlichkeiten in Ausgabe aufnehmen\n"

#~ msgid ""
#~ "  -c, --branch-counts             Given counts of branches taken\n"
#~ "                                    rather than percentages\n"
#~ msgstr "  -c, --branch-counts             Angegebene Zweigzahlen statt Anteilen nehmen\n"

#~ msgid "  -n, --no-output                 Do not create an output file\n"
#~ msgstr "  -n, --no-output                 Keine Ausgabedatei erzeugen\n"

#~ msgid ""
#~ "  -l, --long-file-names           Use long output file names for included\n"
#~ "                                    source files\n"
#~ msgstr ""
#~ "  -l, --long-file-names           Lange Dateinamen für Ausgabedateien für\n"
#~ "                                    eingefügte Quelldateien verwenden\n"

#~ msgid "  -f, --function-summaries        Output summaries for each function\n"
#~ msgstr "  -f, --function-summaries        Ausgabezusammenfassungen für jede Funktion\n"

#~ msgid "  -o, --object-directory DIR|FILE Search for object files in DIR or called FILE\n"
#~ msgstr ""
#~ "  -o, --object-directory DIR|FILE In DIR oder aufgerufener Datei FILE nach\n"
#~ "                                  Objektdateien suchen\n"

#~ msgid "  -p, --preserve-paths            Preserve all pathname components\n"
#~ msgstr "  -p, --preserve-paths            Alle Pfadnamenskomponenten bewahren\n"

#~ msgid "  -u, --unconditional-branches    Show unconditional branch counts too\n"
#~ msgstr "  -u, --unconditional-branches    Auch unbedingte Zweigzähler zeigen\n"

#~ msgid ""
#~ "\n"
#~ "For bug reporting instructions, please see:\n"
#~ "%s.\n"
#~ msgstr ""
#~ "\n"
#~ "Zum Einsenden von Fehlerberichten (auf Englisch) lesen Sie bitte die Hinweise in:\n"
#~ "%s.\n"
#~ "Fehler in der deutschen Übersetzung sind an de@li.org zu melden.\n"

#~ msgid "gcov (GCC) %s\n"
#~ msgstr "gcov (GCC) %s\n"

#~ msgid "Copyright (C) 2003 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2003 Free Software Foundation, Inc.\n"

#~ msgid ""
#~ "This is free software; see the source for copying conditions.\n"
#~ "There is NO warranty; not even for MERCHANTABILITY or \n"
#~ "FITNESS FOR A PARTICULAR PURPOSE.\n"
#~ "\n"
#~ msgstr ""
#~ "Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es\n"
#~ "gibt KEINE Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.\n"
#~ "\n"

#~ msgid "%s:no functions found\n"
#~ msgstr "%s: keine Funktionen gefunden\n"

#~ msgid "\n"
#~ msgstr "\n"

#~ msgid "%s:creating `%s'\n"
#~ msgstr "%s: Erzeugen von »%s«\n"

#~ msgid "%s:error writing output file `%s'\n"
#~ msgstr "%s: Fehler beim Schreiben der Ausgabedatei »%s«\n"

#~ msgid "%s:could not open output file `%s'\n"
#~ msgstr "%s: Ausgabedatei %s konnte nicht geöffnet werden\n"

#~ msgid "%s:cannot open graph file\n"
#~ msgstr "%s: Graph-Datei kann nicht geöffnet werden\n"

#~ msgid "%s:not a gcov graph file\n"
#~ msgstr "%s: keine gcov-Graph-Datei\n"

#~ msgid "%s:version `%.4s', prefer `%.4s'\n"
#~ msgstr "%s: Version »%.4s«, aber »%.4s« wird bevorzugt\n"

#~ msgid "%s:already seen blocks for `%s'\n"
#~ msgstr "%s: bereits gesehene Blöcke für »%s«\n"

#~ msgid "%s:corrupted\n"
#~ msgstr "%s: beschädigt\n"

#~ msgid "%s:cannot open data file\n"
#~ msgstr "%s: kann nicht geöffnet werden\n"

#~ msgid "%s:not a gcov data file\n"
#~ msgstr "%s: keine gcov-Datei\n"

#~ msgid "%s:version `%.4s', prefer version `%.4s'\n"
#~ msgstr "%s: Version »%.4s«, aber Version »%.4s« wird bevorzugt\n"

#~ msgid "%s:stamp mismatch with graph file\n"
#~ msgstr "%s: Marke passt nicht zur Graph-Datei\n"

#~ msgid "%s:unknown function `%u'\n"
#~ msgstr "%s: unbekannte Funktion »%u«\n"

#~ msgid "%s:profile mismatch for `%s'\n"
#~ msgstr "%s: Profil passt nicht für `%s'\n"

#~ msgid "%s:overflowed\n"
#~ msgstr "%s: übergelaufen\n"

#~ msgid "%s:`%s' lacks entry and/or exit blocks\n"
#~ msgstr "%s: Eintrag und/oder Exit-Blöcke fehlen in »%s«\n"

#~ msgid "%s:`%s' has arcs to entry block\n"
#~ msgstr "%s: »%s« hat Bögen zum Eintrittsblock\n"

#~ msgid "%s:`%s' has arcs from exit block\n"
#~ msgstr "%s: »%s« hat Bögen vom Eintrittsblock\n"

#~ msgid "%s:graph is unsolvable for `%s'\n"
#~ msgstr "%s: Graph ist für »%s« unlösbar\n"

#~ msgid "%s `%s'\n"
#~ msgstr "%s: »%s«\n"

#~ msgid "Lines executed:%s of %d\n"
#~ msgstr "%s von %d Zeilen ausgeführt\n"

#~ msgid "No executable lines"
#~ msgstr "Keine ausführbaren Zeilen"

#~ msgid "Branches executed:%s of %d\n"
#~ msgstr "%s von %d Zweigen ausgeführt\n"

#~ msgid "Taken at least once:%s of %d\n"
#~ msgstr "%s von %d Zweigen mindestens einmal genommen\n"

#~ msgid "No branches\n"
#~ msgstr "Keine Zweige\n"

#~ msgid "Calls executed:%s of %d\n"
#~ msgstr "%s von %d Aufrufe ausgeführt\n"

#~ msgid "No calls\n"
#~ msgstr "Keine Aufrufe\n"

#~ msgid "%s:no lines for `%s'\n"
#~ msgstr "%s: keine Zeilen für »%s«\n"

#~ msgid "call   %2d returned %s\n"
#~ msgstr "Aufruf %2d gab %s zurück\n"

#~ msgid "call   %2d never executed\n"
#~ msgstr "Aufruf %2d niemals ausgeführt\n"

#~ msgid "branch %2d taken %s%s\n"
#~ msgstr "Zweig %2d wurde genommen: %s%s\n"

#~ msgid "branch %2d never executed\n"
#~ msgstr "Zweig %2d niemals ausgeführt\n"

#~ msgid "unconditional %2d taken %s\n"
#~ msgstr "unbedingtes %2d, genommen: %s\n"

#~ msgid "unconditional %2d never executed\n"
#~ msgstr "unbedingtes %2d niemals ausgeführt\n"

#~ msgid "%s:cannot open source file\n"
#~ msgstr "%s: Quelldatei kann nicht geöffnet werden\n"

#~ msgid "%s:source file is newer than graph file `%s'\n"
#~ msgstr "%s: Quelldatei ist neuer als Graph-Datei »%s«\n"

#~ msgid "GCSE disabled"
#~ msgstr "GCSE ausgeschaltet"

#~ msgid "NULL pointer checks disabled"
#~ msgstr "NULL-Zeiger Tests ausgeschaltet"

#~ msgid "jump bypassing disabled"
#~ msgstr "Sprungumgehungen ausgeschaltet"

#~ msgid "%s: %d basic blocks and %d edges/basic block"
#~ msgstr "%s: %d Basis-Blöcke und %d Kanten/Basis-Blöcke"

#~ msgid "%s: %d basic blocks and %d registers"
#~ msgstr "%s: %d Basis-Blöcke und %d Register"

#~ msgid "can't write PCH file: %m"
#~ msgstr "PCH-Datei kann nicht geschrieben werden: %m"

#~ msgid "can't get position in PCH file: %m"
#~ msgstr "Position in PCH-Datei kann nicht ermittelt werden: %m"

#~ msgid "can't write padding to PCH file: %m"
#~ msgstr "Auffüllung für PCH-Datei kann nicht geschrieben werden: %m"

#~ msgid "can't read PCH file: %m"
#~ msgstr "PCH-Datei kann nicht gelesen werden: %m"

#~ msgid "had to relocate PCH"
#~ msgstr "PCH musste verschoben werden"

#~ msgid "open /dev/zero: %m"
#~ msgstr "/dev/zero öffnen: %m"

#~ msgid "can't write PCH file"
#~ msgstr "PCH-Datei kann nicht geschrieben werden"

#~ msgid "Generating PCH files is not supported when using ggc-simple.c"
#~ msgstr "Das Erzeugen von PCH-Dateien wird bei Verwendung von ggc-simple.c nicht unterstützt"

#~ msgid "%s cannot be used in asm here"
#~ msgstr "%s kann nicht hier in »asm« verwendet werden"

#~ msgid "can't open %s: %m"
#~ msgstr "%s kann nicht geöffnet werden: %m"

#~ msgid "fix_sched_param: unknown param: %s"
#~ msgstr "fix_sched_param: unbekannter Parameter: %s"

#~ msgid "function cannot be inline"
#~ msgstr "Funktion kann nicht »inline« sein"

#~ msgid "varargs function cannot be inline"
#~ msgstr "Varargs-Funktion kann nicht »inline« sein"

#~ msgid "function using alloca cannot be inline"
#~ msgstr "alloca benutzende Funktion kann nicht »inline« sein"

#~ msgid "function using longjmp cannot be inline"
#~ msgstr "longjmp benutzende Funktion kann nicht »inline« sein"

#~ msgid "function using setjmp cannot be inline"
#~ msgstr "setjmp benutzende Funktion kann nicht »inline« sein"

#~ msgid "function uses __builtin_eh_return"
#~ msgstr "Funktion verwendet __builtin_eh_return"

#~ msgid "function with nested functions cannot be inline"
#~ msgstr "Funktion mit geschachtelten Funktionen kann nicht »inline« sein"

#~ msgid "function with label addresses used in initializers cannot inline"
#~ msgstr "Funktion mit Markenadressen in Initialisierungen kann nicht »inline« sein"

#~ msgid "function too large to be inline"
#~ msgstr "Funktion zu groß um »inline« sein zu können"

#~ msgid "no prototype, and parameter address used; cannot be inline"
#~ msgstr "kein Prototyp, und Parameteradresse verwendet; kann nicht »inline« sein"

#~ msgid "inline functions not supported for this return value type"
#~ msgstr "»inline«-Funktionen für diesen Rückgabetyp nicht unterstützt"

#~ msgid "function with varying-size return value cannot be inline"
#~ msgstr "Funktion mit Rückgabetyp variabler Größe kann nicht »inline« sein"

#~ msgid "function with varying-size parameter cannot be inline"
#~ msgstr "Funktion mit Parameter variabler Größe kann nicht »inline« sein"

#~ msgid "function with transparent unit parameter cannot be inline"
#~ msgstr "Funktion mit transparentem Einheiten-Parameter kann nicht »inline« sein"

#~ msgid "function with computed jump cannot inline"
#~ msgstr "Funktion mit berechnetem Sprung kann nicht »inline« sein"

#~ msgid "function with nonlocal goto cannot be inline"
#~ msgstr "Funktion mit nichtlokalem Goto kann nicht »inline« sein"

#~ msgid "function with target specific attribute(s) cannot be inlined"
#~ msgstr "Funktion mit zielspezifischen Attributen kann nicht »inline« sein"

#~ msgid "%Hwill never be executed"
#~ msgstr "%Hwird niemals ausgeführt"

#~ msgid "This switch lacks documentation"
#~ msgstr "Dieser Schalter ist undokumentiert"

#~ msgid "command line option \"%s\" is valid for %s but not for %s"
#~ msgstr "Kommandozeilenoption \"%s\" ist gültig für %s, aber nicht für %s"

#~ msgid "missing argument to \"%s\""
#~ msgstr "fehlendes Argument für »%s«"

#~ msgid "argument to \"%s\" should be a non-negative integer"
#~ msgstr "Argument von »%s« sollte eine nicht-negative Ganzzahl sein"

#~ msgid "unrecognized command line option \"%s\""
#~ msgstr "nicht erkannte Kommandozeilenoption »%s«"

#~ msgid "-Wuninitialized is not supported without -O"
#~ msgstr "-Wuninitialized wird nicht ohne -O unterstützt"

#~ msgid "unrecognized register name \"%s\""
#~ msgstr "unbekannter Registername: \"%s\""

#~ msgid "unknown tls-model \"%s\""
#~ msgstr "unbekanntes tls-Modell »%s«"

#~ msgid "-fwritable-strings is deprecated; see documentation for details"
#~ msgstr "-fwritable-strings veraltet, schauen Sie in die Dokumentation für Details"

#~ msgid "%s: --param arguments should be of the form NAME=VALUE"
#~ msgstr "%s: »--param«-Argumente sollten von der Form NAME=VALUE sein"

#~ msgid "invalid --param value `%s'"
#~ msgstr "ungültiger Wert für --param: »%s«"

#~ msgid "target system does not support debug output"
#~ msgstr "Zielsystem unterstützt nicht Testausgaben"

#~ msgid "debug format \"%s\" conflicts with prior selection"
#~ msgstr "Testformat »%s« steht in Konflikt mit vorheriger Auswahl"

#~ msgid "unrecognised debug output level \"%s\""
#~ msgstr "Testausgabestufe »%s« nicht erkannt"

#~ msgid "debug output level %s is too high"
#~ msgstr "Testausgabestufe »%s« ist zu groß"

#~ msgid "The following options are language-independent:\n"
#~ msgstr "Die folgenden Optionen sind sprach-unabhängig:\n"

#~ msgid ""
#~ "The %s front end recognizes the following options:\n"
#~ "\n"
#~ msgstr ""
#~ "Das %s-Frontend erkennt die folgenden Optionen:\n"
#~ "\n"

#~ msgid "The --param option recognizes the following as parameters:\n"
#~ msgstr "Die Option »--param« erkennt die folgenden Parameter:\n"

#~ msgid "invalid parameter `%s'"
#~ msgstr "ungültiger Parameter »%s«"

#~ msgid "corrupted profile info: run_max * runs < sum_max"
#~ msgstr "beschädigte Profilinformation: run_max * runs < sum_max"

#~ msgid "corrupted profile info: sum_all is smaller than sum_max"
#~ msgstr "beschädigte Profilinformation: sum_all ist kleiner als sum_max"

#~ msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
#~ msgstr "Info zum beschädigten Profil: Kante von %i nach %i überschreitet Höchstzahl"

#~ msgid "corrupted profile info: number of iterations for basic block %d thought to be %i"
#~ msgstr "Info zum beschädigten Profil: Anzahl der Durchläufe des Basisblocks %d sollte %i sein"

#~ msgid "corrupted profile info: number of executions for edge %d-%d thought to be %i"
#~ msgstr "Info zum beschädigten Profil: Anzahl der Ausführungen der Kante »%d-%d« sollte %i sein"

#~ msgid "%s: internal abort\n"
#~ msgstr "%s: interner Abbruch\n"

#~ msgid "%s: error writing file `%s': %s\n"
#~ msgstr "%s: Fehler beim Schreiben der Datei »%s«: %s\n"

#~ msgid "%s: usage '%s [ -VqfnkN ] [ -i <istring> ] [ filename ... ]'\n"
#~ msgstr "%s: Aufruf '%s [ -VqfnkN ] [ -i <istring> ] [ Dateiname ... ]'\n"

#~ msgid "%s: usage '%s [ -VqfnkNlgC ] [ -B <dirname> ] [ filename ... ]'\n"
#~ msgstr "%s: Aufruf '%s [ -VqfnkNlgC ] [ -B <VerzName> ] [ Dateiname ... ]'\n"

#~ msgid "%s: warning: no read access for file `%s'\n"
#~ msgstr "%s: Warnung: kein Leserecht für Datei »%s«\n"

#~ msgid "%s: warning: no write access for file `%s'\n"
#~ msgstr "%s: Warnung: kein Schreibrecht für Datei »%s«\n"

#~ msgid "%s: warning: no write access for dir containing `%s'\n"
#~ msgstr "%s: Warnung: kein Schreibrecht für Verzeichnis von »%s«\n"

#~ msgid "%s: invalid file name: %s\n"
#~ msgstr "%s: ungültiger Dateiname: %s\n"

#~ msgid "%s: %s: can't get status: %s\n"
#~ msgstr "%s: %s: kann Status nicht ermitteln: %s\n"

#~ msgid ""
#~ "\n"
#~ "%s: fatal error: aux info file corrupted at line %d\n"
#~ msgstr ""
#~ "\n"
#~ "%s: kritischer Fehler: Datei mit Hilfsinformationen beschädigt in Zeile %d\n"

#~ msgid "%s:%d: declaration of function `%s' takes different forms\n"
#~ msgstr "%s:%d: Deklaration der Funktion »%s« nimmt verschiedene Formen an\n"

#~ msgid "%s: compiling `%s'\n"
#~ msgstr "%s: »%s« wird kompiliert\n"

#~ msgid "%s: wait: %s\n"
#~ msgstr "%s: warten: %s\n"

#~ msgid "%s: subprocess got fatal signal %d\n"
#~ msgstr "%s: Subprozess empfing kritischen Fehler %d\n"

#~ msgid "%s: %s exited with status %d\n"
#~ msgstr "%s: %s beendet mit Status %d\n"

#~ msgid "%s: warning: missing SYSCALLS file `%s'\n"
#~ msgstr "%s: Warnung: SYSCALLS-Datei »%s« fehlt\n"

#~ msgid "%s: can't read aux info file `%s': %s\n"
#~ msgstr "%s: Datei mit Hilfsinformationen »%s« kann nicht gelesen werden: %s\n"

#~ msgid "%s: can't get status of aux info file `%s': %s\n"
#~ msgstr "%s: Status der Datei mit Hilfsinformationen »%s« kann nicht ermittelt werden: %s\n"

#~ msgid "%s: can't open aux info file `%s' for reading: %s\n"
#~ msgstr "%s: Datei mit Hilfsinformationen »%s« kann nicht zum Lesen geöffnet werden: %s\n"

#~ msgid "%s: error reading aux info file `%s': %s\n"
#~ msgstr "%s: Fehler beim Lesen der Datei mit Hilfsinformationen »%s«: %s\n"

#~ msgid "%s: error closing aux info file `%s': %s\n"
#~ msgstr "%s: Fehler beim Schließen der Datei mit Hilfsinformationen »%s«: %s\n"

#~ msgid "%s: can't delete aux info file `%s': %s\n"
#~ msgstr "%s: Fehler beim Löschen der Datei mit Hilfsinformationen »%s«: %s\n"

#~ msgid "%s: can't delete file `%s': %s\n"
#~ msgstr "%s: Fehler beim Löschen der Datei »%s«: %s\n"

#~ msgid "%s: warning: can't rename file `%s' to `%s': %s\n"
#~ msgstr "%s: Warnung: Fehler beim Umbenennen der Datei »%s« in »%s«: %s\n"

#~ msgid "%s: conflicting extern definitions of '%s'\n"
#~ msgstr "%s: externe Definitionen von »%s« stehen in Konflikt\n"

#~ msgid "%s: declarations of '%s' will not be converted\n"
#~ msgstr "%s: Deklarationen von »%s« werden nicht konvertiert\n"

#~ msgid "%s: conflict list for '%s' follows:\n"
#~ msgstr "%s: Konfliktliste für »%s« folgt:\n"

#~ msgid "%s: warning: using formals list from %s(%d) for function `%s'\n"
#~ msgstr "%s: Warnung: Formalliste von %s(%d) für Funktion »%s« verwendet\n"

#~ msgid "%s: %d: `%s' used but missing from SYSCALLS\n"
#~ msgstr "%s: %d: »%s« verwendet, fehlt jedoch in SYSCALLS\n"

#~ msgid "%s: %d: warning: no extern definition for `%s'\n"
#~ msgstr "%s: %d: Warnung: keine externe Definition für »%s«\n"

#~ msgid "%s: warning: no static definition for `%s' in file `%s'\n"
#~ msgstr "%s: Warnung: keine statische Definition für »%s« in Datei »%s«\n"

#~ msgid "%s: multiple static defs of `%s' in file `%s'\n"
#~ msgstr "%s: mehrere statische Definitionen von »%s« in Datei »%s«\n"

#~ msgid "%s: %d: warning: source too confusing\n"
#~ msgstr "%s: %d: Warnung: Quelle zu verworren\n"

#~ msgid "%s: %d: warning: varargs function declaration not converted\n"
#~ msgstr "%s: %d: Warnung: Funktionsdeklaration mit variablen Argumenten nicht konvertiert\n"

#~ msgid "%s: declaration of function `%s' not converted\n"
#~ msgstr "%s: Deklaration der Funktion »%s« nicht konvertiert\n"

#~ msgid "%s: warning: too many parameter lists in declaration of `%s'\n"
#~ msgstr "%s: Warnung: zu viele Parameterlisten in Deklaration von »%s«\n"

#~ msgid ""
#~ "\n"
#~ "%s: warning: too few parameter lists in declaration of `%s'\n"
#~ msgstr ""
#~ "\n"
#~ "%s: Warnung: zu wenige Parameterlisten in Deklaration von »%s«\n"

#~ msgid "%s: %d: warning: found `%s' but expected `%s'\n"
#~ msgstr "%s: %d: Warnung: »%s« gefunden, aber »%s« erwartet\n"

#~ msgid "%s: local declaration for function `%s' not inserted\n"
#~ msgstr "%s: lokale Deklaration für Funktion »%s« nicht eingefügt\n"

#~ msgid ""
#~ "\n"
#~ "%s: %d: warning: can't add declaration of `%s' into macro call\n"
#~ msgstr ""
#~ "\n"
#~ "%s: %d: Warnung: kann Deklaration von »%s« nicht zu Makro-Aufruf hinzufügen\n"

#~ msgid "%s: global declarations for file `%s' not inserted\n"
#~ msgstr "%s: globale Deklarationen für Datei »%s« wurden nicht eingefügt\n"

#~ msgid "%s: definition of function `%s' not converted\n"
#~ msgstr "%s: Definition der Funktion »%s« nicht konvertiert\n"

#~ msgid "%s: %d: warning: definition of %s not converted\n"
#~ msgstr "%s: %d: Warnung: Definition von %s nicht konvertiert\n"

#~ msgid "%s: found definition of `%s' at %s(%d)\n"
#~ msgstr "%s: Definition von »%s« an Stelle %s(%d) gefunden\n"

#~ msgid "%s: %d: warning: `%s' excluded by preprocessing\n"
#~ msgstr "%s: %d: Warnung: »%s« durch Präprozessor ausgeschlossen\n"

#~ msgid "%s: function definition not converted\n"
#~ msgstr "%s: Funktionsdefinition nicht konvertiert\n"

#~ msgid "%s: `%s' not converted\n"
#~ msgstr "%s: »%s« nicht konvertiert\n"

#~ msgid "%s: would convert file `%s'\n"
#~ msgstr "%s: würde Datei »%s« konvertieren\n"

#~ msgid "%s: converting file `%s'\n"
#~ msgstr "%s: Datei »%s« wird konvertiert\n"

#~ msgid "%s: can't get status for file `%s': %s\n"
#~ msgstr "%s: Status der Datei »%s« kann nicht ermittelt werden: %s\n"

#~ msgid "%s: can't open file `%s' for reading: %s\n"
#~ msgstr "%s: Datei »%s« kann nicht zum Schreiben geöffnet werden: %s\n"

#~ msgid ""
#~ "\n"
#~ "%s: error reading input file `%s': %s\n"
#~ msgstr ""
#~ "\n"
#~ "%s: Fehler beim Lesen der Eingabedatei »%s«: %s\n"

#~ msgid "%s: can't create/open clean file `%s': %s\n"
#~ msgstr "%s: die leere Datei »%s« kann nicht erzeugt oder geöffnet werden: %s\n"

#~ msgid "%s: warning: file `%s' already saved in `%s'\n"
#~ msgstr "%s: Warnung: Datei »%s« bereits in »%s« gesichert\n"

#~ msgid "%s: can't link file `%s' to `%s': %s\n"
#~ msgstr "%s: die Datei »%s« kann nicht mit »%s« verbunden werden (Link): %s\n"

#~ msgid "%s: can't create/open output file `%s': %s\n"
#~ msgstr "%s: die Ausgabedatei »%s« kann nicht erzeugt oder geöffnet werden: %s\n"

#~ msgid "%s: can't change mode of file `%s': %s\n"
#~ msgstr "%s: Rechte der Datei »%s« können nicht geändert werden: %s\n"

#~ msgid "%s: cannot get working directory: %s\n"
#~ msgstr "%s: aktuelles Verzeichnis kann nicht ermittelt werden: %s\n"

#~ msgid "%s: input file names must have .c suffixes: %s\n"
#~ msgstr "%s: Namen der Eingabedateien müssen Suffix ».c« haben: %s\n"

#~ msgid "Didn't find a coloring.\n"
#~ msgstr "Färbung konnte nicht gefunden werden.\n"

#~ msgid "output constraint %d must specify a single register"
#~ msgstr "Ausgabebedingung %d muss ein einzelnes Register angeben"

#~ msgid "output constraint %d cannot be specified together with \"%s\" clobber"
#~ msgstr "Ausgabebedingung %d kann nicht zusammen mit »%s« angegeben werden"

#~ msgid "output regs must be grouped at top of stack"
#~ msgstr "Ausgaberegister müssen oben auf dem Stack gruppiert werden"

#~ msgid "implicitly popped regs must be grouped at top of stack"
#~ msgstr "implizit geholte (»pop«) Register müssen oben auf dem Stack gruppiert werden"

#~ msgid "output operand %d must use `&' constraint"
#~ msgstr "Ausgabeoperand %d muss »&«-Bedingung benutzen"

#~ msgid "can't use '%s' as a %s register"
#~ msgstr "»%s« kann nicht als ein %s-Register verwendet werden"

#~ msgid "unknown register name: %s"
#~ msgstr "unbekannter Registername: %s"

#~ msgid "global register variable follows a function definition"
#~ msgstr "globale Registervariable folgt einer Funktionsdefinition"

#~ msgid "register used for two global register variables"
#~ msgstr "Register für zwei globale Registervariablen verwendet"

#~ msgid "call-clobbered register used for global register variable"
#~ msgstr "für Ruf vorgesehenes Register wurde für globale Registervariable verwendet"

#~ msgid "validate_value_data: [%u] Bad next_regno for empty chain (%u)"
#~ msgstr "validate_value_data: [%u] Falsches next_regno für leere Kette (%u)"

#~ msgid "validate_value_data: Loop in regno chain (%u)"
#~ msgstr "validate_value_data: Zyklus in regno-Kette (%u)"

#~ msgid "validate_value_data: [%u] Bad oldest_regno (%u)"
#~ msgstr "validate_value_data: [%u] Falsches oldest_regno (%u)"

#~ msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
#~ msgstr "validate_value_data: [%u] Nicht leeres Register in Kette (%s %u %i)"

#~ msgid "cannot reload integer constant operand in `asm'"
#~ msgstr "Ganzzahlkonstantenoperand kann in »asm« nicht neu geladen werden"

#~ msgid "impossible register constraint in `asm'"
#~ msgstr "unmögliche Registerbedingung in »asm«"

#~ msgid "`&' constraint used with no register class"
#~ msgstr "»&«-Bedingung ohne Registerklasse verwendet"

#~ msgid "unable to generate reloads for:"
#~ msgstr "Neuladungen konnten nicht generiert werden für:"

#~ msgid "inconsistent operand constraints in an `asm'"
#~ msgstr "inkonsistente Operandenbedingungen in einem »asm«"

#~ msgid "frame size too large for reliable stack checking"
#~ msgstr "Rahmengröße zu groß für zuverlässige Kellerüberprüfung"

#~ msgid "try reducing the number of local variables"
#~ msgstr "versuchen Sie, die Anzahl der lokalen Variablen zu verringern"

#~ msgid "can't find a register in class `%s' while reloading `asm'"
#~ msgstr "in der Klasse »%s« konnte während des Neuladens von »asm« kein Register gefunden werden"

#~ msgid "unable to find a register to spill in class `%s'"
#~ msgstr "in Klasse »%s« konnte kein Register für Überlauf gefunden werden"

#~ msgid "this is the insn:"
#~ msgstr "dies ist das insn:"

#~ msgid "`asm' operand requires impossible reload"
#~ msgstr "»asm«-Operand erfordert unmögliches Neuladen"

#~ msgid "could not find a spill register"
#~ msgstr "es konnte kein Überlaufregister gefunden werden"

#~ msgid "`asm' operand constraint incompatible with operand size"
#~ msgstr "»asm«-Operandenbedingung inkompatibel mit Operandengröße"

#~ msgid "VOIDmode on an output"
#~ msgstr "VOIDmode bei einer Ausgabe"

#~ msgid "output operand is constant in `asm'"
#~ msgstr "Ausgabeoperand ist in »asm« konstant"

#~ msgid "unrecognizable insn:"
#~ msgstr "unerkennbares insn:"

#~ msgid "insn does not satisfy its constraints:"
#~ msgstr "insn erfüllt nicht seine Bedingungen:"

#~ msgid "RTL check: access of elt %d of `%s' with last elt %d in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Zugriff von Elt %d von »%s« mit letztem Elt %d in %s, bei %s:%d"

#~ msgid "RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Elt-%d-Typ %c erwartet, haben Typ %c (rtx %s) in %s, bei %s:%d"

#~ msgid "RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Elt-%d-Typ %c oder %c erwartet, haben Typ %c (rtx %s) in %s, bei %s:%d"

#~ msgid "RTL check: expected code `%s', have `%s' in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Code »%s« erwartet, haben »%s« in %s, bei %s:%d"

#~ msgid "RTL check: expected code `%s' or `%s', have `%s' in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Code »%s« oder »%s« erwartet, haben »%s« in %s, bei %s:%d"

#~ msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
#~ msgstr "RTL-Überprüfung: Zugriff von Elt %d von Vektor mit letztem Elt %d in %s, bei %s:%d"

#~ msgid "RTL flag check: %s used with unexpected rtx code `%s' in %s, at %s:%d"
#~ msgstr "RTL-Kennzeichenüberprüfung: %s mit unerwartetem RTX-Code »%s« in %s bei %s:%d verwendet"

#~ msgid "jump to `%s' invalidly jumps into binding contour"
#~ msgstr "Sprung zu »%s« springt ungültig in bindenden Querschnitt"

#~ msgid "%Jlabel '%D' used before containing binding contour"
#~ msgstr "%JMarke »%D« verwendet vor enthaltendem bindenden Querschnitt"

#~ msgid "output operand constraint lacks `='"
#~ msgstr "Bedingung des Ausgabeoperanden erfordert »=«"

#~ msgid "output constraint `%c' for operand %d is not at the beginning"
#~ msgstr "Ausgabebedingung »%c« für Operand %d steht nicht am Anfang"

#~ msgid "operand constraint contains incorrectly positioned '+' or '='"
#~ msgstr "Operandenbedingung enthält falsch positioniertes »+« oder »=«"

#~ msgid "`%%' constraint used with last operand"
#~ msgstr "»%%«-Bedingung mit letztem Operanden verwendet"

#~ msgid "matching constraint not valid in output operand"
#~ msgstr "dazu passende Bedingung in Ausgabeoperanden ungültig"

#~ msgid "read-write constraint does not allow a register"
#~ msgstr "Schreib- und Lesebeschränkungen erlauben kein Register"

#~ msgid "input operand constraint contains `%c'"
#~ msgstr "Bedingung für Eingabeoperanden enthält »%c«"

#~ msgid "matching constraint references invalid operand number"
#~ msgstr "dazu passende Bedingung referenziert ungültige Operandennummer"

#~ msgid "invalid punctuation `%c' in constraint"
#~ msgstr "ungültiges Zeichen »%c« in Bedingung"

#~ msgid "matching constraint does not allow a register"
#~ msgstr "dazu passende Bedingung erlaubt kein Register"

#~ msgid "asm-specifier for variable `%s' conflicts with asm clobber list"
#~ msgstr "asm-Spezifizierer für Variable »%s« steht in Konflikt mit asm-Konflikt-Liste"

#~ msgid "unknown register name `%s' in `asm'"
#~ msgstr "unbekannter Registername »%s« in »asm«"

#~ msgid "PIC register `%s' clobbered in `asm'"
#~ msgstr "PIC-Register »%s« wird in »asm« zerstört"

#~ msgid "more than %d operands in `asm'"
#~ msgstr "mehr als %d Operanden in »asm«"

#~ msgid "output number %d not directly addressable"
#~ msgstr "Ausgabezahl %d nicht direkt adressierbar"

#~ msgid "asm operand %d probably doesn't match constraints"
#~ msgstr "asm-Operand %d passt wahrscheinlich nicht zu den Bedingungen"

#~ msgid "use of memory input without lvalue in asm operand %d is deprecated"
#~ msgstr "die Verwendung einer Speichereingabe ohne L-Wert in asm-Operand %d ist veraltet"

#~ msgid "asm clobber conflict with output operand"
#~ msgstr "asm-Konflikt mit Ausgabeoperand"

#~ msgid "asm clobber conflict with input operand"
#~ msgstr "asm-Konflikt mit Eingabeoperand"

#~ msgid "too many alternatives in `asm'"
#~ msgstr "zu viele Alternativen in »asm«"

#~ msgid "operand constraints for `asm' differ in number of alternatives"
#~ msgstr "Operandenbedingungen für »asm« unterscheiden sich in der Anzahl der Alternativen"

#~ msgid "duplicate asm operand name '%s'"
#~ msgstr "doppelter asm-Operandenname »%s«"

#~ msgid "missing close brace for named operand"
#~ msgstr "schließende geschweifte Klammer für benannten Operanden fehlt"

#~ msgid "undefined named operand '%s'"
#~ msgstr "benannter Operand »%s« ist nicht definiert"

#~ msgid "%Hstatement with no effect"
#~ msgstr "%HAnweisung ohne Effekt"

#~ msgid "%Hvalue computed is not used"
#~ msgstr "%Hberechneter Wert ist unbenutzt"

#~ msgid "%Junused variable '%D'"
#~ msgstr "%JVariable »%D« wird nicht verwendet"

#~ msgid "%Hunreachable code at beginning of %s"
#~ msgstr "%Hunerreichbarer Code am Anfang von %s"

#~ msgid "enumeration value `%s' not handled in switch"
#~ msgstr "Aufzählungswert »%s« wird nicht von switch behandelt"

#~ msgid "case value `%ld' not in enumerated type"
#~ msgstr "case-Wert »%ld« nicht in Aufzählungstyp"

#~ msgid "case value `%ld' not in enumerated type `%s'"
#~ msgstr "case-Wert »%ld« nicht in Aufzählungstyp »%s«"

#~ msgid "switch missing default case"
#~ msgstr "die Standardfallbehandlung in switch fehlt"

#~ msgid "type size can't be explicitly evaluated"
#~ msgstr "die Typgröße kann nicht explizit ausgewertet werden"

#~ msgid "variable-size type declared outside of any function"
#~ msgstr "Typ mit variabler Größe wurde außerhalb einer Funktion definiert"

#~ msgid "%Jsize of '%D' is %d bytes"
#~ msgstr "%JGröße von »%Ds« ist %d Bytes"

#~ msgid "%Jsize of '%D' is larger than %d bytes"
#~ msgstr "%JGröße von »%D« übertrifft %d Bytes"

#~ msgid "%Jpacked attribute causes inefficient alignment for '%D'"
#~ msgstr "%Jgepacktes Attribut verursacht ineffiziente Ausrichtung für »%D«"

#~ msgid "%Jpacked attribute is unnecessary for '%D'"
#~ msgstr "%Jgepacktes Attribut ist unnötig für »%D«"

#~ msgid "%Jpadding struct to align '%D'"
#~ msgstr "%Jstruct wird aufgefüllt, um »%D« auszurichten"

#~ msgid "padding struct size to alignment boundary"
#~ msgstr "struct wird bis zur Ausrichtungsgrenze aufgefüllt"

#~ msgid "packed attribute causes inefficient alignment for `%s'"
#~ msgstr "gepacktes Attribut verursacht ineffiziente Ausrichtung für »%s«"

#~ msgid "packed attribute is unnecessary for `%s'"
#~ msgstr "gepacktes Attribut ist unnötig für »%s«"

#~ msgid "packed attribute causes inefficient alignment"
#~ msgstr "gepacktes Attribut führt zu ineffizienter Ausrichtung"

#~ msgid "packed attribute is unnecessary"
#~ msgstr "gepacktes Attribut ist unnötig"

#~ msgid "__builtin_saveregs not supported by this target"
#~ msgstr "__builtin_saveregs wird von diesem Ziel nicht unterstützt"

#~ msgid "cannot timevar_pop '%s' when top of timevars stack is '%s'"
#~ msgstr "timevar_pop '%s' kann nicht ausgeführt werden, wenn am Anfang des timevars-Stacks '%s' steht"

#~ msgid ""
#~ "\n"
#~ "Execution times (seconds)\n"
#~ msgstr ""
#~ "\n"
#~ "Ausführungszeiten (Sekunden)\n"

#~ msgid " TOTAL                 :"
#~ msgstr " GESAMT                :"

#~ msgid "time in %s: %ld.%06ld (%ld%%)\n"
#~ msgstr "Zeit in %s: %ld.%06ld (%ld%%)\n"

#~ msgid "collect: reading %s\n"
#~ msgstr "sammeln: %s lesen\n"

#~ msgid "collect: recompiling %s\n"
#~ msgstr "sammeln: %s neu kompilieren\n"

#~ msgid "collect: tweaking %s in %s\n"
#~ msgstr "sammeln: %s wird in %s eingestellt\n"

#~ msgid "collect: relinking\n"
#~ msgstr "sammeln: neu binden\n"

#~ msgid "ld returned %d exit status"
#~ msgstr "ld gab %d als Ende-Status zurück"

#~ msgid "%s "
#~ msgstr "%s "

#~ msgid " %s"
#~ msgstr " %s"

#~ msgid "invalid option argument `%s'"
#~ msgstr "ungültiges Optionsargument »%s«"

#~ msgid "getting core file size maximum limit: %m"
#~ msgstr "Kern-Dateigrößenlimit wird geholt: %m"

#~ msgid "setting core file size limit to maximum: %m"
#~ msgstr "Kern-Dateigrößenlimit wird gesetzt: %m"

#~ msgid "%J'%F' used but never defined"
#~ msgstr "%J»%F« verwendet, aber nirgendwo definiert"

#~ msgid "%J'%F' declared `static' but never defined"
#~ msgstr "%J»%F« als »static« deklariert, aber nirgendwo definiert"

#~ msgid "%J'%D' defined but not used"
#~ msgstr "%J»%D« definiert, aber nicht verwendet"

#~ msgid "`%s' is deprecated (declared at %s:%d)"
#~ msgstr "»%s« ist veraltet (deklariert bei %s:%d)"

#~ msgid "`%s' is deprecated"
#~ msgstr "»%s« ist veraltet"

#~ msgid "type is deprecated (declared at %s:%d)"
#~ msgstr "Typ ist veraltet (in %s:%d deklariert)"

#~ msgid "type is deprecated"
#~ msgstr "Typ ist veraltet"

#~ msgid "invalid register name `%s' for register variable"
#~ msgstr "ungültiger Registername »%s« für Registervariable"

#~ msgid "branch target register load optimization is not intended to be run twice"
#~ msgstr "Ladeoptimierung für Zweig-Zielregister ist nicht dafür vorgesehen, mehrfach zu laufen"

#~ msgid ""
#~ "\n"
#~ "Target specific options:\n"
#~ msgstr ""
#~ "\n"
#~ "Zielspezifische Optionen:\n"

#~ msgid "  -m%-23s [undocumented]\n"
#~ msgstr "  -m%-23s [undokumentiert]\n"

#~ msgid ""
#~ "\n"
#~ "There are undocumented target specific options as well.\n"
#~ msgstr ""
#~ "\n"
#~ "Es gibt auch undokumentierte zielspezifische Optionen.\n"

#~ msgid "  They exist, but they are not documented.\n"
#~ msgstr "  Es gibt sie, aber sie sind nicht dokumentiert.\n"

#~ msgid "unrecognized gcc debugging option: %c"
#~ msgstr "gcc-Debuggingoption nicht erkannt: %c"

#~ msgid "invalid option `%s'"
#~ msgstr "ungültige Option »%s«"

#~ msgid ""
#~ "%s%s%s version %s (%s)\n"
#~ "%s\tcompiled by GNU C version %s.\n"
#~ "%s%s%s version %s (%s) compiled by CC.\n"
#~ msgstr ""
#~ "%s%s%s Version %s (%s)\n"
#~ "%s\tkompiliert von GNU-C-Version %s.\n"
#~ "%s%s%s Version %s (%s) kompiliert von CC.\n"

#~ msgid "%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
#~ msgstr "%s%sGGC-Heuristik: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"

#~ msgid "options passed: "
#~ msgstr "angegebene Optionen: "

#~ msgid "options enabled: "
#~ msgstr "angeschaltete Optionen: "

#~ msgid "can't open %s for writing: %m"
#~ msgstr "Datei »%s« kann nicht zum Schreiben geöffnet werden: %m"

#~ msgid "created and used with different settings of -fpic"
#~ msgstr "erzeugt und mit anderen Einstellungen von -fpic verwendet"

#~ msgid "created and used with different settings of -fpie"
#~ msgstr "erzeugt und mit anderen Einstellungen von -fpie verwendet"

#~ msgid "created and used with differing settings of `-m%s'"
#~ msgstr "erzeugt und mit anderen Einstellungen von »-m%s« verwendet"

#~ msgid "out of memory"
#~ msgstr "Platz im Hauptspeicher reicht nicht aus"

#~ msgid "instruction scheduling not supported on this target machine"
#~ msgstr "Befehlsplanung wird von dieser Zielmaschine nicht unterstützt"

#~ msgid "this target machine does not have delayed branches"
#~ msgstr "diese Zielmaschine hat keine verzögerten Zweige"

#~ msgid "-f%sleading-underscore not supported on this target machine"
#~ msgstr "-f%sleading-underscore wird auf dieser Zielmaschine nicht unterstützt"

#~ msgid "target system does not support the \"%s\" debug format"
#~ msgstr "Zielsystem unterstützt nicht das Testformat \"%s\""

#~ msgid "-ffunction-sections not supported for this target"
#~ msgstr "-ffunction-sections wird für dieses Ziel nicht unterstützt"

#~ msgid "-fdata-sections not supported for this target"
#~ msgstr "-fdata-sections wird für dieses Ziel nicht unterstützt"

#~ msgid "-ffunction-sections disabled; it makes profiling impossible"
#~ msgstr "-ffunction-sections ausgeschaltet; das macht Profiling unmöglich"

#~ msgid "-fprefetch-loop-arrays not supported for this target"
#~ msgstr "-fprefetch-loop-arrays wird für dieses Ziel nicht unterstützt"

#~ msgid "-fprefetch-loop-arrays not supported for this target (try -march switches)"
#~ msgstr "-fprefetch-loop-arrays wird für dieses Ziel nicht unterstützt (versuchen Sie die »-march«-Schalter)"

#~ msgid "-fprefetch-loop-arrays is not supported with -Os"
#~ msgstr "-fprefetch-loop-arrays wird nicht mit -Os unterstützt"

#~ msgid "-ffunction-sections may affect debugging on some targets"
#~ msgstr "-ffunction-sections kann für verschiedene Ziele die Fehlersuche beeinträchtigen"

#~ msgid "error writing to %s: %m"
#~ msgstr "Fehler beim Schreiben der Datei %s: %m"

#~ msgid "error closing %s: %m"
#~ msgstr "Fehler beim Schließen von %s: %m"

#~ msgid "could not open dump file `%s'"
#~ msgstr "Abzugsdatei »%s« konnte nicht geöffnet werden"

#~ msgid "ignoring unknown option `%.*s' in `-fdump-%s'"
#~ msgstr "unbekannte Option »%.*s« in »-fdump-%s« wird ignoriert"

#~ msgid "%Jfunction '%F' can never be inlined because it uses alloca (override using the always_inline attribute)"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie alloca verwendet (zum Aufheben: Attribut »always_inline« verwenden)"

#~ msgid "%Jfunction '%F' can never be inlined because it uses setjmp"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie setjmp verwendet"

#~ msgid "%Jfunction '%F' can never be inlined because it uses variable argument lists"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie eine variable Argumentliste verwendet"

#~ msgid "%Jfunction '%F' can never be inlined because it uses setjmp-longjmp exception handling"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie »setjmp-longjmp«-Ausnahmebehandlung verwendet"

#~ msgid "%Jfunction '%F' can never be inlined because it contains a nested function"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie eine geschachtelte Funktion enthält"

#~ msgid "%Jfunction '%F' can never be inlined because it contains a computed goto"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie ein berechnetes »goto« enthält"

#~ msgid "%Jfunction '%F' can never be inlined because it contains a nonlocal goto"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie ein nichtlokales »goto« enthält"

#~ msgid "%Jfunction '%F' can never be inlined because it uses variable sized variables"
#~ msgstr "%Jdie Funktion »%F« kann nie »inline« sein, da sie Variablen variabler Größe verwendet"

#~ msgid "%Jinlining failed in call to '%F': %s"
#~ msgstr "%J»inline« beim Aufruf von »%F« gescheitert: %s"

#~ msgid "%Jsize of return value of '%D' is %u bytes"
#~ msgstr "%JGröße des Rückgabewertes von »%D« ist %u Bytes"

#~ msgid "%Jsize of return value of '%D' is larger than %wd bytes"
#~ msgstr "%JGröße des Rückgabewertes von »%D« ist größer als %wd Bytes"

#~ msgid "arrays of functions are not meaningful"
#~ msgstr "Felder von Funktionen sind sinnlos"

#~ msgid "function return type cannot be function"
#~ msgstr "Rückgabetyp der Funktion kann keine Funktion sein"

#~ msgid "invalid initializer for bit string"
#~ msgstr "ungültige Initialisierung für Bitstring"

#~ msgid "tree check: expected %s, have %s in %s, at %s:%d"
#~ msgstr "Baumprüfung: %s erwartet, haben %s in %s, bei %s:%d"

#~ msgid "tree check: expected class '%c', have '%c' (%s) in %s, at %s:%d"
#~ msgstr "Baumprüfung: Klasse %c erwartet, haben '%c' (%s) in %s, bei %s:%d"

#~ msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
#~ msgstr "Baumprüfung: auf Elt %d von tree_vec mit %d Elts in %s bei %s:%d zugegriffen"

#~ msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
#~ msgstr "Baumprüfung: auf Operand %d von %s mit %d Operanden in %s bei %s:%d zugegriffen"

#~ msgid "%J%D causes a section type conflict"
#~ msgstr "%J%D löst einen Abschnittstypkonflikt aus"

#~ msgid "%Jregister name not specified for '%D'"
#~ msgstr "%Jfür »%D« wurde kein Registername angegeben"

#~ msgid "%Jinvalid register name for '%D'"
#~ msgstr "%Jungültiger Registername für »%D«"

#~ msgid "%Jdata type of '%D' isn't suitable for a register"
#~ msgstr "%JDatentyp von »%D« eignet sich nicht für Register"

#~ msgid "%Jregister specified for '%D' isn't suitable for data type"
#~ msgstr "%Jfür »%D« angegebenes Register eignet sich nicht für Datentyp"

#~ msgid "global register variable has initial value"
#~ msgstr "globle Registervariable hat Anfangswert"

#~ msgid "volatile register variables don't work as you might wish"
#~ msgstr "»volatile«-Registervariablen funktionieren oft nicht so wie erhofft"

#~ msgid "%Jregister name given for non-register variable '%D'"
#~ msgstr "%JRegistername für Nicht-Registervariable »%D« verwendet"

#~ msgid "%Jstorage size of `%D' isn't known"
#~ msgstr "%JSpeichergröße von »%D« ist unbekannt"

#~ msgid "%Jalignment of '%D' is greater than maximum object file alignment.  Using %d"
#~ msgstr "%JAusrichtung von »%D ist größer als maximale Objektdateiausrichtung. %d verwendet«"

#~ msgid "thread-local COMMON data not implemented"
#~ msgstr "Thread-lokale COMMON-Daten nicht implementiert"

#~ msgid "%Jrequested alignment for '%D' is greater than implemented alignment of %d"
#~ msgstr "%Jangeforderte Ausrichtung für »%D« ist größer als die implementierte Ausrichtung von %d"

#~ msgid "initializer for integer value is too complicated"
#~ msgstr "Initialisierung für Ganzzahlwert ist zu kompliziert"

#~ msgid "initializer for floating value is not a floating constant"
#~ msgstr "Initialisierung für Gleitkommawert ist keine Gleitkommakonstante"

#~ msgid "unknown set constructor type"
#~ msgstr "unbekannter Mengenkonstruktortyp"

#~ msgid "invalid initial value for member `%s'"
#~ msgstr "ungültiger Anfangswert für Element »%s«"

#~ msgid "%Jweak declaration of '%D' must precede definition"
#~ msgstr "%Jschwache Deklaration von »%D« muss der Definition vorangehen"

#~ msgid "%Jweak declaration of '%D' after first use results in unspecified behavior"
#~ msgstr "%Jschwache Deklaration von »%D« nach erster Benutzung führt zu undefiniertem Verhalten"

#~ msgid "%Jweak declaration of '%D' must be public"
#~ msgstr "%Jschwache Deklaration von »%D« muss öffentlich sein"

#~ msgid "%Jweak declaration of '%D' not supported"
#~ msgstr "%Jschwache Deklaration von »%D« wird nicht unterstützt"

#~ msgid "only weak aliases are supported in this configuration"
#~ msgstr "in dieser Konfiguration werden nur schwache Aliase unterstützt"

#~ msgid "alias definitions not supported in this configuration; ignored"
#~ msgstr "Alias-Definitionen werden in dieser Konfiguration nicht unterstützt; ignoriert"

#~ msgid "visibility attribute not supported in this configuration; ignored"
#~ msgstr "Sichtbarkeitsattribute werden in dieser Konfiguration nicht unterstützt; ignoriert"

#~ msgid "virtual array %s[%lu]: element %lu out of bounds in %s, at %s:%d"
#~ msgstr "virtuelles Feld %s[%lu]: Element %lu außerhalb der Grenzen in %s, bei %s:%d"

#~ msgid "underflowed virtual array %s in %s, at %s:%d"
#~ msgstr "Unterlauf im virtuellen Feld %s in %s bei %s:%d"

#~ msgid "no sclass for %s stab (0x%x)\n"
#~ msgstr "kein »sclass« für %s Stab (0x%x)\n"

#~ msgid "fatal error: "
#~ msgstr "schwerwiegender Fehler: "

#~ msgid "internal compiler error: "
#~ msgstr "interner Compiler-Fehler: "

#~ msgid "sorry, unimplemented: "
#~ msgstr "nicht implementiert: "

#~ msgid "anachronism: "
#~ msgstr "Anachronismus: "

#~ msgid "note: "
#~ msgstr "Anmerkung: "

#~ msgid "debug: "
#~ msgstr "zur Fehlersuche: "

#~ msgid "The maximum number of instructions in a single function eligible for inlining"
#~ msgstr "Die Höchstzahl der Anweisungen in einer einzelnen für »inline« geeigneten Funktion"

#~ msgid "The maximum number of instructions when automatically inlining"
#~ msgstr "Die Höchstzahl der Anweisungen für automatisches »inline«"

#~ msgid "The maximum number of instructions for the RTL inliner"
#~ msgstr "Die Höchstzahl der Anweisungen für RTL »inline«"

#~ msgid "The maximum number of instructions to consider to fill a delay slot"
#~ msgstr "Die Höchstzahl der zu betrachtenden Anweisungen um Verzögerungsschlitz zu füllen"

#~ msgid "The maximum number of instructions to consider to find accurate live register information"
#~ msgstr "Die Höchstzahl der zu betrachtenden Anweisungen um richtige aktive Registerinformationen zu finden"

#~ msgid "The maximum length of scheduling's pending operations list"
#~ msgstr "Die Maximallänge der Liste der anhängigen geplanten Operationen"

#~ msgid "The size of function body to be considered large"
#~ msgstr "Die Größe eines als groß angesehenen Funktionskörpers"

#~ msgid "Maximal growth due to inlining of large function (in percent)"
#~ msgstr "Maximales Wachstum durch »inline« einer großen Funktion (in Prozent)"

#~ msgid "how much can given compilation unit grow because of the inlining (in percent)"
#~ msgstr "um wie viel eine Übersetzungseinheit durch »inline« wachsen kann (in Prozent)"

#~ msgid "The maximum amount of memory to be allocated by GCSE"
#~ msgstr "Maximalbetrag des von GCSE zu belegenden Speichers"

#~ msgid "The maximum number of passes to make when doing GCSE"
#~ msgstr "Die Höchstzahl der Durchläufe für GCSE"

#~ msgid "The maximum number of instructions to consider to unroll in a loop"
#~ msgstr "Die Höchstzahl der zum Aufrollen von Schleifen zu betrachtenden Anweisungen"

#~ msgid "The maximum number of instructions to consider to unroll in a loop on average"
#~ msgstr "Die Höchstzahl der zum Aufrollen von Schleifen im Mittel zu betrachtenden Anweisungen"

#~ msgid "The maximum number of unrollings of a single loop"
#~ msgstr "Die Höchstzahl der Iterationen zum Aufrollen in einzelner Schleife"

#~ msgid "The maximum number of insns of a peeled loop"
#~ msgstr "Die Höchstzahl der insns einer geschälten Schleife"

#~ msgid "The maximum number of peelings of a single loop"
#~ msgstr "Die Höchstzahl der Schälvorgänge einer einzelnen Schleife"

#~ msgid "The maximum number of insns of a completely peeled loop"
#~ msgstr "Die Höchstzahl der insns einer vollständig geschälten Schleife"

#~ msgid "The maximum number of peelings of a single loop that is peeled completely"
#~ msgstr "Die Höchstzahl der Schälvorgänge einer einzelnen Schleife, die vollständig geschält wird"

#~ msgid "The maximum number of insns of a peeled loop that rolls only once"
#~ msgstr "Die Höchstzahl der insns einer geschälten Schleife, die nur einmal rollt"

#~ msgid "`%s' incompatible attribute ignored"
#~ msgstr "»%s«-inkompatibles Attribut wird ignoriert"

#~ msgid "%Jfunction `%D' definition is marked dllimport."
#~ msgstr "%JFunktionsdefinition von »%D« ist als »dllimport« markiert"

#~ msgid "%Jinline function '%D' is declared as dllimport: attribute ignored."
#~ msgstr "%J»inline«-Funktion »%D« ist als »dllimport« deklariert: Attribute ignoriert."

#~ msgid "ms-bitfields not supported for objc"
#~ msgstr "ms-Bitfelder nicht unterstützt für objc"

#~ msgid "%Jan address area attribute cannot be specified for local variables"
#~ msgstr "%Jfür lokale Variablen kann kein Adressabschnittsattribut angegeben werden"

#~ msgid "%Jaddress area of '%s' conflicts with previous declaration"
#~ msgstr "%JAdressabschnitt von »%s« in Konflikt mit vorheriger Deklaration"

#~ msgid "%Jaddress area attribute cannot be specified for functions"
#~ msgstr "%JAdressabschnittsattribut kann nicht für Funktionen angegeben werden"

#~ msgid "The compiler does not support -march=%s."
#~ msgstr "Der Compiler unterstützt nicht -march=%s."

#~ msgid "argument `%d' is not a constant"
#~ msgstr "Argument »%d« ist keine Konstante"

#~ msgid "`trap' attribute is already used"
#~ msgstr "»trap«-Attribut wird bereits verwendet"

#~ msgid "cannot specify both -msep-data and -mid-shared-library"
#~ msgstr "-msep-data und -mid-shared-library können nicht zusammen angegeben werden"

#~ msgid "Generate code for a 68040, without any new instructions"
#~ msgstr "Code für einen 68040 ohne neue Befehle erzeugen"

#~ msgid "Generate code for a 68060, without any new instructions"
#~ msgstr "Code für einen 68060 ohne neue Befehle erzeugen"

#~ msgid "Generate code for a 68030"
#~ msgstr "Code für einen 68030 erzeugen"

#~ msgid "Generate code for a 68040"
#~ msgstr "Code für einen 68040 erzeugen"

#~ msgid "Generate code for a 68060"
#~ msgstr "Code für einen 68060 erzeugen"

#~ msgid "Generate code for a 520X"
#~ msgstr "Code für einen 520X erzeugen"

#~ msgid "Generate code for a 5206e"
#~ msgstr "Code für einen 5206e erzeugen"

#~ msgid "Generate code for a 528x"
#~ msgstr "Code für einen 528x erzeugen"

#~ msgid "Generate code for a 5307"
#~ msgstr "Code für einen 5307 erzeugen"

#~ msgid "Generate code for a 5407"
#~ msgstr "Code für einen 5407 erzeugen"

#~ msgid "Generate code for a 68851"
#~ msgstr "Code für einen 68851 erzeugen"

#~ msgid "Do no generate code for a 68851"
#~ msgstr "Code für einen 68851 erzeugen"

#~ msgid "Generate code for a 68302"
#~ msgstr "Code für einen 68302 erzeugen"

#~ msgid "Generate code for a 68332"
#~ msgstr "Code für einen 68332 erzeugen"

#~ msgid "Generate code for a cpu32"
#~ msgstr "Code für eine cpu32 erzeugen"

#~ msgid "can't rewind temp file: %m"
#~ msgstr "temporäre Datei konnte nicht zurückgesetzt werden: %m"

#~ msgid "can't write to output file: %m"
#~ msgstr "in die Ausgabedatei kann nicht geschrieben werden: %m"

#~ msgid "can't read from temp file: %m"
#~ msgstr "von der temporären Datei kann nicht gelesen werden: %m"

#~ msgid "can't close temp file: %m"
#~ msgstr "die temporäre Datei kann nicht geschlossen werden: %m"

#~ msgid "-fpic is not supported; -fPIC assumed"
#~ msgstr "-fpic wird nicht unterstützt; -fPIC angenommen"

#~ msgid "-m%s not supported in this configuration"
#~ msgstr "-m%s wird in dieser Konfiguration nicht unterstützt"

#~ msgid "%Jdata area attributes cannot be specified for local variables"
#~ msgstr "%JDatenabschnittsattribute können nicht für lokale Variablen angegeben werden"

#~ msgid "%Jdata area of '%D' conflicts with previous declaration"
#~ msgstr "%JDatenabschnitt von »%D« in Konflikt mit vorheriger Deklaration"

#~ msgid "invalid %%x value"
#~ msgstr "ungültiger %%x-Wert"

#~ msgid "invalid %%d value"
#~ msgstr "ungültiger %%x-Wert"

#~ msgid "invalid %%t/%%b value"
#~ msgstr "ungültiger %%t/%%b-Wert"

#~ msgid "missing argument to \"-%s\""
#~ msgstr "fehlendes Argument für »-%s«"

#~ msgid "%s for '%s' in '%s %E'"
#~ msgstr "%s vor »%s« in »%s %E«"

#~ msgid "no suitable `operator %s' for `%T'"
#~ msgstr "kein geeigneter »operator %s« für »%T«"

#~ msgid "cannot bind bitfield `%E' to `%T'"
#~ msgstr "das Bitfeld »%E« kann nicht mit »%T« verbunden werden"

#~ msgid "cannot bind packed field `%E' to `%T'"
#~ msgstr "das gepackte Feld »%E« kann nicht mit »%T« verbunden werden"

#~ msgid "cannot bind rvalue `%E' to `%T'"
#~ msgstr "der R-Wert »%E« kann nicht mit »%T« verbunden werden"

#~ msgid "%s has no effect"
#~ msgstr "%s hat keinen Effekt"

#~ msgid "%Jfunction '%D' redeclared as inline"
#~ msgstr "%JFunktion »%D« als inline redeklariert"

#~ msgid "%Jprevious declaration of '%D' with attribute noinline"
#~ msgstr "%Jvorherige Deklaration von »%D« mit Attribut noinline"

#~ msgid "%Jfunction '%D' redeclared with attribute noinline"
#~ msgstr "%JFunktion »%D« redeklariert mit Attribut noinline"

#~ msgid "%Jprevious declaration of '%D' was inline"
#~ msgstr "%Jvorherige Deklaration von »%D« war inline"

#~ msgid "conflicting declaration '%#D'"
#~ msgstr "in Konflikt stehende Deklaration »%#D«"

#~ msgid "'%D' has a previous declaration as `%#D'"
#~ msgstr "»%D« hat eine vorherige Deklaration als »%#Ds«"

#~ msgid "%Jfollows non-prototype definition here"
#~ msgstr "%Jfolgt Nicht-Prototyp-Definition hier"

#~ msgid "%Jprevious non-inline declaration here"
#~ msgstr "%Jvorherige nicht-inline-Deklaration hier"

#~ msgid "%Jconflicts with previous declaration here"
#~ msgstr "%Jin Konflikt mit vorheriger Deklaration hier"

#~ msgid "%H  from here"
#~ msgstr "%H  von hier"

#~ msgid "too many initializers for `%T'"
#~ msgstr "zu viele Initialisierer für »%T«"

#~ msgid "size of array `%D' has non-integral type `%T'"
#~ msgstr "Feldgröße von »%D« hat Nicht-Ganzzahltyp »%T«"

#~ msgid "size of array has non-integral type `%T'"
#~ msgstr "Feldgröße hat Nicht-Ganzzahltyp »%T«"

#~ msgid "declaration of `%D' as %s"
#~ msgstr "Deklaration von »%D« als %s"

#~ msgid "creating %s"
#~ msgstr "Erzeugen von %s"

#~ msgid "top-level declaration of `%s' specifies `auto'"
#~ msgstr "Deklaration höchster Ebene von »%s« spezifiziert »auto«"

#~ msgid "%Jinvalid type qualifier for non-member function type"
#~ msgstr "%Jungültiger Typkennzeichner für Nicht-Element-Funktionstyp"

#~ msgid "%Jprevious definition here"
#~ msgstr "%Jvorherige Definition hier"

#~ msgid "invalid member function declaration"
#~ msgstr "ungültige Elementfunktionsdeklaration"

#~ msgid "anonymous union with no members"
#~ msgstr "anonymes union ohne Element"

#~ msgid "inline function `%D' used but never defined"
#~ msgstr "inline-Funktion »%D«, aber nirgendwo definiert"

#~ msgid "  when initialized here"
#~ msgstr "  während es hier initialisiert wurde"

#~ msgid "`%#D' is not a non-static data member of `%T'"
#~ msgstr "»%#D« ist kein Nicht-static-Datenelement von »%T«"

#~ msgid "invalid use of non-static member function `%D'"
#~ msgstr "ungültige Verwendung der Nicht-static-Elementfunktion »%D«"

#~ msgid "invalid use of non-static data member `%D'"
#~ msgstr "ungültige Verwendung des Nicht-static-Datenelementes »%D«"

#~ msgid "type mismatch with previous external decl of `%#D'"
#~ msgstr "Typen passen nicht zu vorheriger externer Deklaration von »%#D«"

#~ msgid "%s %s %p %d\n"
#~ msgstr "%s %s %p %d\n"

#~ msgid "`%D' attribute directive ignored"
#~ msgstr "Attribut-Anweisung »%D« wird ignoriert"

#~ msgid "invalid token"
#~ msgstr "ungültiges Token"

#~ msgid "`%D::%D' has not been declared"
#~ msgstr "»%D::%D« wurde nicht deklariert"

#~ msgid "`::%D' has not been declared"
#~ msgstr "»::%D« wurde nicht deklariert"

#~ msgid "`%D' has not been declared"
#~ msgstr "»%D« wurde nicht deklariert"

#~ msgid "`%D' %s"
#~ msgstr "»%D« %s"

#~ msgid "invalid template-id"
#~ msgstr "ungültige Template-ID"

#~ msgid "%s cannot appear in a constant-expression"
#~ msgstr "%s kann nicht in einem Konstanten-Ausdruck auftreten"

#~ msgid "`%s' does not name a type"
#~ msgstr "»%s« bezeichnet keinen Typ"

#~ msgid "statement-expressions are allowed only inside functions"
#~ msgstr "Anweisungs-Ausdrücke sind nur innerhalb von Funktionen erlaubt"

#~ msgid "ISO C++ forbids compound-literals"
#~ msgstr "ISO-C++ verbietet zusammengesetzte Literale"

#~ msgid "duplicate `friend'"
#~ msgstr "doppeltes »friend«"

#~ msgid "attributes are not allowed on a function-definition"
#~ msgstr "bei einer Funktionsdefinition sind keine Attribute erlaubt"

#~ msgid "attributes after parenthesized initializer ignored"
#~ msgstr "Attribute hinter geklammerter Initialisierung werden ignoriert"

#~ msgid "friend declaration does not name a class or function"
#~ msgstr "»friend«-Deklaration benennt keine Klasse oder Funktion"

#~ msgid "invalid function declaration"
#~ msgstr "ungültige Funktionsdeklaration"

#~ msgid "named return values are no longer supported"
#~ msgstr "benannte Rückgabewerte werden nicht mehr unterstützt"

#~ msgid "%D redeclared with different access"
#~ msgstr "%D mit anderem Zugriff redeklariert"

#~ msgid "destructor `%D' declared as member template"
#~ msgstr "Destruktor »%D« als Element-Template deklariert"

#~ msgid "%J  original definition appeared here"
#~ msgstr "%J  ursprüngliche Definition trat hier auf"

#~ msgid "`%T' uses anonymous type"
#~ msgstr "»%T« verwendet anonymen Typen"

#~ msgid "`%T' uses local type `%T'"
#~ msgstr "»%T« verwendet lokalen Typen »%T«"

#~ msgid "integral expression `%E' is not constant"
#~ msgstr "Integralausdruck »%E« ist nicht konstant"

#~ msgid "object missing in reference to `%D'"
#~ msgstr "Objekt fehlt in Referenz auf »%D«"

#~ msgid "`%D' is not a member of `%D'"
#~ msgstr "»%D« ist kein Element von »%D«"

#~ msgid "`%D' cannot appear in a constant-expression"
#~ msgstr "»%D« kann nicht in Konstanten-Ausdruck auftreten"

#~ msgid "%s between distinct pointer-to-member types `%T' and `%T' lacks a cast"
#~ msgstr "%s zwischen verschiedenen Zeiger-auf-Element-Typen »%T« und »%T« fehlt eine Typkonvertierung"

#~ msgid "invalid application of `%s' to a bit-field"
#~ msgstr "ungültige Anwendung von »%s« auf ein Bitfeld"

#~ msgid "ISO C++ forbids applying `%s' to an expression of function type"
#~ msgstr "ISO-C++ verbietet Anwendung von »%s« auf einen Ausdruck mit Funktionstyp"

#~ msgid "invalid use of non-static member function"
#~ msgstr "falsche Benutzung einer nicht-statischen Elementfunktion"

#~ msgid "invalid use of nonstatic data member '%E'"
#~ msgstr "ungültige Benutzung des nicht-statischen Datenelements »%E«"

#~ msgid "parameter %P of `%D' has incomplete type `%T'"
#~ msgstr "Parameter %P von »%D« hat unvollständigen Typen »%T«"

#~ msgid "parameter %P has incomplete type `%T'"
#~ msgstr "Parameter %P hat unvollständigen Typen »%T«"

#~ msgid "%s expression list treated as compound expression"
#~ msgstr "%s Ausdrucksliste als zusammengesetzten Ausdruck behandelt"

#~ msgid "pointer to member cast via virtual base `%T'"
#~ msgstr "Typumwandlung von Zeiger in Element über virtuelle Basis »%T«"

#~ msgid "pointer to member conversion via virtual base `%T'"
#~ msgstr "Konvertierung von Zeiger in Element über virtuelle Basis »%T«"

#~ msgid "return-statement with no value, in function returning '%T'"
#~ msgstr "Return-Anweisung ohne Wert, in »%T« zurückgebender Funktion"

#~ msgid "return-statement with a value, in function returning 'void'"
#~ msgstr "Return-Anweisung mit Wert in »void« zurückgebender Funktion"

#~ msgid "Please keep this in mind before you report bugs."
#~ msgstr "Bitte bedenken Sie dies, wenn Sie einen Fehlerbericht einsenden."

#~ msgid "%Jfinal field '%D' may not have been initialized"
#~ msgstr "%Jletztes Feld »%D« könnte nicht initialisiert worden sein"

#~ msgid "%J'%D' used prior to declaration"
#~ msgstr "%J»%D« bereits vor Deklaration benutzt"

#~ msgid "declaration of `%s' shadows a parameter"
#~ msgstr "Deklaration von »%s« überdeckt einen Parameter"

#~ msgid "declaration of `%s' shadows a symbol from the parameter list"
#~ msgstr "Deklaration von »%s« überdeckt ein Symbol aus der Parameterliste"

#~ msgid "%Jlabel '%D' used but not defined"
#~ msgstr "%JMarke »%D« verwendet, aber nicht definiert"

#~ msgid "%Jlabel '%D' defined but not used"
#~ msgstr "%JMarke »%D« definiert, aber nicht verwendet"

#~ msgid "can't reopen %s: %m"
#~ msgstr "Es ist nicht möglich, »%s« erneut zu öffnen: %m"

#~ msgid "can't close %s: %m"
#~ msgstr "Es ist nicht möglich, »%s« zu schließen: %m"

#~ msgid "can't close input file %s: %m"
#~ msgstr "die Eingabedatei »%s« kann nicht geschlossen werden: %m"

#~ msgid "can't create directory %s: %m"
#~ msgstr "das Verzeichnis %s kann nicht erzeugt werden: %m"

#~ msgid "can't create %s: %m"
#~ msgstr "Es ist nicht möglich, %s zu erzeugen: %m"

#~ msgid "`%s' is not a valid class name"
#~ msgstr "»%s« ist kein gültiger Klassenname"

#~ msgid "--resource requires -o"
#~ msgstr "--resource erfordert -o"

#~ msgid "cannot specify both -C and -o"
#~ msgstr "-C und -o können nicht zusammen angegeben werden"

#~ msgid "cannot create temporary file"
#~ msgstr "temporäre Datei konnte nicht angelegt werden"

#~ msgid "interface `%s' does not have valid constant string layout"
#~ msgstr "die Schnittstelle »%s« hat nicht die Form einer konstanten Zeichenkette"

#~ msgid "`%s' is not an Objective-C class name or alias"
#~ msgstr "»%s« ist kein Klassenname oder Alias in Objective-C"

#~ msgid "`%s' redeclared as different kind of symbol"
#~ msgstr "»%s« redeklariert als andere Symbolart"

#~ msgid "%J%s `%s'"
#~ msgstr "%J%s: »%s«"

#~ msgid "multiple %s named `%c%s' found"
#~ msgstr "mehrere %s namens »%c%s« gefunden"

#~ msgid "no super class declared in @interface for `%s'"
#~ msgstr "keine Superklasse im @interface für »%s« deklariert"

#~ msgid "`%s' may not respond to `%c%s'"
#~ msgstr "»%s« antwortet möglicherweise nicht auf »%c%s«"

#~ msgid "`%c%s' not implemented by protocol(s)"
#~ msgstr "»%c%s« nicht von Protokoll(en) implementiert"

#~ msgid "`...' as arguments.)"
#~ msgstr "»...« als Argumente.)"

#~ msgid "duplicate declaration of method `%c%s'"
#~ msgstr "doppelte Deklaration der Methode »%c%s«"

#~ msgid "illegal reference type specified for instance variable `%s'"
#~ msgstr "unzulässiger Referenztyp für Instanzvariable »%s« angegeben"

#~ msgid "instance variable `%s' has unknown size"
#~ msgstr "Instanzvariable »%s« hat unbekannte Größe"

#~ msgid "type `%s' has virtual member functions"
#~ msgstr "der Typ »%s« hat virtuelle Elementfunktionen"

#~ msgid "illegal aggregate type `%s' specified for instance variable `%s'"
#~ msgstr "unzulässiger Aggregattyp »%s« für Instanzvariable »%s« angegeben"

#~ msgid "%s `%s' does not fully implement the `%s' protocol"
#~ msgstr "%s »%s« implementiert das »%s«-Protokoll nicht vollständig"

#~ msgid "previous declaration of `%s'"
#~ msgstr "vorherige Deklaration von »%s«"

#~ msgid "Display this information"
#~ msgstr "Diese Informationen anzeigen"

#~ msgid "Do not discard comments"
#~ msgstr "Kommentare nicht verwerfen"

#~ msgid "Warn about subscripts whose type is \"char\""
#~ msgstr "Vor Indizes mit Typ \"char\" warnen"

#~ msgid "Make implicit function declarations an error"
#~ msgstr "Fehler bei impliziten Funktionsdeklaration erzeugen"

#~ msgid "Warn if passing too many arguments to a function for its format string"
#~ msgstr "Bei zu vielen Argumenten für eine Funktion (anhand Formatzeichenkette) warnen"

#~ msgid "Warn about suspicious declarations of \"main\""
#~ msgstr "Vor verdächtigen Deklarationen von \"main\" warnen"

#~ msgid "Warn about global functions without previous declarations"
#~ msgstr "Vor globalen Funktionen ohne vorherige Deklaration warnen"

#~ msgid "Warn about functions which might be candidates for __attribute__((noreturn))"
#~ msgstr "Vor Funktionen, die Kandidaten für __attribute__((noreturn)) sind, warnen"

#~ msgid "Warn about use of multi-character character constants"
#~ msgstr "Bei Verwendung von Zeichenkonstanten mit mehreren Zeichen warnen"

#~ msgid "Warn about \"extern\" declarations not at file scope"
#~ msgstr "Vor \"extern\"-Deklarationen außerhalb des Dateisichtbarkeitsbereiches warnen"

#~ msgid "Warn about code which might break strict aliasing rules"
#~ msgstr "Vor Code warnen, der strict-aliasing-Regeln verletzen könnte"

#~ msgid "Warn about unprototyped function declarations"
#~ msgstr "Vor Funktionsdeklarationen ohne Prototyp warnen"

#~ msgid "Warn about features not present in traditional C"
#~ msgstr "Vor Sprachmerkmalen, die in traditionellem C nicht verfügbar sind, warnen"

#~ msgid "Recognize built-in functions"
#~ msgstr "Eingebaute Funktionen erkennen"

#~ msgid "Preserve case used in program"
#~ msgstr "Im Programm verwendete Groß-/Kleinschreibung beibehalten"

#~ msgid "Inline member functions by default"
#~ msgstr "Standardmäßig »inline«-Elementfunktionen"

#~ msgid "Permit '$' as an identifier character"
#~ msgstr "'$' als Bezeichnerzeichen zulassen"

#~ msgid "Generate code to check exception specifications"
#~ msgstr "Code zur Überprüfung von Exception-Spezifikationen erzeugen"

#~ msgid "Place each function into its own section"
#~ msgstr "Jede Funktion in ihren eigenen Abschnitt platzieren"

#~ msgid "Generate code for GNU runtime environment"
#~ msgstr "Code für die GNU-Laufzeitumgebung erzeugen"

#~ msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
#~ msgstr "Code für die NeXT (Apple Mac OS X) Laufzeitumgebung erzeugen"

#~ msgid "Convert floating point constants to single precision constants"
#~ msgstr "Fließkommakonstanten in Konstanten einfacher Genauigkeit konvertieren"

#~ msgid "Print internal debugging-related information"
#~ msgstr "Interne Testinformationen ausgeben"

#~ msgid "Dump declarations to a .decl file"
#~ msgstr "Deklaration in .decl-Datei ausgeben"

#~ msgid "-o <file>\tPlace output into <file>"
#~ msgstr "-o <Datei>\tAusgabe in <Datei> schreiben"

#~ msgid "Generate C header of platform-specific features"
#~ msgstr "C-Header mit Plattform-spezifischen Merkmalen erzeugen"

#~ msgid "Remap file names when including files"
#~ msgstr "Dateinamen beim Einfügen von Dateien neu abbilden"

#~ msgid "GCC does not support -C or -CC without -E"
#~ msgstr "GCC unterstützt nicht -C oder -CC ohne -E"

#~ msgid "-pipe is not supported"
#~ msgstr "-pipe wird nicht unterstützt"

#~ msgid "-keep_private_externs not allowed with -dynamiclib"
#~ msgstr "-keep_private_externs ist mit -dynamiclib nicht erlaubt"

#~ msgid "-private_bundle not allowed with -dynamiclib"
#~ msgstr "-private_bundle ist mit -dynamiclib nicht erlaubt"

#~ msgid "-pg not supported on this platform"
#~ msgstr "-pg wird auf dieser Plattform nicht unterstützt"

#~ msgid "GCC does not support -C without using -E"
#~ msgstr "GCC unterstützt nicht -C ohne -E"

#~ msgid "GCC does not support -CC without using -E"
#~ msgstr "GCC unterstützt nicht -CC ohne -E"

#~ msgid "`-p' not supported; use `-pg' and gprof(1)"
#~ msgstr "»-p« wird nicht unterstützt; verwenden Sie »-pg« und gprof(1)"

#~ msgid "may not use both -m32 and -m64"
#~ msgstr "-m32 und -m64 können nicht zusammen angegeben werden"

#~ msgid "profiling not supported with -mg\n"
#~ msgstr "Profiling wird mit -mg nicht unterstützt\n"

#~ msgid "does not support multilib"
#~ msgstr "unterstützt nicht multilib"

#~ msgid "concatenation of string literals with __FUNCTION__ is deprecated"
#~ msgstr "Verkettung von Zeichenkettenliteralen mit __FUNCTION__ ist veraltet"

#~ msgid "ISO C++ forbids range expressions in switch statements"
#~ msgstr "ISO-C++ verbietet Wertebereichsausdrücke in switch-Anweisungen"

#~ msgid "ISO C++ forbids taking the address of a label"
#~ msgstr "ISO-C++ verbietet die Adresse einer Marke"

#~ msgid "declaration of `%s' shadows %s"
#~ msgstr "Deklaration von »%s« verdeckt %s"

#~ msgid "`struct %s' incomplete in scope ending here"
#~ msgstr "»struct %s« im Gültigkeitsbereich, der hier endet, unvollständig"

#~ msgid "`union %s' incomplete in scope ending here"
#~ msgstr "»union %s« im Gültigkeitsbereich, der hier endet, unvollständig"

#~ msgid "`enum %s' incomplete in scope ending here"
#~ msgstr "»enum %s« im Gültigkeitsbereich, der hier endet, unvollständig"

#~ msgid "shadowing library function `%s'"
#~ msgstr "Bibliotheksfunktion »%s« überdeckt"

#~ msgid "library function `%s' declared as non-function"
#~ msgstr "Bibliotheksfunktion »%s« als Nicht-Funktion deklariert"

#~ msgid "redeclaration of `%s'"
#~ msgstr "Redeklaration von »%s«"

#~ msgid "prototype for `%s' follows and number of arguments doesn't match"
#~ msgstr "Prototyp für »%s« folgt und Anzahl der Argumente passt nicht"

#~ msgid "prototype for `%s' follows and argument %d doesn't match"
#~ msgstr "Prototyp für »%s« folgt und Argument %d passt nicht"

#~ msgid "type qualifiers for `%s' conflict with previous decl"
#~ msgstr "Typ-Kennzeichner für »%s« stehen in Konflikt mit vorheriger Deklaration"

#~ msgid "a parameter"
#~ msgstr "ein Parameter"

#~ msgid "a previous local"
#~ msgstr "ein vorheriges »local«"

#~ msgid "a global declaration"
#~ msgstr "eine globale Deklaration"

#~ msgid "`%s' was declared implicitly `extern' and later `static'"
#~ msgstr "»%s« wurde implizit als »extern« und später als »static« deklariert"

#~ msgid "previous external decl of `%s'"
#~ msgstr "vorherige externe Deklaration von »%s«"

#~ msgid "type mismatch with previous implicit declaration"
#~ msgstr "Typen passen nicht zu vorheriger impliziter Deklaration"

#~ msgid "`%s' was previously implicitly declared to return `int'"
#~ msgstr "»%s« wurde bereits implizit deklariert, »int« zurückzugeben"

#~ msgid "`%s' was declared `extern' and later `static'"
#~ msgstr "»%s« wurde »extern« deklariert und später »static«"

#~ msgid "`%s' locally external but globally static"
#~ msgstr "»%s« ist lokal extern, aber global »static«"

#~ msgid "function `%s' was previously declared within a block"
#~ msgstr "Funktion »%s« wurde bereits innerhalb eines Blockes deklariert"

#~ msgid "declaration of `%s' has `extern' and is initialized"
#~ msgstr "Deklaration von »%s« hat »extern« und ist initialisiert"

#~ msgid "ISO C forbids parameter `%s' shadowing typedef"
#~ msgstr "ISO-C verbietet typedef verdeckenden Parameter »%s«"

#~ msgid "parameter `%s' points to incomplete type"
#~ msgstr "Parameter »%s« zeigt auf unvollständigen Typen"

#~ msgid "parameter points to incomplete type"
#~ msgstr "Parameter zeigt auf unvollständigen Typen"

#~ msgid "`void' in parameter list must be the entire list"
#~ msgstr "»void« in Parameterliste muss die gesamte Liste sein"

#~ msgid "`union %s' declared inside parameter list"
#~ msgstr "»union %s« innerhalb Parameterliste deklariert"

#~ msgid "`enum %s' declared inside parameter list"
#~ msgstr "»enum %s« innerhalb Parameterliste deklariert"

#~ msgid "anonymous enum declared inside parameter list"
#~ msgstr "anonymes »enum« innerhalb Parameterliste deklariert"

#~ msgid "bit-field `%s' type invalid in ISO C"
#~ msgstr "Typ des Bitfeldes »%s« ist ungültig in ISO-C"

#~ msgid "parm types given both in parmlist and separately"
#~ msgstr "Parametertypen sowohl in Parameterliste als auch separat angegeben"

#~ msgid "universal-character-name '\\u%04x' not valid in identifier"
#~ msgstr "universeller Zeichenname »\\u%04x« nicht gültig in Bezeichner"

#~ msgid "ignoring invalid multibyte character"
#~ msgstr "ungültiges Multibyte-Zeichen wird ignoriert"

#~ msgid "options array incorrectly sorted: %s is before %s"
#~ msgstr "Optionenliste falsch sortiert: %s kommt vor %s"

#~ msgid "-Wno-strict-prototypes is not supported in C++"
#~ msgstr "-Wno-strict-prototypes wird in C++ nicht unterstützt"

#~ msgid ""
#~ "Switches:\n"
#~ "  -include <file>           Include the contents of <file> before other files\n"
#~ "  -imacros <file>           Accept definition of macros in <file>\n"
#~ "  -iprefix <path>           Specify <path> as a prefix for next two options\n"
#~ "  -iwithprefix <dir>        Add <dir> to the end of the system include path\n"
#~ "  -iwithprefixbefore <dir>  Add <dir> to the end of the main include path\n"
#~ "  -isystem <dir>            Add <dir> to the start of the system include path\n"
#~ msgstr ""
#~ "Optionen:\n"
#~ "  -include <Datei>          Inhalt von <Datei> vor anderen Dateien einfügen\n"
#~ "  -imacros <Datei>          die Definition von Makros in <Datei> akzeptieren\n"
#~ "  -iprefix <Pfad>           <Pfad> als Präfix für die nächsten beiden Optionen\n"
#~ "                            angeben\n"
#~ "  -iwithprefix <Verz>       <Verz> zum Ende des System-Einfüge-Pfades\n"
#~ "                            hinzufügen\n"
#~ "  -iwithprefixbefore <Verz> <Verz> zum das Ende des Haupt-Einfüge-Pfades\n"
#~ "                            hinzufügen\n"
#~ "  -isystem <Verz>           <Verz> zum Anfang des System-Einfüge-Pfades\n"
#~ "                            hinzufügen\n"

#~ msgid ""
#~ "  -idirafter <dir>          Add <dir> to the end of the system include path\n"
#~ "  -I <dir>                  Add <dir> to the end of the main include path\n"
#~ "  -I-                       Fine-grained include path control; see info docs\n"
#~ "  -nostdinc                 Do not search system include directories\n"
#~ "                             (dirs specified with -isystem will still be used)\n"
#~ "  -nostdinc++               Do not search system include directories for C++\n"
#~ "  -o <file>                 Put output into <file>\n"
#~ msgstr ""
#~ "  -idirafter <Verz>         <Verz> zum Ende des System-Einfüge-Pfades\n"
#~ "                             hinzufügen\n"
#~ "  -I <Verz>                 <Verz> zum Anfang des Haupt-Einfüge-Pfades\n"
#~ "                             hinzufügen\n"
#~ "  -I-                       Feineinstellung des Einfügepfades; siehe info-\n"
#~ "                             Seiten\n"
#~ "  -nostdinc                 keine System-Einfüge-Verzeichnisse durchsuchen\n"
#~ "                             (-isystem Verzeichnisse werden aber verwendet)\n"
#~ "  -nostdinc++               keine System-Einfüge-Verzeichnisse nach C++\n"
#~ "                             durchsuchen\n"
#~ "  -o <Datei>                Ausgabe in <Datei> leiten\n"

#~ msgid ""
#~ "  -trigraphs                Support ISO C trigraphs\n"
#~ "  -std=<std name>           Specify the conformance standard; one of:\n"
#~ "                            gnu89, gnu99, c89, c99, iso9899:1990,\n"
#~ "                            iso9899:199409, iso9899:1999, c++98\n"
#~ "  -w                        Inhibit warning messages\n"
#~ "  -W[no-]trigraphs          Warn if trigraphs are encountered\n"
#~ "  -W[no-]comment{s}         Warn if one comment starts inside another\n"
#~ msgstr ""
#~ "  -trigraphs                ISO-C-»Trigraphs« unterstützen\n"
#~ "  -std=<Name>               Standardkonformität angeben; eines von:\n"
#~ "                             gnu89, gnu99, c89, c99, iso9899:1990,\n"
#~ "                             iso9899:199409, iso9899:1999, c++98\n"
#~ "  -w                        Warnungen unterdrücken\n"
#~ "  -W[no-]trigraphs          Warnungen bei »Trigraphs«\n"
#~ "  -W[no-]comment{s}         Warnungen bei geschachtelten Kommentaren\n"

#~ msgid ""
#~ "  -W[no-]traditional        Warn about features not present in traditional C\n"
#~ "  -W[no-]undef              Warn if an undefined macro is used by #if\n"
#~ "  -W[no-]import             Warn about the use of the #import directive\n"
#~ msgstr ""
#~ "  -W[no-]traditional        Warnungen bei Merkmalen von traditionellem C\n"
#~ "  -W[no-]undef              Warnungen bei Verwendung undefinierter Makros\n"
#~ "                             mit #if\n"
#~ "  -W[no-]import             Warnungen über die Verwendung der Direktive\n"
#~ "                             #import\n"

#~ msgid ""
#~ "  -W[no-]error              Treat all warnings as errors\n"
#~ "  -W[no-]system-headers     Do not suppress warnings from system headers\n"
#~ "  -W[no-]all                Enable most preprocessor warnings\n"
#~ msgstr ""
#~ "  -W[no-]error              alle Warnungen als Fehler behandeln\n"
#~ "  -W[no-]system-headers     keine Warnungen von System-Headern unterdrücken\n"
#~ "  -W[no-]all                die meisten Präprozessorwarnungen einschalten\n"

#~ msgid ""
#~ "  -M                        Generate make dependencies\n"
#~ "  -MM                       As -M, but ignore system header files\n"
#~ "  -MD                       Generate make dependencies and compile\n"
#~ "  -MMD                      As -MD, but ignore system header files\n"
#~ "  -MF <file>                Write dependency output to the given file\n"
#~ "  -MG                       Treat missing header file as generated files\n"
#~ msgstr ""
#~ "  -M                        make-Abhängigkeiten generieren\n"
#~ "  -MM                       wie -M, aber System-Header ignorieren\n"
#~ "  -MD                       make-Abhängigkeiten generieren und kompilieren\n"
#~ "  -MMD                      wie -MD, aber System-Header ignorieren\n"
#~ "  -MF <Datei>               Abhängigkeiten-Ausgabe in die angegebene Datei\n"
#~ "                             schreiben\n"
#~ "  -MG                       fehlende Header-Dateien als generierte Dateien\n"
#~ "                             behandeln\n"

#~ msgid ""
#~ "  -MP\t\t\t    Generate phony targets for all headers\n"
#~ "  -MQ <target>              Add a MAKE-quoted target\n"
#~ "  -MT <target>              Add an unquoted target\n"
#~ msgstr ""
#~ "  -MP\t\t\t    Generiere falsche (phony) Ziele für Header\n"
#~ "  -MQ <Ziel>                MAKE-zitiertes Ziel hinzufügen\n"
#~ "  -MT <Ziel>                ein unzitiertes Ziel hinzufügen\n"

#~ msgid ""
#~ "  -D<macro>                 Define a <macro> with string '1' as its value\n"
#~ "  -D<macro>=<val>           Define a <macro> with <val> as its value\n"
#~ "  -A<question>=<answer>     Assert the <answer> to <question>\n"
#~ "  -A-<question>=<answer>    Disable the <answer> to <question>\n"
#~ "  -U<macro>                 Undefine <macro> \n"
#~ "  -v                        Display the version number\n"
#~ msgstr ""
#~ "  -D<Makro>                 <Makro> mit Wert \"1\" definieren\n"
#~ "  -D<Makro>=<Wert>          <Makro> mit Wert <Wert> definieren\n"
#~ "  -A<Frage>=<Antwort>       die <Antwort> auf <Frage> annehmen\n"
#~ "  -A-<Frage>=<Antwort>      die <Antwort> auf <Frage> abschalten\n"
#~ "  -U<Makro>                 <Makro> löschen\n"
#~ "  -v                        Version anzeigen\n"

#~ msgid ""
#~ "  -H                        Print the name of header files as they are used\n"
#~ "  -C                        Do not discard comments\n"
#~ "  -dM                       Display a list of macro definitions active at end\n"
#~ "  -dD                       Preserve macro definitions in output\n"
#~ "  -dN                       As -dD except that only the names are preserved\n"
#~ "  -dI                       Include #include directives in the output\n"
#~ msgstr ""
#~ "  -H                        Namen von Header-Dateien anzeigen wenn sie\n"
#~ "                             verwendet werden\n"
#~ "  -C                        Kommentare nicht streichen\n"
#~ "  -dM                       am Ende eine Liste von Makrodefinitionen anzeigen\n"
#~ "  -dD                       Makrodefinitionen in der Ausgabe bewahren\n"
#~ "  -dN                       wie -dD nur dass die Namen bewahrt werden\n"
#~ "  -dI                       #include-Anweisungen in die Ausgabe einfügen\n"

#~ msgid ""
#~ "  -f[no-]preprocessed       Treat the input file as already preprocessed\n"
#~ "  -ftabstop=<number>        Distance between tab stops for column reporting\n"
#~ "  -P                        Do not generate #line directives\n"
#~ "  -remap                    Remap file names when including files\n"
#~ "  --help                    Display this information\n"
#~ msgstr ""
#~ "  -f[no-]preprocessed       Eingabedatei als bereits vorverarbeitet behandeln\n"
#~ "  -ftabstop=<Zahl>          Tabulatorenabstand für Spaltenmeldungen\n"
#~ "  -P                        keine #line-Direktiven generieren\n"
#~ "  -remap                    Dateinamen beim Einfügen neu abbilden\n"
#~ "  --help                    diese Information anzeigen\n"

#~ msgid "parse error"
#~ msgstr "Fehler beim Parsen"

#~ msgid "ISO C forbids the address of a cast expression"
#~ msgstr "ISO-C verbietet die Adresse eines cast-Ausdruckes"

#~ msgid "initializer for static variable is not constant"
#~ msgstr "Initialisierer für statische Variable ist nicht konstant"

#~ msgid "initializer for static variable uses complicated arithmetic"
#~ msgstr "Initialisierer für statische Variable verwendet komplizierte Arithmetik"

#~ msgid "aggregate initializer is not constant"
#~ msgstr "Gesamt-Initialisierer ist nicht konstant"

#~ msgid "aggregate initializer uses complicated arithmetic"
#~ msgstr "Gesamt-Initialisierer verwendet komplizierte Arithmetik"

#~ msgid "open %s"
#~ msgstr "öffne %s"

#~ msgid "incompatibilities between object file & expected values"
#~ msgstr "Inkompatibilitäten zwischen Objektdatei und erwarteten Werten"

#~ msgid ""
#~ "\n"
#~ "Processing symbol table #%d, offset = 0x%.8lx, kind = %s\n"
#~ msgstr ""
#~ "\n"
#~ "Verarbeite Symboltabelle #%d, Versatz = 0x%.8lx, Art = %s\n"

#~ msgid "string section missing"
#~ msgstr "Zeichenkettenabschnitt fehlt"

#~ msgid "section pointer missing"
#~ msgstr "Abschnittszeiger fehlt"

#~ msgid "no symbol table found"
#~ msgstr "keine Symboltabelle gefunden"

#~ msgid ""
#~ "\n"
#~ "Updating header and load commands.\n"
#~ "\n"
#~ msgstr ""
#~ "\n"
#~ "Aktualisiere Kopf und lokale Befehle.\n"
#~ "\n"

#~ msgid "load command map, %d cmds, new size %ld.\n"
#~ msgstr "lade Befehlstabelle, %d Befehle, neue Größe: %ld.\n"

#~ msgid ""
#~ "writing load commands.\n"
#~ "\n"
#~ msgstr ""
#~ "schreibe Ladebefehle.\n"
#~ "\n"

#~ msgid "close %s"
#~ msgstr "schließe %s"

#~ msgid "could not convert 0x%l.8x into a region"
#~ msgstr "konnte 0x%l.8x nicht in eine Region konvertieren"

#~ msgid "%s function, region %d, offset = %ld (0x%.8lx)\n"
#~ msgstr "Funktion %s, Region %d, Versatz = %ld (0x%.8lx)\n"

#~ msgid "bad magic number"
#~ msgstr "falsche magische Zahl"

#~ msgid "bad header version"
#~ msgstr "falsche Kopf-Version"

#~ msgid "bad raw header version"
#~ msgstr "falsche Version des Original-Kopfes"

#~ msgid "raw header buffer too small"
#~ msgstr "Original-Kopf-Puffer zu klein"

#~ msgid "old raw header file"
#~ msgstr "alte Original-Kopf-Datei"

#~ msgid "unsupported version"
#~ msgstr "nicht unterstützte Version"

#~ msgid "unknown {de,en}code_mach_o_hdr return value %d"
#~ msgstr "unbekannter Rückgabewert %d für {de,en}code_mach_o_hdr"

#~ msgid "fstat %s"
#~ msgstr "fstat %s"

#~ msgid "lseek %s 0"
#~ msgstr "lseek %s 0"

#~ msgid "read %s"
#~ msgstr "Lese %s"

#~ msgid "read %ld bytes, expected %ld, from %s"
#~ msgstr "%ld Bytes gelesen, %ld erwartet, von %s"

#~ msgid "msync %s"
#~ msgstr "msync %s"

#~ msgid "munmap %s"
#~ msgstr "munmap %s"

#~ msgid "write %s"
#~ msgstr "schreibe %s"

#~ msgid "wrote %ld bytes, expected %ld, to %s"
#~ msgstr "%ld Bytes geschrieben, %ld erwartet, nach %s"

#~ msgid "ISO C++ does not permit \"%s\" in #if"
#~ msgstr "ISO-C++ lässt nicht »%s« in #if zu"

#~ msgid "invalid character '%c' in #if"
#~ msgstr "ungültiges Zeichen '%c' in #if"

#~ msgid "invalid character '\\%03o' in #if"
#~ msgstr "ungültiges Zeichen '\\%03o' in #if"

#~ msgid "absolute file name in remap_filename"
#~ msgstr "absoluter Dateiname in remap_filename"

#~ msgid "%s: Not a directory"
#~ msgstr "%s: Kein Verzeichnis"

#~ msgid "directory name missing after %s"
#~ msgstr "Verzeichnisname fehlt hinter %s"

#~ msgid "file name missing after %s"
#~ msgstr "Dateiname fehlt hinter %s"

#~ msgid "path name missing after %s"
#~ msgstr "Pfadname fehlt hinter %s"

#~ msgid "unknown string token %s\n"
#~ msgstr "Unbekanntes Zeichenketten-Token %s\n"

#~ msgid "non-hex digit '%c' in universal-character-name"
#~ msgstr "Nicht-Hex-Ziffer '%c' in Universal-Zeichen-Name"

#~ msgid "universal-character-name on EBCDIC target"
#~ msgstr "Universal-Zeichen-Name auf EBCDIC Ziel"

#~ msgid "universal-character-name out of range"
#~ msgstr "Universal-Zeichen-Name außerhalb des Wertebereiches"

#~ msgid "escape sequence out of range for its type"
#~ msgstr "Fluchtsequenz außerhalb des Wertebereiches seines Typs"

#~ msgid "#import is obsolete, use an #ifndef wrapper in the header file"
#~ msgstr "#import ist veraltet, benutzen Sie einen #ifndef-Wrapper in der Header-Datei"

#~ msgid "#pragma once is obsolete"
#~ msgstr "#pragma once ist veraltet"

#~ msgid "%s: warnings being treated as errors\n"
#~ msgstr "%s: Warnungen als Fehler behandelt\n"

#~ msgid "At top level:"
#~ msgstr "Auf höchster Ebene:"

#~ msgid "In function `%s':"
#~ msgstr "In Funktion »%s«:"

#~ msgid ""
#~ "Please submit a full bug report,\n"
#~ "with preprocessed source if appropriate.\n"
#~ "See %s for instructions.\n"
#~ msgstr ""
#~ "Bitte senden Sie einen vollständigen Fehlerbericht auf Englisch ein;\n"
#~ "bearbeiten Sie die Quellen zunächst mit einem Präprozessor, wenn es\n"
#~ "dienlich ist.\n"
#~ "Fehler in der deutschen Übersetzung sind an de@li.org zu melden.\n"
#~ "\n"
#~ "Gehen Sie gemäß den Hinweisen in %s vor.\n"

#~ msgid "In file included from %s:%d"
#~ msgstr "In von %s:%d eingefügter Datei"

#~ msgid ""
#~ ",\n"
#~ "                 from %s:%d"
#~ msgstr ""
#~ ",\n"
#~ "                 von %s:%d"

#~ msgid "internal regno botch: `%s' has regno = %d\n"
#~ msgstr "interner RegNr-Fehler: »%s« hat RegNr = %d\n"

#~ msgid "support for the DWARF1 debugging format is deprecated"
#~ msgstr "Unterstützung für das DWARF1-Debugging-Format ist veraltet"

#~ msgid "unsupported wide integer operation"
#~ msgstr "breite Ganzzahloperation nicht unterstützt"

#~ msgid "mismatched braces in specs"
#~ msgstr "unpassende geschweifte Klammern in Spezifikation"

#~ msgid "Copyright (C) 2001 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2001 Free Software Foundation, Inc.\n"

#~ msgid "Could not open basic block file %s.\n"
#~ msgstr "Konnte einfache Blockdatei %s nicht öffnen.\n"

#~ msgid "Could not open program flow graph file %s.\n"
#~ msgstr "Konnte Programmflussgraphdatei %s nicht öffnen.\n"

#~ msgid "Could not open data file %s.\n"
#~ msgstr "Konnte Datei %s nicht öffnen.\n"

#~ msgid "Assuming that all execution counts are zero.\n"
#~ msgstr "Angenommen, dass alle Ausführungszähler null sind.\n"

#~ msgid "No executable code associated with file %s.\n"
#~ msgstr "Kein ausführbarer Code mit Datei %s verbunden.\n"

#~ msgid "didn't use all bb entries of graph, function %s\n"
#~ msgstr "nicht alle bb-Einträge des Graphen wurden benutzt, Funktion %s\n"

#~ msgid "block_num = %ld, num_blocks = %d\n"
#~ msgstr "block_num = %ld, num_blocks = %d\n"

#~ msgid "ERROR: unexpected line number %ld\n"
#~ msgstr "FEHLER: nicht erwartete Zeilennummer %ld\n"

#~ msgid "ERROR: too many basic blocks in function %s\n"
#~ msgstr "FEHLER: zu viele Basis-Blöcke in Funktion %s\n"

#~ msgid "ERROR: out of range line number in function %s\n"
#~ msgstr "FEHLER: Zeilennummer außerhalb des Wertebereiches in Funktion %s\n"

#~ msgid "Could not open source file %s.\n"
#~ msgstr "Konnte Quelldatei %s nicht öffnen.\n"

#~ msgid "Unexpected EOF while reading source file %s.\n"
#~ msgstr "Unerwartetes Dateiende beim Lesen der Quelldatei %s.\n"

#~ msgid "Creating %s.\n"
#~ msgstr "Erzeuge %s.\n"

#~ msgid "Name `%s' contains quotes"
#~ msgstr "Name »%s« enthält Anführungszeichen"

#~ msgid "invalid string `%s' in define_cpu_unit"
#~ msgstr "ungültige Zeichenkette »%s« in define_cpu_unit"

#~ msgid "invalid string `%s' in define_query_cpu_unit"
#~ msgstr "ungültige Zeichenkette »%s« in define_query_cpu_unit"

#~ msgid "invalid string `%s' in define_bypass"
#~ msgstr "ungültige Zeichenkette »%s« in define_bypass"

#~ msgid "invalid second string `%s' in exclusion_set"
#~ msgstr "ungültige zweite Zeichenkette »%s« in exclusion_set"

#~ msgid "invalid first string `%s' in presence_set"
#~ msgstr "ungültige erste Zeichenkette »%s« in presence_set"

#~ msgid "invalid second string `%s' in presence_set"
#~ msgstr "ungültige zweite Zeichenkette »%s« in presence_set"

#~ msgid "invalid first string `%s' in absence_set"
#~ msgstr "ungültige erste Zeichenkette »%s« in absence_set"

#~ msgid "invalid second string `%s' in absence_set"
#~ msgstr "ungültige zweite Zeichenkette »%s« in absence_set"

#~ msgid "invalid string `%s' in define_automaton"
#~ msgstr "ungültige Zeichenkette »%s« in define_automaton"

#~ msgid "invalid option `%s' in automata_option"
#~ msgstr "ungültige Option »%s« in automata_option"

#~ msgid "garbage after ) in reservation `%s'"
#~ msgstr "Müll hinter ) in Reservierung »%s«"

#~ msgid "invalid `%s' in reservation `%s'"
#~ msgstr "ungültiges »%s« in Reservierung »%s«"

#~ msgid "repetition `%s' <= 1 in reservation `%s'"
#~ msgstr "Wiederholung »%s« <= 1 in Reservierung »%s«"

#~ msgid "unit `%s' in exclusion is not declared"
#~ msgstr "Einheit »%s« ist nicht im Ausschluss deklariert"

#~ msgid "`%s' in exclusion is not unit"
#~ msgstr "»%s« im Ausschluss ist keine Einheit"

#~ msgid "unit `%s' excludes itself"
#~ msgstr "Einheit »%s« schließt sich selbst aus"

#~ msgid "units `%s' and `%s' in exclusion set belong to different automata"
#~ msgstr "Einheiten »%s« und »%s« in Ausschlussmenge gehören zu verschiedenen Automaten"

#~ msgid "unit `%s' excludes and requires presence of `%s'"
#~ msgstr "Einheit »%s« schließt »%s« aus und erfordert dessen Anwesenheit"

#~ msgid "unit `%s' requires absence and presence of `%s'"
#~ msgstr "Einheit »%s« erfordert die An- und Abwesenheit von »%s«"

#~ msgid "repeated declaration of automaton `%s'"
#~ msgstr "wiederholte Deklaration des Automaten %s"

#~ msgid "define_insn_reservation `%s' has negative latency time"
#~ msgstr "define_insn_reservation »%s« hat negative Latenzzeit"

#~ msgid "`%s' is already used as insn reservation name"
#~ msgstr "»%s« wurde bereits als insn Reservierungsname verwendet"

#~ msgid "define_bypass `%s - %s' has negative latency time"
#~ msgstr "define_bypass »%s - %s« hat negative Latenzzeit"

#~ msgid "define_unit `%s' without automaton when one defined"
#~ msgstr "define_unit »%s« ohne Automat trotz Automatendefinition"

#~ msgid "`%s' is declared as cpu unit"
#~ msgstr "»%s« wurde als CPU-Einheit deklariert"

#~ msgid "`%s' is declared as cpu reservation"
#~ msgstr "»%s« wurde als CPU-Reservierung deklariert"

#~ msgid "repeated declaration of unit `%s'"
#~ msgstr "wiederholte Deklaration der Einheit »%s«"

#~ msgid "repeated declaration of reservation `%s'"
#~ msgstr "wiederholte Deklaration der Reservierung »%s«"

#~ msgid "there is no insn reservation `%s'"
#~ msgstr "es gibt keine insn-Reservierung »%s«"

#~ msgid "the same bypass `%s - %s' is already defined"
#~ msgstr "die selbe Überbrückung »%s - %s« wurde bereits definiert"

#~ msgid "bypass `%s - %s' is already defined"
#~ msgstr "Überbrückung »%s - %s« wurde bereits definiert"

#~ msgid "undeclared unit or reservation `%s'"
#~ msgstr "nicht deklarierte Einheit oder Reservierung »%s«"

#~ msgid "unit `%s' is not used"
#~ msgstr "Einheit »%s« wird nicht verwendet"

#~ msgid "reservation `%s' is not used"
#~ msgstr "Reservierung »%s« ist unbenutzt"

#~ msgid "cycle in definition of reservation `%s'"
#~ msgstr "Zyklus in Definition der Reservierung »%s«"

#~ msgid "Units `%s' and `%s' should be in the same automaton"
#~ msgstr "Einheiten »%s« und »%s« sollten im selben Automat sein"

#~ msgid "-split has no argument."
#~ msgstr "-split hat kein Argument."

#~ msgid "option `-split' has not been implemented yet\n"
#~ msgstr "Option »-split« wurde noch nicht implementiert\n"

#~ msgid "Automaton `%s': Insn `%s' will never be issued"
#~ msgstr "Automat »%s«: Insn »%s« wird nie verwendet"

#~ msgid "Insn `%s' will never be issued"
#~ msgstr "Insn »%s« wird nie verwendet"

#~ msgid "Errors in DFA description"
#~ msgstr "Fehler in DFA-Beschreibung"

#~ msgid "Error in writing DFA description file %s"
#~ msgstr "Fehler beim Schreiben der DFA-Definitionsdatei %s"

#~ msgid "No input file name."
#~ msgstr "Kein Eingabedateiname."

#~ msgid "Profile does not match flowgraph of function %s (out of date?)"
#~ msgstr "Profil passt nicht zum Flussgraphen der Funktion %s (veraltet?)"

#~ msgid ".da file corrupted"
#~ msgstr ".da-Datei beschädigt"

#~ msgid "#`%s' not supported by %s#"
#~ msgstr "#»%s« wird von %s# nicht unterstützt"

#~ msgid "Copyright (C) 2002 Free Software Foundation, Inc.\n"
#~ msgstr "Copyright © 2002 Free Software Foundation, Inc.\n"

#~ msgid "I/O error on output"
#~ msgstr "Ein-/Ausgabefehler bei der Ausgabe"

#~ msgid ""
#~ "internal error in %s, at tradcpp.c:%d\n"
#~ "Please submit a full bug report.\n"
#~ "See %s for instructions."
#~ msgstr ""
#~ "Interner Fehler in %s bei tradcpp.c:%d\n"
#~ "Bitte senden Sie einen vollständigen Fehlerbericht\n"
#~ "auf Englisch ein; Fehler in der deutschen Übersetzung\n"
#~ "sind an de@li.org zu melden.\n"
#~ "Gehen Sie gemäß den Hinweisen in %s vor."
