# Danish version of cpplib.
# Copyright (C) 2020 Free Software Foundation, Inc.
# This file is distributed under the same license as the gcc package.
# Ole Laursen <olau@hardworking.dk>, 2001, 02, 03.
# Joe Hansen <joedalton2@yahoo.dk>, 2015, 2016, 2017, 2018, 2019, 2020.
#
# Konventioner:
#
# ABI -> binær grænseflade
# ANSI -> (har jeg tilladt mig at opdatere til (modsvarer Info-hjælpen)) ISO
# access -> tilgangs-
# aggregate -> en variabel af en sammensat type (fx struct, class)
# ambigeous -> tvetydig
# arg, argument -> parameter (for ikke at blande sammen med diskussionsargument)
# array -> tabel
# assembler -> maskinkodeoversætter
# assertion -> postulat
# attribute -> egenskab
# base class -> stamklasse
# basic block -> basisblok (funktioner deles op i disse under oversættelsen)
# braces -> krøllede paranteser
# braced-group -> sætningsblok
# branch -> forgrening
# buffer -> mellemlager
# cast -> typetildeling, omtvingelse af typen
# con-/destructor -> kon-/destruktionsfunktion
# conflicting -> modstridende
# convert -> konvertere, omdanne
# declared -> erklæret
# defaults to -> antages at være
# dereference -> følge
# discard -> fjerne
# discard -> kassere
# driver -> styringsprogram
# duplicate -> optræder mere end én gang; mangfoldiggøre
# edge list -> kantliste
# elt -> udtrykstræ
# endian -> endet (fx storendet, lillendet)
# endianness -> endethed
# exception handling -> håndtering af undtagelser
# excess -> for mange
# expansion -> udfoldning
# extra -> (ret ofte) overskydende
# floating point -> kommatal
# formals -> parametre
# format string -> formateringsstreng
# forward -> forhånd (f.eks. forhåndserklæring)
# frame table -> rammetabel
# friend -> ven(ne-)
# gp (general purpose) register -> alment register (havde først brug- med, med det er overflødigt)
# hard register -> hardware-register
# have no effect -> udvirker intet
# identifier -> kaldenavn
# incompatible -> uforenelig, passer ikke
# incomplete -> ufuldstændig
# initialize -> tildele startværdi, klargøre
# initializer -> startværdi
# initializer list -> klargøringsliste
# inline -> integrede, indbygges (eller som reserveret ord: inline)
# instance -> instans (fx af en klasse)
# issue (fx warnings) -> fremkom med
# iterator -> løkkevariabel
# junk -> ragelse
# keyword -> reserveret ord
# label -> etiket
# linking -> sammenkædning
# lvalue -> venstreværdi
# macro -> makro
# malformed -> forkert udformet, misdannet
# member function/method -> [medlems]funktion (metode i Objective C)
# mismatch -> passer ikke med
# mmap -> indlæse
# modifier, qualifier -> modifikation
# multiple inheritance -> multipel nedarvning
# newline -> linjeskift
# non-numeric -> ikke et tal
# null character -> nultegn
# null pointer -> nul[-]henvisning
# offset -> forskydning
# opcodes (til ovenstående) -> instruktioner
# out of range -> uden for det gyldige (til tider mulige) interval
# overflow -> (til tider) løber over
# overlap -> [interval]sammenfald
# overloading -> flertydiggørelse
# padding -> udfylning
# pass -> overbringe (fx parametre), videregive
# pointer -> henvisning[svariabel]
# preprocessor -> præprocessor
# profiling -> profilering
# promote -> forfremme
# request -> (til tider) forespørgsel
# return -> returnerer
# schedule -> planlæg
# scope -> virkningsfelt
# shadowing -> skygger for
# shift -> skift
# specified -> (oftest) angivet
# specifier -> anvisning, angivelse
# stab -> stik (?)
# statement -> sætning
# storage class -> lagringsklasse
# strict -> nøje
# string -> streng
# subscript -> indeks, opslag
# target -> mål[arkitektur]
# template -> skabelon
# thrown -> kastet
# token -> symbol
# top-level -> øverste niveau
# trigraphs ('??%c'-dimser) -> trigrafer
# undefine -> glemme definitionen
# undefined blahblah -> blahblah er ikke defineret
# underscore -> understreg
# universal-character-name -> universelt tegn[navn]
# unsigned -> uden fortegn
# varargs -> variable parameterlister
# variadic macro -> makro med vilkårligt antal parametre
# variabels -> variabler (med afslutnings-r)
# vtable -> virtuel tabel
# wide character -> bredtegn
# white space -> mellemrum
# whitespace -> mellemrum
#
# Reserverede ord ofte ikke oversat, ej heller er der anbragt ' omkring
# (fx unsigned -> unsigned; derimod function -> funktion). Forkortelser
# som decl (for declaration) og arg (for argument) er oversat uforkortet
# - der er jo masser af plads at tage af.
#
msgid ""
msgstr ""
"Project-Id-Version: cpplib 10.1-b20200209\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2022-02-11 23:02+0000\n"
"PO-Revision-Date: 2020-03-08 18:00+0200\n"
"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"

