# This file holds test cases for the D demangler.
# Each test case looks like this:
#  options
#  input to be demangled
#  expected output
#
# See demangle-expected for documentation of supported options.
#
# A line starting with `#' is ignored.
# However, blank lines in this file are NOT ignored.
#
############
#
# Coverage Tests
#
--format=dlang
_Dmain
D main
#
--format=dlang
_D8demangle4testPFLAiYi
demangle.test
#
--format=dlang
_D8demangle4testFaZv
demangle.test(char)
#
--format=dlang
_D8demangle4testFbZv
demangle.test(bool)
#
--format=dlang
_D8demangle4testFcZv
demangle.test(creal)
#
--format=dlang
_D8demangle4testFdZv
demangle.test(double)
#
--format=dlang
_D8demangle4testFeZv
demangle.test(real)
#
--format=dlang
_D8demangle4testFfZv
demangle.test(float)
#
--format=dlang
_D8demangle4testFgZv
demangle.test(byte)
#
--format=dlang
_D8demangle4testFhZv
demangle.test(ubyte)
#
--format=dlang
_D8demangle4testFiZv
demangle.test(int)
#
--format=dlang
_D8demangle4testFjZv
demangle.test(ireal)
#
--format=dlang
_D8demangle4testFkZv
demangle.test(uint)
#
--format=dlang
_D8demangle4testFlZv
demangle.test(long)
#
--format=dlang
_D8demangle4testFmZv
demangle.test(ulong)
#
--format=dlang
_D8demangle4testFnZv
demangle.test(none)
#
--format=dlang
_D8demangle4testFoZv
demangle.test(ifloat)
#
--format=dlang
_D8demangle4testFpZv
demangle.test(idouble)
#
--format=dlang
_D8demangle4testFqZv
demangle.test(cfloat)
#
--format=dlang
_D8demangle4testFrZv
demangle.test(cdouble)
#
--format=dlang
_D8demangle4testFsZv
demangle.test(short)
#
--format=dlang
_D8demangle4testFtZv
demangle.test(ushort)
#
--format=dlang
_D8demangle4testFuZv
demangle.test(wchar)
#
--format=dlang
_D8demangle4testFvZv
demangle.test(void)
#
--format=dlang
_D8demangle4testFwZv
demangle.test(dchar)
#
--format=dlang
_D8demangle4testFOaZv
demangle.test(shared(char))
#
--format=dlang
_D8demangle4testFxaZv
demangle.test(const(char))
#
--format=dlang
_D8demangle4testFyaZv
demangle.test(immutable(char))
#
--format=dlang
_D8demangle4testFNgaZv
demangle.test(inout(char))
#
--format=dlang
_D8demangle4testFOxaZv
demangle.test(shared(const(char)))
#
--format=dlang
_D8demangle4testFONgaZv
demangle.test(shared(inout(char)))
#
--format=dlang
_D8demangle4testFAaZv
demangle.test(char[])
#
--format=dlang
_D8demangle4testFAAaZv
demangle.test(char[][])
#
--format=dlang
_D8demangle4testFAAAaZv
demangle.test(char[][][])
#
--format=dlang
_D8demangle4testFG42aZv
demangle.test(char[42])
#
--format=dlang
_D8demangle4testFG42G42aZv
demangle.test(char[42][42])
#
--format=dlang
_D8demangle4testFG42G42G42aZv
demangle.test(char[42][42][42])
#
--format=dlang
_D8demangle4testFG1234567890aZv
demangle.test(char[1234567890])
#
--format=dlang
_D8demangle4testFHaaZv
demangle.test(char[char])
#
--format=dlang
_D8demangle4testFHHaaaZv
demangle.test(char[char[char]])
#
--format=dlang
_D8demangle4testFPaZv
demangle.test(char*)
#
--format=dlang
_D8demangle4testFPPaZv
demangle.test(char**)
#
--format=dlang
_D8demangle4testFPPPaZv
demangle.test(char***)
#
--format=dlang
_D8demangle4testFNhG8gZv
demangle.test(__vector(byte[8]))
#
--format=dlang
_D8demangle4testFNhG16gZv
demangle.test(__vector(byte[16]))
#
--format=dlang
_D8demangle4testFNhG32gZv
demangle.test(__vector(byte[32]))
#
--format=dlang
_D8demangle4testFNhG4sZv
demangle.test(__vector(short[4]))
#
--format=dlang
_D8demangle4testFNhG8sZv
demangle.test(__vector(short[8]))
#
--format=dlang
_D8demangle4testFNhG16sZv
demangle.test(__vector(short[16]))
#
--format=dlang
_D8demangle4testFNhG2iZv
demangle.test(__vector(int[2]))
#
--format=dlang
_D8demangle4testFNhG4iZv
demangle.test(__vector(int[4]))
#
--format=dlang
_D8demangle4testFNhG8iZv
demangle.test(__vector(int[8]))
#
--format=dlang
_D8demangle4testFNhG1lZv
demangle.test(__vector(long[1]))
#
--format=dlang
_D8demangle4testFNhG2lZv
demangle.test(__vector(long[2]))
#
--format=dlang
_D8demangle4testFNhG4lZv
demangle.test(__vector(long[4]))
#
--format=dlang
_D8demangle4testFNhG2fZv
demangle.test(__vector(float[2]))
#
--format=dlang
_D8demangle4testFNhG4fZv
demangle.test(__vector(float[4]))
#
--format=dlang
_D8demangle4testFNhG8fZv
demangle.test(__vector(float[8]))
#
--format=dlang
_D8demangle4testFNhG1dZv
demangle.test(__vector(double[1]))
#
--format=dlang
_D8demangle4testFNhG2dZv
demangle.test(__vector(double[2]))
#
--format=dlang
_D8demangle4testFNhG4dZv
demangle.test(__vector(double[4]))
#
--format=dlang
_D8demangle4testFI5identZv
demangle.test(ident)
#
--format=dlang
_D8demangle4testFI5ident4testZv
demangle.test(ident.test)
#
--format=dlang
_D8demangle4testFC5classZv
demangle.test(class)
#
--format=dlang
_D8demangle4testFC5class4testZv
demangle.test(class.test)
#
--format=dlang
_D8demangle4testFS6structZv
demangle.test(struct)
#
--format=dlang
_D8demangle4testFS6struct4testZv
demangle.test(struct.test)
#
--format=dlang
_D8demangle4testFE4enumZv
demangle.test(enum)
#
--format=dlang
_D8demangle4testFE4enum4testZv
demangle.test(enum.test)
#
--format=dlang
_D8demangle4testFT7typedefZv
demangle.test(typedef)
#
--format=dlang
_D8demangle4testFT7typedef4testZv
demangle.test(typedef.test)
#
--format=dlang
_D8demangle4testFJaZv
demangle.test(out char)
#
--format=dlang
_D8demangle4testFKaZv
demangle.test(ref char)
#
--format=dlang
_D8demangle4testFLaZv
demangle.test(lazy char)
#
--format=dlang
_D8demangle4testFMaZv
demangle.test(scope char)
#
--format=dlang
_D8demangle4testFaXv
demangle.test(char...)
#
--format=dlang
_D8demangle4testFaYv
demangle.test(char, ...)
#
--format=dlang
_D8demangle4testFaaYv
demangle.test(char, char, ...)
#
--format=dlang
_D8demangle4testFaaZv
demangle.test(char, char)
#
--format=dlang
_D8demangle4testFB0Zv
demangle.test(Tuple!())
#
--format=dlang
_D8demangle4testFB1aZv
demangle.test(Tuple!(char))
#
--format=dlang
_D8demangle4testFB2aaZv
demangle.test(Tuple!(char, char))
#
--format=dlang
_D8demangle4testFB3aaaZv
demangle.test(Tuple!(char, char, char))
#
--format=dlang
_D8demangle4testFB2OaaZv
demangle.test(Tuple!(shared(char), char))
#
--format=dlang
_D8demangle4testFB3aDFZaaZv
demangle.test(Tuple!(char, char() delegate, char))
#
--format=dlang
_D8demangle4testFDFZaZv
demangle.test(char() delegate)
#
--format=dlang
_D8demangle4testFDUZaZv
demangle.test(extern(C) char() delegate)
#
--format=dlang
_D8demangle4testFDWZaZv
demangle.test(extern(Windows) char() delegate)
#
--format=dlang
_D8demangle4testFDVZaZv
demangle.test(extern(Pascal) char() delegate)
#
--format=dlang
_D8demangle4testFDRZaZv
demangle.test(extern(C++) char() delegate)
#
--format=dlang
_D8demangle4testFFZaZv
demangle.test(char() function)
#
--format=dlang
_D8demangle4testFUZaZv
demangle.test(extern(C) char() function)
#
--format=dlang
_D8demangle4testFWZaZv
demangle.test(extern(Windows) char() function)
#
--format=dlang
_D8demangle4testFVZaZv
demangle.test(extern(Pascal) char() function)
#
--format=dlang
_D8demangle4testFRZaZv
demangle.test(extern(C++) char() function)
#
--format=dlang
_D8demangle4testFDFNaZaZv
demangle.test(char() pure delegate)
#
--format=dlang
_D8demangle4testFDFNbZaZv
demangle.test(char() nothrow delegate)
#
--format=dlang
_D8demangle4testFDFNcZaZv
demangle.test(char() ref delegate)
#
--format=dlang
_D8demangle4testFDFNdZaZv
demangle.test(char() @property delegate)
#
--format=dlang
_D8demangle4testFDFNeZaZv
demangle.test(char() @trusted delegate)
#
--format=dlang
_D8demangle4testFDFNfZaZv
demangle.test(char() @safe delegate)
#
--format=dlang
_D8demangle4testFDFNiZaZv
demangle.test(char() @nogc delegate)
#
--format=dlang
_D8demangle4testFDFNaNbZaZv
demangle.test(char() pure nothrow delegate)
#
--format=dlang
_D8demangle4testFDFNbNaZaZv
demangle.test(char() nothrow pure delegate)
#
--format=dlang
_D8demangle4testFDFNdNfNaZaZv
demangle.test(char() @property @safe pure delegate)
#
--format=dlang
_D8demangle4testFFNaZaZv
demangle.test(char() pure function)
#
--format=dlang
_D8demangle4testFFNbZaZv
demangle.test(char() nothrow function)
#
--format=dlang
_D8demangle4testFFNcZaZv
demangle.test(char() ref function)
#
--format=dlang
_D8demangle4testFFNdZaZv
demangle.test(char() @property function)
#
--format=dlang
_D8demangle4testFFNeZaZv
demangle.test(char() @trusted function)
#
--format=dlang
_D8demangle4testFFNfZaZv
demangle.test(char() @safe function)
#
--format=dlang
_D8demangle4testFFNiZaZv
demangle.test(char() @nogc function)
#
--format=dlang
_D8demangle4testFFNaNbZaZv
demangle.test(char() pure nothrow function)
#
--format=dlang
_D8demangle4testFFNbNaZaZv
demangle.test(char() nothrow pure function)
#
--format=dlang
_D8demangle4testFFNdNfNaZaZv
demangle.test(char() @property @safe pure function)
#
--format=dlang
_D8demangle4test6__initZ
demangle.test.init$
#
--format=dlang
_D8demangle4test6__vtblZ
vtable for demangle.test
#
--format=dlang
_D8demangle4test7__ClassZ
ClassInfo for demangle.test
#
--format=dlang
_D8demangle4test11__InterfaceZ
Interface for demangle.test
#
--format=dlang
_D8demangle4test12__ModuleInfoZ
ModuleInfo for demangle.test
#
--format=dlang
_D8demangle4test6__ctorMFZv
demangle.test.this()
#
--format=dlang
_D8demangle4test6__dtorMFZv
demangle.test.~this()
#
--format=dlang
_D8demangle4test6__postblitMFZv
demangle.test.this(this)
#
--format=dlang
_D8demangle4testFHAbaZv
demangle.test(char[bool[]])
#
--format=dlang
_D8demangle4testFHG42caZv
demangle.test(char[creal[42]])
#
--format=dlang
_D8demangle4testFAiXv
demangle.test(int[]...)
#
--format=dlang
_D8demangle4testFLAiXv
demangle.test(lazy int[]...)
#
--format=dlang
_D8demangle4testFAiYv
demangle.test(int[], ...)
#
--format=dlang
_D8demangle4testFLAiYv
demangle.test(lazy int[], ...)
#
--format=dlang
_D8demangle4testFLilZv
demangle.test(lazy int, long)
#
--format=dlang
_D8demangle4testFLliZv
demangle.test(lazy long, int)
#
--format=dlang
_D8demangle4testFLC6ObjectLDFLiZiZi
demangle.test(lazy Object, lazy int(lazy int) delegate)
#
--format=dlang
_D8demangle9__T4testZv
demangle.test!()
#
--format=dlang
_D8demangle11__T4testTaZv
demangle.test!(char)
#
--format=dlang
_D8demangle13__T4testTaTaZv
demangle.test!(char, char)
#
--format=dlang
_D8demangle15__T4testTaTaTaZv
demangle.test!(char, char, char)
#
--format=dlang
_D8demangle16__T4testTaTOiTaZv
demangle.test!(char, shared(int), char)
#
--format=dlang
_D8demangle17__T4testS6symbolZv
demangle.test!(symbol)
#
--format=dlang
_D8demangle21__T4testS6symbol3fooZv
demangle.test!(symbol.foo)
#
--format=dlang
_D8demangle25__T4testS6symbol3foo3barZv
demangle.test!(symbol.foo.bar)
#
--format=dlang
_D8demangle19__T4testTaS6symbolZv
demangle.test!(char, symbol)
#
--format=dlang
_D8demangle19__T4testS6symbolTaZv
demangle.test!(symbol, char)
#
--format=dlang
_D8demangle13__T4testVPinZv
demangle.test!(null)
#
--format=dlang
_D8demangle14__T4testVg123Zv
demangle.test!(123)
#
--format=dlang
_D8demangle14__T4testVi123Zv
demangle.test!(123)
#
--format=dlang
_D8demangle14__T4testVs123Zv
demangle.test!(123)
#
--format=dlang
_D8demangle14__T4testVh123Zv
demangle.test!(123u)
#
--format=dlang
_D8demangle14__T4testVk123Zv
demangle.test!(123u)
#
--format=dlang
_D8demangle14__T4testVt123Zv
demangle.test!(123u)
#
--format=dlang
_D8demangle14__T4testVl123Zv
demangle.test!(123L)
#
--format=dlang
_D8demangle14__T4testVm123Zv
demangle.test!(123uL)
#
--format=dlang
_D8demangle15__T4testViN123Zv
demangle.test!(-123)
#
--format=dlang
_D8demangle15__T4testVkN123Zv
demangle.test!(-123u)
#
--format=dlang
_D8demangle15__T4testVlN123Zv
demangle.test!(-123L)
#
--format=dlang
_D8demangle15__T4testVmN123Zv
demangle.test!(-123uL)
#
--format=dlang
_D8demangle12__T4testVb1Zv
demangle.test!(true)
#
--format=dlang
_D8demangle12__T4testVb0Zv
demangle.test!(false)
#
--format=dlang
_D8demangle13__T4testVa10Zv
demangle.test!('\x0a')
#
--format=dlang
_D8demangle13__T4testVa32Zv
demangle.test!(' ')
#
--format=dlang
_D8demangle13__T4testVa65Zv
demangle.test!('A')
#
--format=dlang
_D8demangle14__T4testVa126Zv
demangle.test!('~')
#
--format=dlang
_D8demangle15__T4testVu1000Zv
demangle.test!('\u03e8')
#
--format=dlang
_D8demangle17__T4testVw100000Zv
demangle.test!('\U000186a0')
#
--format=dlang
_D8demangle17__T4testVde0A8P6Zv
demangle.test!(42.0000)
#
--format=dlang
_D8demangle16__T4testVdeA8P2Zv
demangle.test!(42.0000)
#
--format=dlang
_D8demangle18__T4testVdeN0A8P6Zv
demangle.test!(-42.0000)
#
--format=dlang
_D8demangle31__T4testVde0F6E978D4FDF3B646P7Zv
demangle.test!(123.456)
#
--format=dlang
_D8demangle15__T4testVdeNANZv
demangle.test!(NaN)
#
--format=dlang
_D8demangle15__T4testVdeINFZv
demangle.test!(Inf)
#
--format=dlang
_D8demangle16__T4testVdeNINFZv
demangle.test!(-Inf)
#
--format=dlang
_D8demangle23__T4testVfe0FFFFFFP128Zv
demangle.test!(3.40282e+38)
#
--format=dlang
_D8demangle32__T4testVde0FFFFFFFFFFFFF8P1024Zv
demangle.test!(1.79769e+308)
#
--format=dlang
_D8demangle19__T4testVfe08PN125Zv
demangle.test!(1.17549e-38)
#
--format=dlang
_D8demangle20__T4testVde08PN1021Zv
demangle.test!(2.22507e-308)
#
--format=dlang
_D8demangle51__T4testVrc0C4CCCCCCCCCCCCCDP4c0B666666666666666P6Zv
demangle.test!(12.3000+45.6000i)
#
--format=dlang
_D8demangle52__T4testVrcN0C4CCCCCCCCCCCCCDP4c0B666666666666666P6Zv
demangle.test!(-12.3000+45.6000i)
#
--format=dlang
_D8demangle22__T4testVG3ua3_616263Zv
demangle.test!("abc")
#
--format=dlang
_D8demangle22__T4testVG3ud3_616263Zv
demangle.test!("abc"d)
#
--format=dlang
_D8demangle22__T4testVG3uw3_616263Zv
demangle.test!("abc"w)
#
--format=dlang
_D8demangle22__T4testVAiA4i1i2i3i4Zv
demangle.test!([1, 2, 3, 4])
#
--format=dlang
_D8demangle25__T4testVAdA2e08P1eN08P1Zv
demangle.test!([1.00000, -1.00000])
#
--format=dlang
_D8demangle23__T4testVHiiA2i1i2i3i4Zv
demangle.test!([1:2, 3:4])
#
--format=dlang
_D8demangle39__T4testVHAxaiA2a3_616263i1a3_646566i2Zv
demangle.test!(["abc":1, "def":2])
#
--format=dlang
_D8demangle28__T4testVS8demangle1SS2i1i2Zv
demangle.test!(demangle.S(1, 2))
#
--format=dlang
_D8demangle35__T4testVS8demangle1SS2i1a3_616263Zv
demangle.test!(demangle.S(1, "abc"))
#
# Unittests
#
--format=dlang
printf
printf
#
--format=dlang
_foo
_foo
#
--format=dlang
_D88
_D88
#
--format=dlang
_D5__T1aZv
_D5__T1aZv
#
--format=dlang
_D4test3fooAa
test.foo
#
--format=dlang
_D8demangle8demangleFAaZAa
demangle.demangle(char[])
#
--format=dlang
_D6object6Object8opEqualsFC6ObjectZi
object.Object.opEquals(Object)
#
--format=dlang
_D6object6Object8opAssignFC6ObjectZi
object.Object.opAssign(Object)
#
--format=dlang
_D4test2dgDFiYd
test.dg
#
--format=dlang
_D1a1bi
a.b
#
--format=dlang
_D1a1bPFiZi
a.b
#
--format=dlang
_D4test34__T3barVG3uw3_616263VG3wd3_646566Z1xi
test.bar!("abc"w, "def"d).x
#
--format=dlang
_D6plugin8generateFiiZAya
plugin.generate(int, int)
#
--format=dlang
_D6plugin8generateFiiZAxa
plugin.generate(int, int)
#
--format=dlang
_D6plugin8generateFiiZAOa
plugin.generate(int, int)
#
--format=dlang
_D8demangle3fnAFZv3fnBMFZv
demangle.fnA().fnB()
#
--format=dlang
_D8demangle4mainFZv1S3fnCFZv
demangle.main().S.fnC()
#
--format=dlang
_D8demangle4mainFZv1S3fnDMFZv
demangle.main().S.fnD()
#
--format=dlang
_D8demangle4mainFZv5localMFZi
demangle.main().local()
#
--format=dlang
_D3std5ascii9uppercaseyAa
std.ascii.uppercase
#
--format=dlang
_D3std6stream9BOMEndianyG5E3std6system6Endian
std.stream.BOMEndian
#
--format=dlang
_D3std8internal7uni_tab10unicodeNkoyS3std8internal3uni12CodepointSet
std.internal.uni_tab.unicodeNko
#
--format=dlang
_D2gc2gc2GC6addrOfMFPvZPv
gc.gc.GC.addrOf(void*)
#
--format=dlang
_D3std7process10setCLOEXECFibZv
std.process.setCLOEXEC(int, bool)
#
--format=dlang
_D3std6digest2md3MD53putMFNaNbNeMAxhXv
std.digest.md.MD5.put(scope const(ubyte)[]...)
#
--format=dlang
_D3std6mmfile6MmFile13opIndexAssignMFhmZh
std.mmfile.MmFile.opIndexAssign(ubyte, ulong)
#
--format=dlang
_D3std7process18escapeShellCommandFxAAaXAya
std.process.escapeShellCommand(const(char[][])...)
#
--format=dlang
_D4core4sync5mutex5Mutex6__ctorMFC6ObjectZC4core4sync5mutex5Mutex
core.sync.mutex.Mutex.this(Object)
#
--format=dlang
_D6object14TypeInfo_Array8argTypesMFNbNfJC8TypeInfoJC8TypeInfoZi
object.TypeInfo_Array.argTypes(out TypeInfo, out TypeInfo)
#
--format=dlang
_D2rt6dmain211_d_run_mainUiPPaPUAAaZiZi7tryExecMFMDFZvZv
rt.dmain2._d_run_main(int, char**, extern(C) int(char[][]) function*).tryExec(scope void() delegate)
#
--format=dlang
_D6object9Exception6__ctorMFNaNbNfAyaAyamC6object9ThrowableZC9Exception
object.Exception.this(immutable(char)[], immutable(char)[], ulong, object.Throwable)
#
--format=dlang
_D3gcc3deh17parse_lsda_headerFPS3gcc6unwind7generic15_Unwind_ContextPhPS3gcc3deh16lsda_header_infoZPh
gcc.deh.parse_lsda_header(gcc.unwind.generic._Unwind_Context*, ubyte*, gcc.deh.lsda_header_info*)
#
--format=dlang
_D3std6socket23UnknownAddressReference6__ctorMFPS4core3sys5posix3sys6socket8sockaddrkZC3std6socket23UnknownAddressReference
std.socket.UnknownAddressReference.this(core.sys.posix.sys.socket.sockaddr*, uint)
#
--format=dlang
_D8demangle20__T2fnVAiA4i1i2i3i4Z2fnFZv
demangle.fn!([1, 2, 3, 4]).fn()
#
--format=dlang
_D8demangle10__T2fnVi1Z2fnFZv
demangle.fn!(1).fn()
#
--format=dlang
_D8demangle26__T2fnVS8demangle1SS2i1i2Z2fnFZv
demangle.fn!(demangle.S(1, 2)).fn()
#
--format=dlang
_D8demangle13__T2fnVeeNANZ2fnFZv
demangle.fn!(NaN).fn()
#
--format=dlang
_D8demangle14__T2fnVeeNINFZ2fnFZv
demangle.fn!(-Inf).fn()
#
--format=dlang
_D8demangle13__T2fnVeeINFZ2fnFZv
demangle.fn!(Inf).fn()
#
--format=dlang
_D8demangle21__T2fnVHiiA2i1i2i3i4Z2fnFZv
demangle.fn!([1:2, 3:4]).fn()
#
--format=dlang
_D8demangle2fnFNgiZNgi
demangle.fn(inout(int))
#
--format=dlang
_D8demangle29__T2fnVa97Va9Va0Vu257Vw65537Z2fnFZv
demangle.fn!('a', '\x09', '\x00', '\u0101', '\U00010001').fn()
#
--format=dlang
_D2gc11gctemplates56__T8mkBitmapTS3std5range13__T4iotaTiTiZ4iotaFiiZ6ResultZ8mkBitmapFNbNiNfPmmZv
gc.gctemplates.mkBitmap!(std.range.iota!(int, int).iota(int, int).Result).mkBitmap(ulong*, ulong)
#
--format=dlang
_D8serenity9persister6Sqlite70__T15SqlitePersisterTS8serenity9persister6Sqlite11__unittest6FZv4TestZ15SqlitePersister12__T7opIndexZ7opIndexMFmZS8serenity9persister6Sqlite11__unittest6FZv4Test
serenity.persister.Sqlite.SqlitePersister!(serenity.persister.Sqlite.__unittest6().Test).SqlitePersister.opIndex!().opIndex(ulong)
#
--format=dlang
_D4test4mainFZv5localMFZi
test.main().local()
