annotate gcc/testsuite/gdc.test/fail_compilation/fail13775.d @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents 1830386684a0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
145
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1 // REQUIRED_ARGS: -o-
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
2 /*
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
3 TEST_OUTPUT:
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
4 ---
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
5 fail_compilation/fail13775.d(17): Error: cannot cast expression `ubytes[0..2]` of type `ubyte[2]` to `ubyte[1]`
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
6 fail_compilation/fail13775.d(18): Error: cannot cast expression `ubytes[0..2]` of type `ubyte[2]` to `ubyte[3]`
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
7 fail_compilation/fail13775.d(19): Error: cannot cast expression `ubytes[0..2]` of type `ubyte[2]` to `byte[1]`
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
8 fail_compilation/fail13775.d(20): Error: cannot cast expression `ubytes[0..2]` of type `ubyte[2]` to `byte[3]`
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
9 ---
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
10 */
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
11
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
12 void main()
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
13 {
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
14 ubyte[4] ubytes = [1,2,3,4];
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
15
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
16 // CT-known slicing succeeds but sizes cannot match
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
17 auto ng1 = cast(ubyte[1]) ubytes[0 .. 2]; // ubyte[2] to ubyte[1]
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
18 auto ng2 = cast(ubyte[3]) ubytes[0 .. 2]; // ubyte[2] to ubyte[3]
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
19 auto ng3 = cast( byte[1]) ubytes[0 .. 2]; // ubyte[2] to byte[1]
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
20 auto ng4 = cast( byte[3]) ubytes[0 .. 2]; // ubyte[2] to byte[3]
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
21 }