#: charset.cc:683
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "konvertering fra %s til %s er ikke understøttet af iconv"

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

#: charset.cc:696
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "ingen iconv-implementering, kan ikke konvertere fra %s til %s"

#: charset.cc:794
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "tegnet 0x%lx er ikke det grundlæggende kildetegnsæt\n"

#: charset.cc:811 charset.cc:1800
msgid "converting to execution character set"
msgstr "konverterer til kørseltegnsæt"

#: charset.cc:817
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "tegn 0x%lx er ikke unibyte i kørseltegnsæt"

#: charset.cc:1087
msgid "universal character names are only valid in C++ and C99"
msgstr "universelle tegnnavne er kun gyldige i C++ og C99"

#: charset.cc:1091
msgid "C99's universal character names are incompatible with C90"
msgstr "C99's universelle tegnnavne er ikke kompatible med C90"

#: charset.cc:1094
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "betydningen af »\\%c« er anderledes i traditionel C"

#: charset.cc:1103
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "I _cpp_valid_ucn men ikke en UCN"

#: charset.cc:1136
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "ufuldstændigt universelt tegnnavn %.*s"

#: charset.cc:1151
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "%.*s er ikke et gyldigt universelt tegn"

#: charset.cc:1161 lex.cc:1876
msgid "'$' in identifier or number"
msgstr "»$« i kaldenavn eller tal"

#: charset.cc:1171
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "universelt tegn %.*s er ikke gyldigt i et kaldenavn"

#: charset.cc:1175
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "universelt tegn %.*s er ikke gyldigt i starten af et kaldenavn"

#: charset.cc:1182
#, c-format
msgid "%.*s is outside the UCS codespace"
msgstr "%.*s er udenfor UCS-koderummet"

#: charset.cc:1227 charset.cc:2145
msgid "converting UCN to source character set"
msgstr "konverterer UCN til et kildetegnsæt"

#: charset.cc:1234
msgid "converting UCN to execution character set"
msgstr "konverterer UCN til et kørselstegnsæt"

#: charset.cc:1298
#, c-format
msgid "extended character %.*s is not valid in an identifier"
msgstr "udvidet tegn %.*s er ikke gyldigt i et kaldenavn"

#: charset.cc:1315
#, c-format
msgid "extended character %.*s is not valid at the start of an identifier"
msgstr "udvidet tegn %.*s er ikke gyldigt i starten af et kaldenavn"

#: charset.cc:1401
msgid "the meaning of '\\x' is different in traditional C"
msgstr "betydningen af »\\x« er anderledes i traditionel C"

#: charset.cc:1426
msgid "\\x used with no following hex digits"
msgstr "\\x angivet uden efterfølgende hexadecimale cifre"

#: charset.cc:1433
msgid "hex escape sequence out of range"
msgstr "den hexadecimale undvigesekvens er uden for det gyldige interval"

#: charset.cc:1483
msgid "octal escape sequence out of range"
msgstr "den oktale undvigesekvens er uden for det gyldige interval"

#: charset.cc:1564
msgid "the meaning of '\\a' is different in traditional C"
msgstr "betydningen af »\\a« er anderledes i traditionel C"

#: charset.cc:1571
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "undvigesekvensen »\\%c« er ikke ISO-standard"

#: charset.cc:1579
#, c-format
msgid "unknown escape sequence: '\\%c'"
msgstr "ukendt undvigesekvens: »\\%c«"

#: charset.cc:1589
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "ukendt undvigesekvens: »\\%s«"

#: charset.cc:1597
msgid "converting escape sequence to execution character set"
msgstr "konverterer undvigesekvens til kørselstegnsæt"

#: charset.cc:1737
msgid "missing open quote"
msgstr "manglende indledende citationstegn"

#: charset.cc:1955 charset.cc:2034
msgid "character constant too long for its type"
msgstr "tegnkonstanten er for lang for dens type"

#: charset.cc:1958
msgid "multi-character character constant"
msgstr "flerbyte-tegnkonstant"

#: charset.cc:2074
msgid "empty character constant"
msgstr "tom tegnkonstant"

#: charset.cc:2230
#, c-format
msgid "failure to convert %s to %s"
msgstr "kunne ikke konvertere %s til %s"

#: directives.cc:237 directives.cc:280
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "ekstra symboler i slutningen af #%s-direktiv"

#: directives.cc:387
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s er en GCC-udvidelse"

