Commit 80f9834
committed
add index type to the array type
This commit addresses a gap between the arrays of the C programming language
and standard array theories. In C, array indices are subject to arithmetic
promotion, and thus, may have a variety of types, depending on the operand
type. Standard array theories expect one specific index type per array
type.
The C front-end now annotates the array type with that index type. We will
eventually enforce that all index expressions use this type.1 parent e64de21 commit 80f9834
File tree
5 files changed
+40
-19
lines changed- src
- ansi-c
- solvers/smt2
- util
5 files changed
+40
-19
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
524 | 524 | | |
525 | 525 | | |
526 | 526 | | |
527 | | - | |
528 | | - | |
529 | | - | |
530 | | - | |
| 527 | + | |
531 | 528 | | |
532 | 529 | | |
533 | | - | |
| 530 | + | |
534 | 531 | | |
535 | 532 | | |
536 | 533 | | |
537 | 534 | | |
538 | 535 | | |
539 | 536 | | |
540 | 537 | | |
541 | | - | |
| 538 | + | |
542 | 539 | | |
543 | 540 | | |
544 | 541 | | |
| |||
551 | 548 | | |
552 | 549 | | |
553 | 550 | | |
554 | | - | |
| 551 | + | |
555 | 552 | | |
556 | 553 | | |
557 | 554 | | |
| |||
560 | 557 | | |
561 | 558 | | |
562 | 559 | | |
563 | | - | |
| 560 | + | |
| 561 | + | |
564 | 562 | | |
565 | | - | |
| 563 | + | |
| 564 | + | |
566 | 565 | | |
| 566 | + | |
| 567 | + | |
567 | 568 | | |
568 | 569 | | |
569 | 570 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3097 | 3097 | | |
3098 | 3098 | | |
3099 | 3099 | | |
3100 | | - | |
| 3100 | + | |
3101 | 3101 | | |
3102 | 3102 | | |
3103 | 3103 | | |
| |||
4041 | 4041 | | |
4042 | 4042 | | |
4043 | 4043 | | |
4044 | | - | |
| 4044 | + | |
4045 | 4045 | | |
4046 | 4046 | | |
4047 | 4047 | | |
| |||
4267 | 4267 | | |
4268 | 4268 | | |
4269 | 4269 | | |
4270 | | - | |
| 4270 | + | |
4271 | 4271 | | |
4272 | 4272 | | |
4273 | 4273 | | |
| |||
4276 | 4276 | | |
4277 | 4277 | | |
4278 | 4278 | | |
4279 | | - | |
| 4279 | + | |
4280 | 4280 | | |
4281 | 4281 | | |
4282 | 4282 | | |
| |||
4891 | 4891 | | |
4892 | 4892 | | |
4893 | 4893 | | |
4894 | | - | |
| 4894 | + | |
4895 | 4895 | | |
4896 | 4896 | | |
4897 | 4897 | | |
| |||
4972 | 4972 | | |
4973 | 4973 | | |
4974 | 4974 | | |
4975 | | - | |
| 4975 | + | |
4976 | 4976 | | |
4977 | 4977 | | |
4978 | 4978 | | |
| |||
5008 | 5008 | | |
5009 | 5009 | | |
5010 | 5010 | | |
5011 | | - | |
| 5011 | + | |
5012 | 5012 | | |
5013 | 5013 | | |
5014 | 5014 | | |
| |||
5127 | 5127 | | |
5128 | 5128 | | |
5129 | 5129 | | |
| 5130 | + | |
5130 | 5131 | | |
5131 | | - | |
| 5132 | + | |
5132 | 5133 | | |
5133 | 5134 | | |
5134 | 5135 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
| 104 | + | |
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
35 | | - | |
36 | | - | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
37 | 43 | | |
38 | 44 | | |
39 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
771 | 771 | | |
772 | 772 | | |
773 | 773 | | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
774 | 782 | | |
775 | 783 | | |
776 | 784 | | |
| |||
787 | 795 | | |
788 | 796 | | |
789 | 797 | | |
| 798 | + | |
| 799 | + | |
790 | 800 | | |
791 | 801 | | |
792 | 802 | | |
793 | 803 | | |
794 | 804 | | |
| 805 | + | |
| 806 | + | |
795 | 807 | | |
796 | 808 | | |
797 | 809 | | |
| |||
0 commit comments