dmd/compiler/test/compilable/test21806.d
2022-07-09 18:53:07 +02:00

24 lines
576 B
D

// https://issues.dlang.org/show_bug.cgi?id=21806
void main()
{
ubyte[16] arr;
static assert(is(typeof( fun(arr[])) == char));
static assert(is(typeof(funtp(arr[])) == char));
static assert(is(typeof( bar(arr[])) == char));
}
// functions
char fun(ubyte[] arr) { return 'X'; }
int fun(ubyte[16] arr) { return 123; }
// function templates
char funtp()(ubyte[] arr) { return 'X'; }
int funtp(size_t N)(ubyte[N] arr) { return 123; }
// original case with 'in'
char bar()(in ubyte[] arr) { return 'X'; }
int bar(size_t N)(in ubyte[N] arr) { return 123; }