#: directives.cc:392
#, c-format
msgid "#%s is a deprecated GCC extension"
msgstr "#%s er en forældet GCC-udvidelse"

#: directives.cc:405
msgid "suggest not using #elif in traditional C"
msgstr "foreslår undladelse af brug af #elif i traditionel C"

#: directives.cc:408
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "traditionel C ignorerer #%s når # er indrykket"

#: directives.cc:412
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "foreslår at skjule #%s fra traditionel C vha. indrykket #"

#: directives.cc:438
msgid "embedding a directive within macro arguments is not portable"
msgstr "indlejring af et direktiv inden i makroparametre er ikke portabelt"

#: directives.cc:466
msgid "style of line directive is a GCC extension"
msgstr "linjestilsdirektiv er en GCC-udvidelse"

#: directives.cc:541
#, fuzzy, c-format
#| msgid "invalid preprocessing directive #%s"
msgid "invalid preprocessing directive #%s; did you mean #%s?"
msgstr "ugyldigt præprocessordirektiv #%s"

#: directives.cc:547
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "ugyldigt præprocessordirektiv #%s"

#: directives.cc:617
#, c-format
msgid "\"%s\" cannot be used as a macro name"
msgstr "»%s« kan ikke bruges som makronavn"

#: directives.cc:624
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "»%s« kan ikke bruges som et makronavn, da det er en operator i C++"

#: directives.cc:627
#, c-format
msgid "no macro name given in #%s directive"
msgstr "intet makronavn angivet i direktivet #%s"

#: directives.cc:630
msgid "macro names must be identifiers"
msgstr "makronavne skal være kaldenavne"

#: directives.cc:679 directives.cc:684
#, c-format
msgid "undefining \"%s\""
msgstr "fjerner definitionen af »%s«"

#: directives.cc:741
msgid "missing terminating > character"
msgstr "manglende afsluttende >-tegn"

#: directives.cc:800
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s forventer »FILNAVN« eller <FILNAVN>"

#: directives.cc:846
#, c-format
msgid "empty filename in #%s"
msgstr "tomt filnavn i #%s"

#: directives.cc:855
#, c-format
msgid "#include nested depth %u exceeds maximum of %u (use -fmax-include-depth=DEPTH to increase the maximum)"
msgstr "#include indlejret dybde %u er større end maksimum på %u (brug -fmax-include-depth=DEPTH for at øge maksimum)"

#: directives.cc:900
msgid "#include_next in primary source file"
msgstr "#include_next i den primære kildekodefil"

#: directives.cc:926
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "ugyldigt flag »%s« i linjedirektiv"

#: directives.cc:993
msgid "unexpected end of file after #line"
msgstr "uventet filafslutning efter #line"

#: directives.cc:996
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "»%s« efter #line er ikke et positivt heltal"

#: directives.cc:1002 directives.cc:1004
msgid "line number out of range"
msgstr "linjenummer er uden for det gyldige interval"

#: directives.cc:1017 directives.cc:1098
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "»%s« er ikke et gyldigt filnavn"

#: directives.cc:1058
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "»%s« efter # er ikke et positivt heltal"

#: directives.cc:1125
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr "filen »%s« linjemarkør ignoreret på grund af ukorrekt indlejring"

#: directives.cc:1203 directives.cc:1205 directives.cc:1207 directives.cc:1795
#, c-format
msgid "%s"
msgstr "%s"

#: directives.cc:1231
#, c-format
msgid "invalid #%s directive"
msgstr "ugyldig #%s-direktiv"

#: directives.cc:1294
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "registrerer pragmaer i navnerum »%s« med fejlmatchede navneudvidelse"

#: directives.cc:1303
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "registrerer pragma »%s« med navneudvidelse og intet navnerum"

#: directives.cc:1321
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "registrerer »%s« som både et pragma og et pragmanavnerum"

#: directives.cc:1324
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "#pragma %s %s er allerede registreret"

#: directives.cc:1327
#, c-format
msgid "#pragma %s is already registered"
msgstr "#pragma %s er allerede registreret"

#: directives.cc:1357
msgid "registering pragma with NULL handler"
msgstr "registrerer pragma med NULL-håndtering"

#: directives.cc:1574
msgid "#pragma once in main file"
msgstr "#pragma once i hovedfil"

#: directives.cc:1597
msgid "invalid #pragma push_macro directive"
msgstr "ugyldigt #pragma push_macro-direktiv"

#: directives.cc:1654
msgid "invalid #pragma pop_macro directive"
msgstr "ugyldigt #pragma pop_macro-direktiv"

#: directives.cc:1709
msgid "invalid #pragma GCC poison directive"
msgstr "ugyldigt #pragma GCC poison-direktiv"

#: directives.cc:1718
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "forgifter eksisterende makro »%s«"

