Commit 78893e2
committed
librustc: handle repr on structs, require it for ffi, unify with packed
As of RFC 18, struct layout is undefined. Opting into a C-compatible struct
layout is now down with #[repr(C)]. For consistency, specifying a packed
layout is now also down with #[repr(packed)]. Both can be specified.
[breaking-change]1 parent ac50ab5 commit 78893e2
File tree
23 files changed
+243
-68
lines changed- src
- librustc/middle
- trans
- typeck/check
- libstd/rt
- libsyntax
- test
- auxiliary
- compile-fail
- debuginfo
- run-pass
23 files changed
+243
-68
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
482 | 483 | | |
483 | 484 | | |
484 | 485 | | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
485 | 489 | | |
486 | 490 | | |
487 | 491 | | |
| |||
923 | 927 | | |
924 | 928 | | |
925 | 929 | | |
926 | | - | |
927 | | - | |
| 930 | + | |
| 931 | + | |
928 | 932 | | |
929 | 933 | | |
930 | 934 | | |
931 | | - | |
| 935 | + | |
932 | 936 | | |
933 | 937 | | |
934 | 938 | | |
935 | 939 | | |
936 | | - | |
| 940 | + | |
937 | 941 | | |
938 | 942 | | |
939 | 943 | | |
940 | 944 | | |
941 | | - | |
942 | | - | |
943 | | - | |
944 | | - | |
945 | | - | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
| 950 | + | |
| 951 | + | |
| 952 | + | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
| 972 | + | |
| 973 | + | |
| 974 | + | |
| 975 | + | |
| 976 | + | |
| 977 | + | |
| 978 | + | |
946 | 979 | | |
947 | 980 | | |
948 | 981 | | |
| |||
1100 | 1133 | | |
1101 | 1134 | | |
1102 | 1135 | | |
| 1136 | + | |
1103 | 1137 | | |
1104 | 1138 | | |
1105 | 1139 | | |
| |||
1109 | 1143 | | |
1110 | 1144 | | |
1111 | 1145 | | |
1112 | | - | |
| 1146 | + | |
1113 | 1147 | | |
1114 | 1148 | | |
1115 | 1149 | | |
| |||
1178 | 1212 | | |
1179 | 1213 | | |
1180 | 1214 | | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
1181 | 1219 | | |
1182 | 1220 | | |
1183 | 1221 | | |
| |||
1189 | 1227 | | |
1190 | 1228 | | |
1191 | 1229 | | |
1192 | | - | |
1193 | 1230 | | |
1194 | 1231 | | |
1195 | 1232 | | |
| |||
1977 | 2014 | | |
1978 | 2015 | | |
1979 | 2016 | | |
| 2017 | + | |
1980 | 2018 | | |
1981 | 2019 | | |
1982 | 2020 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
49 | 48 | | |
50 | | - | |
| 49 | + | |
| 50 | + | |
51 | 51 | | |
| 52 | + | |
52 | 53 | | |
53 | 54 | | |
54 | 55 | | |
| |||
165 | 166 | | |
166 | 167 | | |
167 | 168 | | |
168 | | - | |
| 169 | + | |
169 | 170 | | |
170 | 171 | | |
171 | 172 | | |
| |||
254 | 255 | | |
255 | 256 | | |
256 | 257 | | |
257 | | - | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
258 | 262 | | |
259 | 263 | | |
260 | 264 | | |
261 | 265 | | |
262 | 266 | | |
263 | | - | |
| 267 | + | |
264 | 268 | | |
265 | | - | |
| 269 | + | |
266 | 270 | | |
267 | 271 | | |
268 | | - | |
| 272 | + | |
269 | 273 | | |
270 | 274 | | |
271 | 275 | | |
272 | 276 | | |
273 | 277 | | |
274 | 278 | | |
275 | | - | |
| 279 | + | |
276 | 280 | | |
277 | | - | |
278 | | - | |
279 | | - | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
280 | 310 | | |
281 | | - | |
| 311 | + | |
282 | 312 | | |
283 | 313 | | |
284 | 314 | | |
| |||
370 | 400 | | |
371 | 401 | | |
372 | 402 | | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
373 | 406 | | |
374 | 407 | | |
375 | 408 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3928 | 3928 | | |
3929 | 3929 | | |
3930 | 3930 | | |
3931 | | - | |
| 3931 | + | |
3932 | 3932 | | |
3933 | | - | |
| 3933 | + | |
3934 | 3934 | | |
3935 | 3935 | | |
3936 | 3936 | | |
3937 | 3937 | | |
3938 | 3938 | | |
3939 | 3939 | | |
3940 | 3940 | | |
3941 | | - | |
3942 | | - | |
| 3941 | + | |
| 3942 | + | |
3943 | 3943 | | |
3944 | 3944 | | |
3945 | | - | |
| 3945 | + | |
3946 | 3946 | | |
3947 | 3947 | | |
3948 | 3948 | | |
3949 | 3949 | | |
3950 | 3950 | | |
| 3951 | + | |
| 3952 | + | |
| 3953 | + | |
| 3954 | + | |
| 3955 | + | |
| 3956 | + | |
| 3957 | + | |
| 3958 | + | |
| 3959 | + | |
| 3960 | + | |
| 3961 | + | |
| 3962 | + | |
3951 | 3963 | | |
3952 | 3964 | | |
3953 | 3965 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3803 | 3803 | | |
3804 | 3804 | | |
3805 | 3805 | | |
| 3806 | + | |
| 3807 | + | |
| 3808 | + | |
3806 | 3809 | | |
3807 | 3810 | | |
3808 | 3811 | | |
| |||
3816 | 3819 | | |
3817 | 3820 | | |
3818 | 3821 | | |
3819 | | - | |
| 3822 | + | |
3820 | 3823 | | |
3821 | 3824 | | |
3822 | 3825 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
544 | 544 | | |
545 | 545 | | |
546 | 546 | | |
547 | | - | |
| 547 | + | |
548 | 548 | | |
549 | 549 | | |
550 | 550 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
464 | 464 | | |
465 | 465 | | |
466 | 466 | | |
467 | | - | |
| 467 | + | |
468 | 468 | | |
469 | 469 | | |
470 | 470 | | |
| |||
496 | 496 | | |
497 | 497 | | |
498 | 498 | | |
499 | | - | |
| 499 | + | |
500 | 500 | | |
501 | 501 | | |
502 | 502 | | |
| |||
506 | 506 | | |
507 | 507 | | |
508 | 508 | | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
509 | 547 | | |
510 | 548 | | |
511 | 549 | | |
| |||
526 | 564 | | |
527 | 565 | | |
528 | 566 | | |
529 | | - | |
| 567 | + | |
| 568 | + | |
530 | 569 | | |
531 | 570 | | |
532 | 571 | | |
533 | 572 | | |
534 | 573 | | |
535 | 574 | | |
536 | 575 | | |
537 | | - | |
| 576 | + | |
| 577 | + | |
538 | 578 | | |
539 | 579 | | |
540 | 580 | | |
| |||
559 | 599 | | |
560 | 600 | | |
561 | 601 | | |
562 | | - | |
| 602 | + | |
563 | 603 | | |
564 | 604 | | |
565 | 605 | | |
0 commit comments