Commit 604f049
committed
Restore
The exact semantics of `is_null` on unsized pointers are still debatable,
especially for trait objects. It may be legal to call `*mut self`
methods on a trait object someday, as with Go interfaces, so `is_null`
might need to validate the vtable pointer too.
For `as_ref` and `as_mut`, we're assuming that you cannot have a non-null
data pointer with a null vtable, so casting the unsized check is fine.T: Sized on ptr::is_null
1 parent 40a678d commit 604f049
3 files changed
+15
-55
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
| 31 | + | |
| 32 | + | |
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
476 | 476 | | |
477 | 477 | | |
478 | 478 | | |
479 | | - | |
480 | | - | |
481 | | - | |
482 | | - | |
483 | | - | |
484 | 479 | | |
485 | 480 | | |
486 | 481 | | |
| |||
492 | 487 | | |
493 | 488 | | |
494 | 489 | | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | | - | |
| 490 | + | |
| 491 | + | |
499 | 492 | | |
500 | 493 | | |
501 | 494 | | |
| |||
527 | 520 | | |
528 | 521 | | |
529 | 522 | | |
530 | | - | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
531 | 526 | | |
532 | 527 | | |
533 | 528 | | |
| |||
1114 | 1109 | | |
1115 | 1110 | | |
1116 | 1111 | | |
1117 | | - | |
1118 | | - | |
1119 | | - | |
1120 | | - | |
1121 | | - | |
1122 | 1112 | | |
1123 | 1113 | | |
1124 | 1114 | | |
| |||
1130 | 1120 | | |
1131 | 1121 | | |
1132 | 1122 | | |
1133 | | - | |
1134 | | - | |
1135 | | - | |
1136 | | - | |
| 1123 | + | |
| 1124 | + | |
1137 | 1125 | | |
1138 | 1126 | | |
1139 | 1127 | | |
| |||
1165 | 1153 | | |
1166 | 1154 | | |
1167 | 1155 | | |
1168 | | - | |
| 1156 | + | |
| 1157 | + | |
| 1158 | + | |
1169 | 1159 | | |
1170 | 1160 | | |
1171 | 1161 | | |
| |||
1289 | 1279 | | |
1290 | 1280 | | |
1291 | 1281 | | |
1292 | | - | |
| 1282 | + | |
| 1283 | + | |
| 1284 | + | |
1293 | 1285 | | |
1294 | 1286 | | |
1295 | 1287 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | 65 | | |
99 | 66 | | |
100 | 67 | | |
| |||
0 commit comments