#: directives.cc:1737
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header ignoreret uden for inkluderingsfil"

#: directives.cc:1762
#, c-format
msgid "cannot find source file %s"
msgstr "kan ikke finde kildefilen %s"

#: directives.cc:1766
#, c-format
msgid "current file is older than %s"
msgstr "aktuel fil er ældre end %s"

#: directives.cc:1790
#, c-format
msgid "invalid \"#pragma GCC %s\" directive"
msgstr "ugyldigt »#pragma GCC %s«-direktiv"

#: directives.cc:1992
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma tager en strengkonstant med paranteser omkring"

#: directives.cc:2075
msgid "#else without #if"
msgstr "#else uden #if"

#: directives.cc:2080
msgid "#else after #else"
msgstr "#else efter #else"

#: directives.cc:2082 directives.cc:2116
msgid "the conditional began here"
msgstr "betingelsen begyndte her"

#: directives.cc:2108
#, fuzzy, c-format
#| msgid "#else without #if"
msgid "#%s without #if"
msgstr "#else uden #if"

#: directives.cc:2113
#, fuzzy, c-format
#| msgid "#else after #else"
msgid "#%s after #else"
msgstr "#else efter #else"

#: directives.cc:2136 directives.cc:2175
#, fuzzy, c-format
#| msgid "#%s is a GCC extension"
msgid "#%s before C++23 is a GCC extension"
msgstr "#%s er en GCC-udvidelse"

#: directives.cc:2140 directives.cc:2179
#, fuzzy, c-format
#| msgid "#%s is a GCC extension"
msgid "#%s before C2X is a GCC extension"
msgstr "#%s er en GCC-udvidelse"

#: directives.cc:2215
msgid "#endif without #if"
msgstr "#endif uden #if"

#: directives.cc:2291
msgid "missing '(' after predicate"
msgstr "manglende »(« efter udsagn"

#: directives.cc:2309
msgid "missing ')' to complete answer"
msgstr "manglende »)« til at fuldføre svar"

#: directives.cc:2321
msgid "predicate's answer is empty"
msgstr "udsagnets svar er tomt"

#: directives.cc:2351
msgid "assertion without predicate"
msgstr "postulat uden udsagn"

#: directives.cc:2354
msgid "predicate must be an identifier"
msgstr "udsagn skal være et kaldenavn"

#: directives.cc:2436
#, c-format
msgid "\"%s\" re-asserted"
msgstr "»%s« genpostuleret"

#: directives.cc:2754
#, c-format
msgid "unterminated #%s"
msgstr "uafsluttet #%s"

#: errors.cc:335 errors.cc:350
#, c-format
msgid "%s: %s"
msgstr "%s: %s"

#: errors.cc:348
msgid "stdout"
msgstr "standardud"

#: expr.cc:632 expr.cc:749
msgid "fixed-point constants are a GCC extension"
msgstr "fast punkt-konstanter er en GCC-udvidelse"

#: expr.cc:657
msgid "invalid prefix \"0b\" for floating constant"
msgstr "ugyldigt præfiks »0b« i kommatalskonstant"

#: expr.cc:670
msgid "use of C++17 hexadecimal floating constant"
msgstr "brug af C++17 hexadecimal kommatalskonstant"

#: expr.cc:673
msgid "use of C99 hexadecimal floating constant"
msgstr "brug af C99 hexadecimal kommatalskonstant"

#: expr.cc:717
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "ugyldig endelse »%.*s« i kommatalskonstant"

#: expr.cc:728 expr.cc:795
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "traditionel C tillader ikke endelsen »%.*s«"

#: expr.cc:736
msgid "suffix for double constant is a GCC extension"
msgstr "endelse for dobbelt konstant er en GCC-udvidelse"

#: expr.cc:742
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "ugyldig endelse »%.*s« med hexadecimal kommatalskonstant"

#: expr.cc:755 expr.cc:759
msgid "decimal float constants are a C2X feature"
msgstr "decimal kommatalskonstanter er en C2X-funktion"

#: expr.cc:778
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "ugyldig endelse »%.*s« i heltalskonstant"

#: expr.cc:803
msgid "use of C++11 long long integer constant"
msgstr "brug af C++11 long long-heltalskonstant"

#: expr.cc:804
msgid "use of C99 long long integer constant"
msgstr "brug af C99 long long-heltalskonstant"

#: expr.cc:818
#, fuzzy
#| msgid "use of C++11 long long integer constant"
msgid "use of C++23 %<size_t%> integer constant"
msgstr "brug af C++11 long long-heltalskonstant"

#: expr.cc:819
#, fuzzy
#| msgid "use of C++11 long long integer constant"
msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
msgstr "brug af C++11 long long-heltalskonstant"

#: expr.cc:830
msgid "imaginary constants are a GCC extension"
msgstr "imaginære konstanter er en GCC-udvidelse"

