You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Previously if the expression contained generic consts and did not have a directly equivalent
type, transmuting the type in this way was forbidden, despite the two sizes being identical.
Instead, we should be able to lazily tell if the two consts are identical, and if so allow them
to be transmuted.
= note: target type: `[u32; W * H * H]` (generic size)
39
+
40
+
error[E0512]: cannot transmute between types of different sizes, or dependently-sized types
41
+
--> $DIR/transmute-fail.rs:29:5
42
+
|
43
+
LL | std::mem::transmute(v)
44
+
| ^^^^^^^^^^^^^^^^^^^
45
+
|
46
+
= note: source type: `[[[u32; 8888888]; 9999999]; 777777777]` (values of the type `[[[u32; 8888888]; 9999999]; 777777777]` are too big for the current architecture)
47
+
= note: target type: `[[[u32; 9999999]; 777777777]; 8888888]` (values of the type `[[[u32; 9999999]; 777777777]; 8888888]` are too big for the current architecture)
48
+
49
+
error: aborting due to 6 previous errors
50
+
51
+
Some errors have detailed explanations: E0308, E0512.
52
+
For more information about an error, try `rustc --explain E0308`.
0 commit comments