#: expr.cc:837
msgid "binary constants are a C++14 feature or GCC extension"
msgstr "binære konstanter er en C++14-funktion eller GCC-udvidelse"

#: expr.cc:839
#, fuzzy
#| msgid "binary constants are a C++14 feature or GCC extension"
msgid "binary constants are a C2X feature or GCC extension"
msgstr "binære konstanter er en C++14-funktion eller GCC-udvidelse"

#: expr.cc:844
#, fuzzy
#| msgid "decimal float constants are a C2X feature"
msgid "binary constants are a C2X feature"
msgstr "decimal kommatalskonstanter er en C2X-funktion"

#: expr.cc:940
msgid "integer constant is too large for its type"
msgstr "heltalskonstanten er for stor for dens type"

#: expr.cc:971
msgid "integer constant is so large that it is unsigned"
msgstr "heltalskonstanten er så stor at den er usigneret"

#: expr.cc:1066
msgid "missing ')' after \"defined\""
msgstr "manglende »)« efter »defined«"

#: expr.cc:1073
msgid "operator \"defined\" requires an identifier"
msgstr "operatoren »defined« kræver et kaldenavn"

#: expr.cc:1081
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(»%s« er et alternativt symbol for »%s« i C++)"

#: expr.cc:1094
msgid "this use of \"defined\" may not be portable"
msgstr "denne brug af »defined« er muligvis ikke portabel"

#: expr.cc:1139
msgid "user-defined literal in preprocessor expression"
msgstr "brugerdefineret ordret i præprocessorudtrykket"

#: expr.cc:1144
msgid "floating constant in preprocessor expression"
msgstr "kommatalskonstant i præprocessorudtryk"

#: expr.cc:1150
msgid "imaginary number in preprocessor expression"
msgstr "imaginært tal i præprocessorudtryk"

#: expr.cc:1199
#, c-format
msgid "\"%s\" is not defined, evaluates to 0"
msgstr "»%s« er ikke defineret, evaluerer til 0"

#: expr.cc:1212
msgid "assertions are a GCC extension"
msgstr "påstande er en GCC-udvidelse"

#: expr.cc:1215
msgid "assertions are a deprecated extension"
msgstr "påstande er en forældet udvidelse"

#: expr.cc:1461
#, c-format
msgid "unbalanced stack in %s"
msgstr "ubalanceret stak i %s"

#: expr.cc:1481
#, c-format
msgid "impossible operator '%u'"
msgstr "umulig operator »%u«"

#: expr.cc:1582
msgid "missing ')' in expression"
msgstr "manglende »)« i udtryk"

#: expr.cc:1611
msgid "'?' without following ':'"
msgstr "»?« uden efterfølgende »:«"

#: expr.cc:1621
msgid "integer overflow in preprocessor expression"
msgstr "heltallet løber over i præprocessorudtrykket"

#: expr.cc:1626
msgid "missing '(' in expression"
msgstr "manglende »(« i udtryk"

#: expr.cc:1658
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "den venstre operand til »%s« ændrer fortegn ved forfremmelse"

#: expr.cc:1663
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "den højre operand til »%s« ændrer fortegn ved forfremmelse"

#: expr.cc:1922
msgid "traditional C rejects the unary plus operator"
msgstr "traditionel C tillader ikke operatoren unær plus"

#: expr.cc:2020
msgid "comma operator in operand of #if"
msgstr "kommaoperator i en operand til #if"

#: expr.cc:2156
msgid "division by zero in #if"
msgstr "division med nul i #if"

#: files.cc:516
msgid "NULL directory in find_file"
msgstr "NULL-mappe i find_file"

#: files.cc:570
msgid "one or more PCH files were found, but they were invalid"
msgstr "en eller flere PCH-filer blev fundet, men de var ugyldige"

#: files.cc:574
msgid "use -Winvalid-pch for more information"
msgstr "brug -Winvalid-pch for yderligere information"

#: files.cc:688
#, c-format
msgid "%s is a block device"
msgstr "%s er en blokenhed"

#: files.cc:707
#, c-format
msgid "%s is too large"
msgstr "%s er for stor"

#: files.cc:748
#, c-format
msgid "%s is shorter than expected"
msgstr "%s er kortere end forventet"

#: files.cc:1060
#, c-format
msgid "no include path in which to search for %s"
msgstr "der er ingen inkluderingssti at søge efter %s i"

#: files.cc:1578
msgid "Multiple include guards may be useful for:\n"
msgstr "Flere inkluderingsvagter kan være nyttige til:\n"

#: init.cc:618
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t skal være en usigneret type"

#: init.cc:622
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "præprocessorberegning har en maksimal præcision på %lu bit; målarkitektur kræver %lu bit"

#: init.cc:629
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "CPP-beregning skal være mindst lige så præcis som en målarkitekturs int"

#: init.cc:632
msgid "target char is less than 8 bits wide"
msgstr "målarkitekturs char er mindre end 8 bit bred"

#: init.cc:636
msgid "target wchar_t is narrower than target char"
msgstr "målarkitekturs wchar_t er mindre end målarkitekturs char"

#: init.cc:640
msgid "target int is narrower than target char"
msgstr "målarkitekturs int er mindre end målarkitekturs char"

#: init.cc:645
msgid "CPP half-integer narrower than CPP character"
msgstr "CPP-halvheltal er mindre end CPP-tegn"

#: init.cc:649
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP på denne vært kan ikke håndtere bredtegnkonstanter over %lu bit, men målarkitekturen kræver %lu bit"

#: lex.cc:1126
msgid "backslash and newline separated by space"
msgstr "omvendt skråstreg og linjeskift er adskilt af mellemrum"

#: lex.cc:1131
msgid "backslash-newline at end of file"
msgstr "omvendt skråstreg efterfulgt af linjeskift ved slutningen af filen"

#: lex.cc:1147
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "trigrafen ??%c konverteret til %c"

#: lex.cc:1155
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "trigrafen ??%c ignoreret, brug -trigraphs for at aktivere"

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

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

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

#: lex.cc:1619
#, c-format
msgid "UTF-8 vs UCN mismatch when closing a context by \"%s\""
msgstr ""

#: lex.cc:1628
#, c-format
msgid "\"%s\" is closing an unopened context"
msgstr ""

#: lex.cc:1632
#, c-format
msgid "found problematic Unicode character \"%s\""
msgstr ""

#: lex.cc:1682
msgid "\"/*\" within comment"
msgstr "»/*« i en kommentar"

#: lex.cc:1772
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s i præprocessordirektiv"

#: lex.cc:1784
msgid "null character(s) ignored"
msgstr "nultegn ignoreret"

#: lex.cc:1844
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr "»%.*s« er ikke i NFKC"

#: lex.cc:1847 lex.cc:1850
#, c-format
msgid "`%.*s' is not in NFC"
msgstr "»%.*s« er ikke i NFC"

#: lex.cc:1932
#, fuzzy
#| msgid "__VA_OPT__ is not available until C++2a"
msgid "__VA_OPT__ is not available until C++20"
msgstr "__VA_OPT__ er ikke tilgængelig før C++2a"

#: lex.cc:1939
#, fuzzy
#| msgid "__VA_OPT__ can only appear in the expansion of a C++2a variadic macro"
msgid "__VA_OPT__ can only appear in the expansion of a C++20 variadic macro"
msgstr "__VA_OPT__ kan kun optræde i udfoldelsen af en C++2a-makro med vilkårligt antal parametre"

#: lex.cc:1970 lex.cc:2066
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "forsøg på at bruge forgiftet »%s«"

#: lex.cc:1980 lex.cc:2076
msgid "__VA_ARGS__ can only appear in the expansion of a C++11 variadic macro"
msgstr "__VA_ARGS__ kan kun optræde i udfoldelsen af en C++11-makro med vilkårligt antal parametre"

#: lex.cc:1984 lex.cc:2080
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "__VA_ARGS__ kan kun optræde i udfoldelsen af en C99-makro med vilkårligt antal parametre"

#: lex.cc:1994 lex.cc:2092
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr "kaldenavn »%s« er et specielt operatornavn i C++"

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

#: lex.cc:2450
msgid "raw string delimiter longer than 16 characters"
msgstr "rå strengafgrænser længere end 16 tegn"

#: lex.cc:2454
msgid "invalid new-line in raw string delimiter"
msgstr "ugyldig nylinje i rå strengafgrænser"

#: lex.cc:2458 lex.cc:5257
#, c-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "ugyldigt tegn »%c« i rå strengafgrænser"

#: lex.cc:2497 lex.cc:2520
msgid "unterminated raw string"
msgstr "uafsluttet rå streng"

#: lex.cc:2552 lex.cc:2701
msgid "invalid suffix on literal; C++11 requires a space between literal and string macro"
msgstr "ugyldig suffiks på ordret; C++11 kræver et mellemrum mellem ordret og strengmakro"

#: lex.cc:2684
msgid "null character(s) preserved in literal"
msgstr "nultegn bevaret i strengkonstant"

#: lex.cc:2687
#, c-format
msgid "missing terminating %c character"
msgstr "manglende afsluttende %c-tegn"

#: lex.cc:2719
msgid "C++11 requires a space between string literal and macro"
msgstr "C++11 kræver et mellemrum mellem ordret og strengmakro"

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

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

#: lex.cc:3714 lex.cc:5090 traditional.cc:174
msgid "unterminated comment"
msgstr "uafsluttet kommentar"

#: lex.cc:3728 lex.cc:3762
msgid "C++ style comments are not allowed in ISO C90"
msgstr "kommentarer i C++-stil er ikke tilladt i ISO C90"

#: lex.cc:3730 lex.cc:3741 lex.cc:3765
msgid "(this will be reported only once per input file)"
msgstr "(dette rapporteres kun en enkelt gang per inddatafil)"

#: lex.cc:3739
msgid "C++ style comments are incompatible with C90"
msgstr "kommentarer i C++-stil er ikke kompatible med C90"

#: lex.cc:3771
msgid "multi-line comment"
msgstr "flerlinjekommentar"

#: lex.cc:4165
#, c-format
msgid "unspellable token %s"
msgstr "symbol %s kan ikke staves"

#: lex.cc:5245
#, fuzzy, c-format
#| msgid "raw string delimiter longer than 16 characters"
msgid "raw string delimiter longer than %d characters"
msgstr "rå strengafgrænser længere end 16 tegn"

#: lex.cc:5315
#, fuzzy
#| msgid "unterminated #%s"
msgid "unterminated literal"
msgstr "uafsluttet #%s"

#: macro.cc:94
msgid "'##' cannot appear at either end of __VA_OPT__"
msgstr "»##« må ikke optræde ved nogen af enderne i __VA_OPT__"

#: macro.cc:144
#, fuzzy
#| msgid "'##' cannot appear at either end of __VA_OPT__"
msgid "__VA_OPT__ may not appear in a __VA_OPT__"
msgstr "»##« må ikke optræde ved nogen af enderne i __VA_OPT__"

#: macro.cc:157
msgid "__VA_OPT__ must be followed by an open parenthesis"
msgstr ""

#: macro.cc:235
#, fuzzy
#| msgid "unterminated #%s"
msgid "unterminated __VA_OPT__"
msgstr "uafsluttet #%s"

#: macro.cc:397
#, c-format
msgid "\"%s\" used outside of preprocessing directive"
msgstr "»%s« brugt uden for præprocessordirektiv"

#: macro.cc:407
#, c-format
msgid "missing '(' before \"%s\" operand"
msgstr "manglende »(« før »%s«-operand"

#: macro.cc:422
#, c-format
msgid "operator \"%s\" requires a header-name"
msgstr "operatoren »%s« kræver et teksthovednavn"

#: macro.cc:439
#, c-format
msgid "missing ')' after \"%s\" operand"
msgstr "manglende »)« efter »%s«-operand"

#: macro.cc:459
#, c-format
msgid "macro \"%s\" is not used"
msgstr "makroen »%s« bliver ikke brugt"

#: macro.cc:498 macro.cc:797
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "ugyldig indbygget makro »%s«"

#: macro.cc:505 macro.cc:613
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr "makroen »%s« kan forhindre reproducerbare bygninger"

#: macro.cc:536
msgid "could not determine file timestamp"
msgstr "kunne ikke bestemme filtidsstempel"

#: macro.cc:627
msgid "could not determine date and time"
msgstr "kunne ikke bestemme dato og tid"

#: macro.cc:659
msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgstr "__COUNTER__ udvidet inden i direktiv med -fdirectives-only"

#: macro.cc:916
msgid "invalid string literal, ignoring final '\\'"
msgstr "ugyldig strengkonstant, ignorerer afsluttende »\\«"

#: macro.cc:980
#, fuzzy, c-format
#| msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgid "pasting \"%.*s\" and \"%.*s\" does not give a valid preprocessing token"
msgstr "indsættelse af »%s« og »%s« giver ikke et gyldigt præprocessorsymbol"

#: macro.cc:1112
msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C++11 kræver mindst en parameter for »...« i en makro med vilkårligt antal parametre"

#: macro.cc:1116
msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C99 kræver mindst en parameter for »...« i en makro med vilkårligt antal parametre"

#: macro.cc:1123
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "makroen »%s« kræver %u parametre, men modtager kun %u"

#: macro.cc:1128
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "makroen »%s« viderebragte %u parametre, men tager kun mod %u"

#: macro.cc:1132
#, fuzzy, c-format
#| msgid "macro \"%s\" is not used"
msgid "macro \"%s\" defined here"
msgstr "makroen »%s« bliver ikke brugt"

#: macro.cc:1326 traditional.cc:822
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "uafsluttet parameterliste ved kald af makroen »%s«"

#: macro.cc:1472
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "funktionsagtig makro »%s« skal bruges med parametre i traditionel C"

#: macro.cc:2307
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C++98"
msgstr "starter makroen %s parameter %d: tomme makroparametre er ikke defineret i ISO C+98"

#: macro.cc:2315 macro.cc:2324
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
msgstr "starter makroen %s parameter %d: tomme makroparametre er ikke defineret i ISO C90"

#: macro.cc:3375
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "makroparameternavnet »%s« optræder mere end en gang"

#: macro.cc:3457
#, c-format
msgid "expected parameter name, found \"%s\""
msgstr "forventede parameternavn, fandt »%s«"

#: macro.cc:3458
#, c-format
msgid "expected ',' or ')', found \"%s\""
msgstr "forventede »,« eller »)«, fandt »%s«"

#: macro.cc:3459
msgid "expected parameter name before end of line"
msgstr "forventede parameternavn før linjeafslutning"

#: macro.cc:3460
msgid "expected ')' before end of line"
msgstr "forventede »)« før linjeafslutning"

#: macro.cc:3461
msgid "expected ')' after \"...\""
msgstr "forventede »)« efter »...«"

#: macro.cc:3518
msgid "anonymous variadic macros were introduced in C++11"
msgstr "anonyme makroer med vilkårligt antal parametre blev introduceret i C++11"

#: macro.cc:3519 macro.cc:3523
msgid "anonymous variadic macros were introduced in C99"
msgstr "anonyme makroer med vilkårligt antal parametre blev introduceret i C99"

#: macro.cc:3529
msgid "ISO C++ does not permit named variadic macros"
msgstr "ISO C++ tillader ikke navngivne makroer med vilkårligt antal parametre"

#: macro.cc:3530
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C tillader ikke navngivne makroer med vilkårligt antal parametre"

#: macro.cc:3576
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "»##« må ikke optræde ved nogen af enderne i en makrokrop"

#: macro.cc:3614
msgid "ISO C++11 requires whitespace after the macro name"
msgstr "ISO C++11 kræver mellemrum efter makronavnet"

#: macro.cc:3615
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 kræver mellemrum efter makronavnet"

#: macro.cc:3639
msgid "missing whitespace after the macro name"
msgstr "manglende mellemrum efter makronavnet"

#: macro.cc:3692
msgid "'#' is not followed by a macro parameter"
msgstr "»#« efterfølges ikke af en makroparameter"

#: macro.cc:3848
#, c-format
msgid "\"%s\" redefined"
msgstr "»%s« omdefineret"

#: macro.cc:3853
msgid "this is the location of the previous definition"
msgstr "den foregående definition er her"

#: macro.cc:3990
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "makroparameteren »%s« ville blive gjort til en streng i traditionel C"

#: pch.cc:90 pch.cc:342 pch.cc:356 pch.cc:374 pch.cc:380 pch.cc:389 pch.cc:396
msgid "while writing precompiled header"
msgstr "under skrivning af prækompileret teksthoved"

#: pch.cc:616
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s: ikke brugt da »%.*s« er forgiftet"

#: pch.cc:638
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s: ikke brugt da »%.*s« ikke er defineret"

#: pch.cc:650
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s: ikke brugt da »%.*s« er defineret som »%s« ikke »%.*s«"

#: pch.cc:691
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s ikke brugt da »%s« er defineret"

#: pch.cc:711
#, c-format
msgid "%s: not used because `__COUNTER__' is invalid"
msgstr "%s: ikke brugt da »__COUNTER__« er ugyldig"

#: pch.cc:720 pch.cc:876
msgid "while reading precompiled header"
msgstr "under læsning af prækompileret teksthoved"

#: traditional.cc:891
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "opdagede rekursion ved udfoldelse af makroen »%s«"

#: traditional.cc:1114
msgid "syntax error in macro parameter list"
msgstr "syntaksfejl i makroparameterliste"

#~ msgid "#elif without #if"
#~ msgstr "#elif uden #if"

#~ msgid "#elif after #else"
#~ msgstr "#elif efter #else"

#~ msgid "binary constants are a GCC extension"
#~ msgstr "binære konstanter er en GCC-udvidelse"

#~ msgid "\"__has_include__\" cannot be used as a macro name"
#~ msgstr "»__has_include__« kan ikke bruges som et makronavn"

#~ msgid "#include nested too deeply"
#~ msgstr "#include indlejret for dybt"

#~ msgid "missing ')' after \"__has_include__\""
#~ msgstr "manglende »)« efter »__has_include__«"

#~ msgid "\"%s\" may not appear in macro parameter list"
#~ msgstr "»%s« må ikke optræde i makroparameterliste"

#~ msgid "macro parameters must be comma-separated"
#~ msgstr "makroparametre skal være kommaadskilte"

#~ msgid "parameter name missing"
#~ msgstr "parameternavn mangler"

#~ msgid "missing ')' in macro parameter list"
#~ msgstr "manglende »)« i makroparameterliste"

#~ msgid "invalid hash type %d in cpp_macro_definition"
#~ msgstr "ugyldig hashtype %d i cpp_macro_definition"
