source: src/Tests/Expect-r/InferParam.txt@ f6d7e0f

ADT aaron-thesis arm-eh ast-experimental cleanup-dtors ctor deferred_resn demangler enum forall-pointer-decay gc_noraii jacob/cs343-translation jenkins-sandbox memory new-ast new-ast-unique-expr new-env no_list persistent-indexer pthread-emulation qualifiedEnum resolv-new string with_gc
Last change on this file since f6d7e0f was b1d6dd5, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

fix parsing error for EOF message, change cfa-ccp -x flag to -v, regression testing third attempt: consolidate example programs

  • Property mode set to 100644
File size: 78.8 KB
Line 
1nameExpr is i
2decl is i: function
3 with parameters
4 float
5 returning
6 nothing
7
8newExpr is Variable Expression: i: function
9 with parameters
10 float
11 returning
12 nothing
13
14
15alternatives before prune:
16Cost ( 0, 0, 0 ): Variable Expression: i: function
17 with parameters
18 float
19 returning
20 nothing
21
22(types:
23 pointer to function
24 with parameters
25 float
26 returning
27 nothing
28
29)
30Environment:
31
32there are 1 alternatives before elimination
33there are 1 alternatives after elimination
34nameExpr is g
35decl is g: forall
36 T: type
37 with assertions
38 ?=?: pointer to function
39 with parameters
40 pointer to instance of type T (not function type)
41 instance of type T (not function type)
42 returning
43 instance of type T (not function type)
44
45
46 U: type
47 with assertions
48 ?=?: pointer to function
49 with parameters
50 pointer to instance of type U (not function type)
51 instance of type U (not function type)
52 returning
53 instance of type U (not function type)
54
55 f: pointer to function
56 with parameters
57 instance of type T (not function type)
58 returning
59 instance of type U (not function type)
60
61
62 function
63 with parameters
64 instance of type T (not function type)
65 returning
66 instance of type U (not function type)
67
68newExpr is Variable Expression: g: forall
69 T: type
70 with assertions
71 ?=?: pointer to function
72 with parameters
73 pointer to instance of type T (not function type)
74 instance of type T (not function type)
75 returning
76 instance of type T (not function type)
77
78
79 U: type
80 with assertions
81 ?=?: pointer to function
82 with parameters
83 pointer to instance of type U (not function type)
84 instance of type U (not function type)
85 returning
86 instance of type U (not function type)
87
88 f: pointer to function
89 with parameters
90 instance of type T (not function type)
91 returning
92 instance of type U (not function type)
93
94
95 function
96 with parameters
97 instance of type T (not function type)
98 returning
99 instance of type U (not function type)
100
101
102alternatives before prune:
103Cost ( 0, 0, 0 ): Variable Expression: g: forall
104 T: type
105 with assertions
106 ?=?: pointer to function
107 with parameters
108 pointer to instance of type T (not function type)
109 instance of type T (not function type)
110 returning
111 instance of type T (not function type)
112
113
114 U: type
115 with assertions
116 ?=?: pointer to function
117 with parameters
118 pointer to instance of type U (not function type)
119 instance of type U (not function type)
120 returning
121 instance of type U (not function type)
122
123 f: pointer to function
124 with parameters
125 instance of type T (not function type)
126 returning
127 instance of type U (not function type)
128
129
130 function
131 with parameters
132 instance of type T (not function type)
133 returning
134 instance of type U (not function type)
135
136(types:
137 pointer to forall
138 _0_T: type
139 with assertions
140 ?=?: pointer to function
141 with parameters
142 pointer to instance of type _0_T (not function type)
143 instance of type _0_T (not function type)
144 returning
145 instance of type _0_T (not function type)
146
147
148 _1_U: type
149 with assertions
150 ?=?: pointer to function
151 with parameters
152 pointer to instance of type _1_U (not function type)
153 instance of type _1_U (not function type)
154 returning
155 instance of type _1_U (not function type)
156
157 f: pointer to function
158 with parameters
159 instance of type _0_T (not function type)
160 returning
161 instance of type _1_U (not function type)
162
163
164 function
165 with parameters
166 instance of type _0_T (not function type)
167 returning
168 instance of type _1_U (not function type)
169
170)
171Environment:
172
173there are 1 alternatives before elimination
174there are 1 alternatives after elimination
175nameExpr is a
176decl is a: signed int
177newExpr is Variable Expression: a: signed int
178
179alternatives before prune:
180Cost ( 0, 0, 0 ): Variable Expression: a: signed int
181(types:
182 lvalue signed int
183)
184Environment:
185
186there are 1 alternatives before elimination
187there are 1 alternatives after elimination
188findSubExprs
189Cost ( 0, 0, 0 ): Variable Expression: a: signed int
190(types:
191 lvalue signed int
192)
193Environment:
194
195working on alternative:
196 Cost ( 0, 0, 0 ): Variable Expression: g: forall
197 T: type
198 with assertions
199 ?=?: pointer to function
200 with parameters
201 pointer to instance of type T (not function type)
202 instance of type T (not function type)
203 returning
204 instance of type T (not function type)
205
206
207 U: type
208 with assertions
209 ?=?: pointer to function
210 with parameters
211 pointer to instance of type U (not function type)
212 instance of type U (not function type)
213 returning
214 instance of type U (not function type)
215
216 f: pointer to function
217 with parameters
218 instance of type T (not function type)
219 returning
220 instance of type U (not function type)
221
222
223 function
224 with parameters
225 instance of type T (not function type)
226 returning
227 instance of type U (not function type)
228
229(types:
230 pointer to forall
231 _0_T: type
232 with assertions
233 ?=?: pointer to function
234 with parameters
235 pointer to instance of type _0_T (not function type)
236 instance of type _0_T (not function type)
237 returning
238 instance of type _0_T (not function type)
239
240
241 _1_U: type
242 with assertions
243 ?=?: pointer to function
244 with parameters
245 pointer to instance of type _1_U (not function type)
246 instance of type _1_U (not function type)
247 returning
248 instance of type _1_U (not function type)
249
250 f: pointer to function
251 with parameters
252 instance of type _0_T (not function type)
253 returning
254 instance of type _1_U (not function type)
255
256
257 function
258 with parameters
259 instance of type _0_T (not function type)
260 returning
261 instance of type _1_U (not function type)
262
263)
264 Environment:
265formal type is instance of type _0_T (not function type)
266actual type is lvalue signed int
267need assertions:
268?=?: pointer to function
269 with parameters
270 pointer to instance of type _1_U (not function type)
271 instance of type _1_U (not function type)
272 returning
273 instance of type _1_U (not function type)
274(used)f: pointer to function
275 with parameters
276 instance of type _0_T (not function type)
277 returning
278 instance of type _1_U (not function type)
279(used)?=?: pointer to function
280 with parameters
281 pointer to instance of type _0_T (not function type)
282 instance of type _0_T (not function type)
283 returning
284 instance of type _0_T (not function type)
285(used)============= original indexer
286===idTable===
287===typeTable===
288===structTable===
289===enumTable===
290===unionTable===
291===contextTable===
292============= new indexer
293===idTable===
294===typeTable===
295===structTable===
296===enumTable===
297===unionTable===
298===contextTable===
299inferRecursive: assertion is ?=?: pointer to function
300 with parameters
301 pointer to instance of type _1_U (not function type)
302 instance of type _1_U (not function type)
303 returning
304 instance of type _1_U (not function type)
305
306inferRecursive: candidate is ?=?: function
307 with parameters
308 pointer to double
309 double
310 returning
311 double
312
313unifying pointer to function
314 with parameters
315 pointer to instance of type _1_U (not function type)
316 instance of type _1_U (not function type)
317 returning
318 instance of type _1_U (not function type)
319 with pointer to function
320 with parameters
321 pointer to double
322 double
323 returning
324 double
325
326success!
327satisfying assertion 20 ?=?: pointer to function
328 with parameters
329 pointer to instance of type _1_U (not function type)
330 instance of type _1_U (not function type)
331 returning
332 instance of type _1_U (not function type)
333 with declaration 12 ?=?: function
334 with parameters
335 pointer to double
336 double
337 returning
338 double
339
340inferRecursive: assertion is f: pointer to function
341 with parameters
342 instance of type _0_T (not function type)
343 returning
344 instance of type _1_U (not function type)
345
346inferRecursive: candidate is f: function
347 with parameters
348 signed int
349 returning
350 double
351
352unifying pointer to function
353 with parameters
354 instance of type _0_T (not function type)
355 returning
356 instance of type _1_U (not function type)
357 with pointer to function
358 with parameters
359 signed int
360 returning
361 double
362
363success!
364satisfying assertion 23 f: pointer to function
365 with parameters
366 instance of type _0_T (not function type)
367 returning
368 instance of type _1_U (not function type)
369 with declaration 32 f: function
370 with parameters
371 signed int
372 returning
373 double
374
375inferRecursive: assertion is ?=?: pointer to function
376 with parameters
377 pointer to instance of type _0_T (not function type)
378 instance of type _0_T (not function type)
379 returning
380 instance of type _0_T (not function type)
381
382inferRecursive: candidate is ?=?: function
383 with parameters
384 pointer to double
385 double
386 returning
387 double
388
389unifying pointer to function
390 with parameters
391 pointer to instance of type _0_T (not function type)
392 instance of type _0_T (not function type)
393 returning
394 instance of type _0_T (not function type)
395 with pointer to function
396 with parameters
397 pointer to double
398 double
399 returning
400 double
401
402inferRecursive: candidate is ?=?: function
403 with parameters
404 pointer to float
405 float
406 returning
407 float
408
409unifying pointer to function
410 with parameters
411 pointer to instance of type _0_T (not function type)
412 instance of type _0_T (not function type)
413 returning
414 instance of type _0_T (not function type)
415 with pointer to function
416 with parameters
417 pointer to float
418 float
419 returning
420 float
421
422inferRecursive: candidate is ?=?: function
423 with parameters
424 pointer to signed int
425 signed int
426 returning
427 signed int
428
429unifying pointer to function
430 with parameters
431 pointer to instance of type _0_T (not function type)
432 instance of type _0_T (not function type)
433 returning
434 instance of type _0_T (not function type)
435 with pointer to function
436 with parameters
437 pointer to signed int
438 signed int
439 returning
440 signed int
441
442success!
443satisfying assertion 16 ?=?: pointer to function
444 with parameters
445 pointer to instance of type _0_T (not function type)
446 instance of type _0_T (not function type)
447 returning
448 instance of type _0_T (not function type)
449 with declaration 4 ?=?: function
450 with parameters
451 pointer to signed int
452 signed int
453 returning
454 signed int
455
456inferRecursive: candidate is f: function
457 with parameters
458 signed int
459 returning
460 float
461
462unifying pointer to function
463 with parameters
464 instance of type _0_T (not function type)
465 returning
466 instance of type _1_U (not function type)
467 with pointer to function
468 with parameters
469 signed int
470 returning
471 float
472
473inferRecursive: candidate is ?=?: function
474 with parameters
475 pointer to float
476 float
477 returning
478 float
479
480unifying pointer to function
481 with parameters
482 pointer to instance of type _1_U (not function type)
483 instance of type _1_U (not function type)
484 returning
485 instance of type _1_U (not function type)
486 with pointer to function
487 with parameters
488 pointer to float
489 float
490 returning
491 float
492
493success!
494satisfying assertion 20 ?=?: pointer to function
495 with parameters
496 pointer to instance of type _1_U (not function type)
497 instance of type _1_U (not function type)
498 returning
499 instance of type _1_U (not function type)
500 with declaration 8 ?=?: function
501 with parameters
502 pointer to float
503 float
504 returning
505 float
506
507inferRecursive: assertion is f: pointer to function
508 with parameters
509 instance of type _0_T (not function type)
510 returning
511 instance of type _1_U (not function type)
512
513inferRecursive: candidate is f: function
514 with parameters
515 signed int
516 returning
517 double
518
519unifying pointer to function
520 with parameters
521 instance of type _0_T (not function type)
522 returning
523 instance of type _1_U (not function type)
524 with pointer to function
525 with parameters
526 signed int
527 returning
528 double
529
530inferRecursive: candidate is f: function
531 with parameters
532 signed int
533 returning
534 float
535
536unifying pointer to function
537 with parameters
538 instance of type _0_T (not function type)
539 returning
540 instance of type _1_U (not function type)
541 with pointer to function
542 with parameters
543 signed int
544 returning
545 float
546
547success!
548satisfying assertion 23 f: pointer to function
549 with parameters
550 instance of type _0_T (not function type)
551 returning
552 instance of type _1_U (not function type)
553 with declaration 29 f: function
554 with parameters
555 signed int
556 returning
557 float
558
559inferRecursive: assertion is ?=?: pointer to function
560 with parameters
561 pointer to instance of type _0_T (not function type)
562 instance of type _0_T (not function type)
563 returning
564 instance of type _0_T (not function type)
565
566inferRecursive: candidate is ?=?: function
567 with parameters
568 pointer to double
569 double
570 returning
571 double
572
573unifying pointer to function
574 with parameters
575 pointer to instance of type _0_T (not function type)
576 instance of type _0_T (not function type)
577 returning
578 instance of type _0_T (not function type)
579 with pointer to function
580 with parameters
581 pointer to double
582 double
583 returning
584 double
585
586inferRecursive: candidate is ?=?: function
587 with parameters
588 pointer to float
589 float
590 returning
591 float
592
593unifying pointer to function
594 with parameters
595 pointer to instance of type _0_T (not function type)
596 instance of type _0_T (not function type)
597 returning
598 instance of type _0_T (not function type)
599 with pointer to function
600 with parameters
601 pointer to float
602 float
603 returning
604 float
605
606inferRecursive: candidate is ?=?: function
607 with parameters
608 pointer to signed int
609 signed int
610 returning
611 signed int
612
613unifying pointer to function
614 with parameters
615 pointer to instance of type _0_T (not function type)
616 instance of type _0_T (not function type)
617 returning
618 instance of type _0_T (not function type)
619 with pointer to function
620 with parameters
621 pointer to signed int
622 signed int
623 returning
624 signed int
625
626success!
627satisfying assertion 16 ?=?: pointer to function
628 with parameters
629 pointer to instance of type _0_T (not function type)
630 instance of type _0_T (not function type)
631 returning
632 instance of type _0_T (not function type)
633 with declaration 4 ?=?: function
634 with parameters
635 pointer to signed int
636 signed int
637 returning
638 signed int
639
640inferRecursive: candidate is ?=?: function
641 with parameters
642 pointer to signed int
643 signed int
644 returning
645 signed int
646
647unifying pointer to function
648 with parameters
649 pointer to instance of type _1_U (not function type)
650 instance of type _1_U (not function type)
651 returning
652 instance of type _1_U (not function type)
653 with pointer to function
654 with parameters
655 pointer to signed int
656 signed int
657 returning
658 signed int
659
660success!
661satisfying assertion 20 ?=?: pointer to function
662 with parameters
663 pointer to instance of type _1_U (not function type)
664 instance of type _1_U (not function type)
665 returning
666 instance of type _1_U (not function type)
667 with declaration 4 ?=?: function
668 with parameters
669 pointer to signed int
670 signed int
671 returning
672 signed int
673
674inferRecursive: assertion is f: pointer to function
675 with parameters
676 instance of type _0_T (not function type)
677 returning
678 instance of type _1_U (not function type)
679
680inferRecursive: candidate is f: function
681 with parameters
682 signed int
683 returning
684 double
685
686unifying pointer to function
687 with parameters
688 instance of type _0_T (not function type)
689 returning
690 instance of type _1_U (not function type)
691 with pointer to function
692 with parameters
693 signed int
694 returning
695 double
696
697inferRecursive: candidate is f: function
698 with parameters
699 signed int
700 returning
701 float
702
703unifying pointer to function
704 with parameters
705 instance of type _0_T (not function type)
706 returning
707 instance of type _1_U (not function type)
708 with pointer to function
709 with parameters
710 signed int
711 returning
712 float
713
714actual expression:
715 Variable Expression: a: signed int
716--- results are
717 lvalue signed int
718
719converting lvalue signed int
720 to instance of type _0_T (not function type)
721cost is( 0, 0, 0 )
722
723converting pointer to function
724 with parameters
725 pointer to signed int
726 signed int
727 returning
728 signed int
729
730 to pointer to function
731 with parameters
732 pointer to instance of type _0_T (not function type)
733 instance of type _0_T (not function type)
734 returning
735 instance of type _0_T (not function type)
736
737cost of conversion is ( 0, 0, 0 )
738
739converting pointer to function
740 with parameters
741 pointer to double
742 double
743 returning
744 double
745
746 to pointer to function
747 with parameters
748 pointer to instance of type _1_U (not function type)
749 instance of type _1_U (not function type)
750 returning
751 instance of type _1_U (not function type)
752
753cost of conversion is ( 0, 0, 0 )
754
755converting pointer to function
756 with parameters
757 signed int
758 returning
759 double
760
761 to pointer to function
762 with parameters
763 instance of type _0_T (not function type)
764 returning
765 instance of type _1_U (not function type)
766
767cost of conversion is ( 0, 0, 0 )
768Case +++++++++++++
769formals are:
770 instance of type _0_T (not function type)
771actuals are:
772 Variable Expression: a: signed int
773
774bindings are:
775 ( _0_T ) -> signed int
776 ( _1_U ) -> double (no widening)
777cost of conversion is:( 0, 9, 0 )
778actual expression:
779 Variable Expression: a: signed int
780--- results are
781 lvalue signed int
782
783converting lvalue signed int
784 to instance of type _0_T (not function type)
785cost is( 0, 0, 0 )
786
787converting pointer to function
788 with parameters
789 pointer to signed int
790 signed int
791 returning
792 signed int
793
794 to pointer to function
795 with parameters
796 pointer to instance of type _0_T (not function type)
797 instance of type _0_T (not function type)
798 returning
799 instance of type _0_T (not function type)
800
801cost of conversion is ( 0, 0, 0 )
802
803converting pointer to function
804 with parameters
805 pointer to float
806 float
807 returning
808 float
809
810 to pointer to function
811 with parameters
812 pointer to instance of type _1_U (not function type)
813 instance of type _1_U (not function type)
814 returning
815 instance of type _1_U (not function type)
816
817cost of conversion is ( 0, 0, 0 )
818
819converting pointer to function
820 with parameters
821 signed int
822 returning
823 float
824
825 to pointer to function
826 with parameters
827 instance of type _0_T (not function type)
828 returning
829 instance of type _1_U (not function type)
830
831cost of conversion is ( 0, 0, 0 )
832Case +++++++++++++
833formals are:
834 instance of type _0_T (not function type)
835actuals are:
836 Variable Expression: a: signed int
837
838bindings are:
839 ( _0_T ) -> signed int
840 ( _1_U ) -> float (no widening)
841cost of conversion is:( 0, 9, 0 )
842alternatives before prune:
843Cost ( 0, 9, 0 ): Application of
844 Variable Expression: g: forall
845 T: type
846 with assertions
847 ?=?: pointer to function
848 with parameters
849 pointer to instance of type T (not function type)
850 instance of type T (not function type)
851 returning
852 instance of type T (not function type)
853
854
855 U: type
856 with assertions
857 ?=?: pointer to function
858 with parameters
859 pointer to instance of type U (not function type)
860 instance of type U (not function type)
861 returning
862 instance of type U (not function type)
863
864 f: pointer to function
865 with parameters
866 instance of type T (not function type)
867 returning
868 instance of type U (not function type)
869
870
871 function
872 with parameters
873 instance of type T (not function type)
874 returning
875 instance of type U (not function type)
876
877to arguments
878 Variable Expression: a: signed int
879
880with inferred parameters:
881 ?=?: function
882 with parameters
883 pointer to signed int
884 signed int
885 returning
886 signed int
887
888 ?=?: function
889 with parameters
890 pointer to double
891 double
892 returning
893 double
894
895 f: function
896 with parameters
897 signed int
898 returning
899 double
900
901(types:
902 instance of type _1_U (not function type)
903)
904Environment: ( _0_T ) -> signed int
905 ( _1_U ) -> double (no widening)
906
907
908Cost ( 0, 9, 0 ): Application of
909 Variable Expression: g: forall
910 T: type
911 with assertions
912 ?=?: pointer to function
913 with parameters
914 pointer to instance of type T (not function type)
915 instance of type T (not function type)
916 returning
917 instance of type T (not function type)
918
919
920 U: type
921 with assertions
922 ?=?: pointer to function
923 with parameters
924 pointer to instance of type U (not function type)
925 instance of type U (not function type)
926 returning
927 instance of type U (not function type)
928
929 f: pointer to function
930 with parameters
931 instance of type T (not function type)
932 returning
933 instance of type U (not function type)
934
935
936 function
937 with parameters
938 instance of type T (not function type)
939 returning
940 instance of type U (not function type)
941
942to arguments
943 Variable Expression: a: signed int
944
945with inferred parameters:
946 ?=?: function
947 with parameters
948 pointer to signed int
949 signed int
950 returning
951 signed int
952
953 ?=?: function
954 with parameters
955 pointer to float
956 float
957 returning
958 float
959
960 f: function
961 with parameters
962 signed int
963 returning
964 float
965
966(types:
967 instance of type _1_U (not function type)
968)
969Environment: ( _0_T ) -> signed int
970 ( _1_U ) -> float (no widening)
971
972
973there are 2 alternatives before elimination
974there are 2 alternatives after elimination
975findSubExprs
976Cost ( 0, 9, 0 ): Application of
977 Variable Expression: g: forall
978 T: type
979 with assertions
980 ?=?: pointer to function
981 with parameters
982 pointer to instance of type T (not function type)
983 instance of type T (not function type)
984 returning
985 instance of type T (not function type)
986
987
988 U: type
989 with assertions
990 ?=?: pointer to function
991 with parameters
992 pointer to instance of type U (not function type)
993 instance of type U (not function type)
994 returning
995 instance of type U (not function type)
996
997 f: pointer to function
998 with parameters
999 instance of type T (not function type)
1000 returning
1001 instance of type U (not function type)
1002
1003
1004 function
1005 with parameters
1006 instance of type T (not function type)
1007 returning
1008 instance of type U (not function type)
1009
1010to arguments
1011 Variable Expression: a: signed int
1012
1013with inferred parameters:
1014 ?=?: function
1015 with parameters
1016 pointer to signed int
1017 signed int
1018 returning
1019 signed int
1020
1021 ?=?: function
1022 with parameters
1023 pointer to float
1024 float
1025 returning
1026 float
1027
1028 f: function
1029 with parameters
1030 signed int
1031 returning
1032 float
1033
1034(types:
1035 float
1036)
1037Environment: ( _0_T ) -> signed int
1038 ( _1_U ) -> float (no widening)
1039
1040
1041Cost ( 0, 9, 0 ): Application of
1042 Variable Expression: g: forall
1043 T: type
1044 with assertions
1045 ?=?: pointer to function
1046 with parameters
1047 pointer to instance of type T (not function type)
1048 instance of type T (not function type)
1049 returning
1050 instance of type T (not function type)
1051
1052
1053 U: type
1054 with assertions
1055 ?=?: pointer to function
1056 with parameters
1057 pointer to instance of type U (not function type)
1058 instance of type U (not function type)
1059 returning
1060 instance of type U (not function type)
1061
1062 f: pointer to function
1063 with parameters
1064 instance of type T (not function type)
1065 returning
1066 instance of type U (not function type)
1067
1068
1069 function
1070 with parameters
1071 instance of type T (not function type)
1072 returning
1073 instance of type U (not function type)
1074
1075to arguments
1076 Variable Expression: a: signed int
1077
1078with inferred parameters:
1079 ?=?: function
1080 with parameters
1081 pointer to signed int
1082 signed int
1083 returning
1084 signed int
1085
1086 ?=?: function
1087 with parameters
1088 pointer to double
1089 double
1090 returning
1091 double
1092
1093 f: function
1094 with parameters
1095 signed int
1096 returning
1097 double
1098
1099(types:
1100 double
1101)
1102Environment: ( _0_T ) -> signed int
1103 ( _1_U ) -> double (no widening)
1104
1105
1106working on alternative:
1107 Cost ( 0, 0, 0 ): Variable Expression: i: function
1108 with parameters
1109 float
1110 returning
1111 nothing
1112
1113(types:
1114 pointer to function
1115 with parameters
1116 float
1117 returning
1118 nothing
1119
1120)
1121 Environment:
1122formal type is float
1123actual type is float
1124need assertions:
1125============= original indexer
1126===idTable===
1127===typeTable===
1128===structTable===
1129===enumTable===
1130===unionTable===
1131===contextTable===
1132============= new indexer
1133===idTable===
1134===typeTable===
1135===structTable===
1136===enumTable===
1137===unionTable===
1138===contextTable===
1139formal type is float
1140actual type is double
1141need assertions:
1142============= original indexer
1143===idTable===
1144===typeTable===
1145===structTable===
1146===enumTable===
1147===unionTable===
1148===contextTable===
1149============= new indexer
1150===idTable===
1151===typeTable===
1152===structTable===
1153===enumTable===
1154===unionTable===
1155===contextTable===
1156actual expression:
1157 Application of
1158 Variable Expression: g: forall
1159 T: type
1160 with assertions
1161 ?=?: pointer to function
1162 with parameters
1163 pointer to instance of type T (not function type)
1164 instance of type T (not function type)
1165 returning
1166 instance of type T (not function type)
1167
1168
1169 U: type
1170 with assertions
1171 ?=?: pointer to function
1172 with parameters
1173 pointer to instance of type U (not function type)
1174 instance of type U (not function type)
1175 returning
1176 instance of type U (not function type)
1177
1178 f: pointer to function
1179 with parameters
1180 instance of type T (not function type)
1181 returning
1182 instance of type U (not function type)
1183
1184
1185 function
1186 with parameters
1187 instance of type T (not function type)
1188 returning
1189 instance of type U (not function type)
1190
1191 to arguments
1192 Variable Expression: a: signed int
1193
1194 with inferred parameters:
1195 ?=?: function
1196 with parameters
1197 pointer to signed int
1198 signed int
1199 returning
1200 signed int
1201
1202 ?=?: function
1203 with parameters
1204 pointer to float
1205 float
1206 returning
1207 float
1208
1209 f: function
1210 with parameters
1211 signed int
1212 returning
1213 float
1214
1215--- results are
1216 float
1217
1218converting float
1219 to float
1220cost is( 0, 0, 0 )
1221Case +++++++++++++
1222formals are:
1223 float
1224actuals are:
1225 Application of
1226 Variable Expression: g: forall
1227 T: type
1228 with assertions
1229 ?=?: pointer to function
1230 with parameters
1231 pointer to instance of type T (not function type)
1232 instance of type T (not function type)
1233 returning
1234 instance of type T (not function type)
1235
1236
1237 U: type
1238 with assertions
1239 ?=?: pointer to function
1240 with parameters
1241 pointer to instance of type U (not function type)
1242 instance of type U (not function type)
1243 returning
1244 instance of type U (not function type)
1245
1246 f: pointer to function
1247 with parameters
1248 instance of type T (not function type)
1249 returning
1250 instance of type U (not function type)
1251
1252
1253 function
1254 with parameters
1255 instance of type T (not function type)
1256 returning
1257 instance of type U (not function type)
1258
1259 to arguments
1260 Variable Expression: a: signed int
1261
1262 with inferred parameters:
1263 ?=?: function
1264 with parameters
1265 pointer to signed int
1266 signed int
1267 returning
1268 signed int
1269
1270 ?=?: function
1271 with parameters
1272 pointer to float
1273 float
1274 returning
1275 float
1276
1277 f: function
1278 with parameters
1279 signed int
1280 returning
1281 float
1282
1283
1284bindings are:
1285 ( _0_T ) -> signed int (no widening)
1286 ( _1_U ) -> float (no widening)
1287cost of conversion is:( 0, 0, 0 )
1288actual expression:
1289 Application of
1290 Variable Expression: g: forall
1291 T: type
1292 with assertions
1293 ?=?: pointer to function
1294 with parameters
1295 pointer to instance of type T (not function type)
1296 instance of type T (not function type)
1297 returning
1298 instance of type T (not function type)
1299
1300
1301 U: type
1302 with assertions
1303 ?=?: pointer to function
1304 with parameters
1305 pointer to instance of type U (not function type)
1306 instance of type U (not function type)
1307 returning
1308 instance of type U (not function type)
1309
1310 f: pointer to function
1311 with parameters
1312 instance of type T (not function type)
1313 returning
1314 instance of type U (not function type)
1315
1316
1317 function
1318 with parameters
1319 instance of type T (not function type)
1320 returning
1321 instance of type U (not function type)
1322
1323 to arguments
1324 Variable Expression: a: signed int
1325
1326 with inferred parameters:
1327 ?=?: function
1328 with parameters
1329 pointer to signed int
1330 signed int
1331 returning
1332 signed int
1333
1334 ?=?: function
1335 with parameters
1336 pointer to double
1337 double
1338 returning
1339 double
1340
1341 f: function
1342 with parameters
1343 signed int
1344 returning
1345 double
1346
1347--- results are
1348 double
1349
1350converting double
1351 to float
1352cost is( 1, 0, 0 )
1353Case +++++++++++++
1354formals are:
1355 float
1356actuals are:
1357 Cast of:
1358 Application of
1359 Variable Expression: g: forall
1360 T: type
1361 with assertions
1362 ?=?: pointer to function
1363 with parameters
1364 pointer to instance of type T (not function type)
1365 instance of type T (not function type)
1366 returning
1367 instance of type T (not function type)
1368
1369
1370 U: type
1371 with assertions
1372 ?=?: pointer to function
1373 with parameters
1374 pointer to instance of type U (not function type)
1375 instance of type U (not function type)
1376 returning
1377 instance of type U (not function type)
1378
1379 f: pointer to function
1380 with parameters
1381 instance of type T (not function type)
1382 returning
1383 instance of type U (not function type)
1384
1385
1386 function
1387 with parameters
1388 instance of type T (not function type)
1389 returning
1390 instance of type U (not function type)
1391
1392 to arguments
1393 Variable Expression: a: signed int
1394
1395 with inferred parameters:
1396 ?=?: function
1397 with parameters
1398 pointer to signed int
1399 signed int
1400 returning
1401 signed int
1402
1403 ?=?: function
1404 with parameters
1405 pointer to double
1406 double
1407 returning
1408 double
1409
1410 f: function
1411 with parameters
1412 signed int
1413 returning
1414 double
1415
1416
1417 to:
1418 float
1419
1420bindings are:
1421 ( _0_T ) -> signed int (no widening)
1422 ( _1_U ) -> double (no widening)
1423cost of conversion is:( 1, 0, 0 )
1424alternatives before prune:
1425Cost ( 0, 0, 0 ): Application of
1426 Variable Expression: i: function
1427 with parameters
1428 float
1429 returning
1430 nothing
1431
1432to arguments
1433 Application of
1434 Variable Expression: g: forall
1435 T: type
1436 with assertions
1437 ?=?: pointer to function
1438 with parameters
1439 pointer to instance of type T (not function type)
1440 instance of type T (not function type)
1441 returning
1442 instance of type T (not function type)
1443
1444
1445 U: type
1446 with assertions
1447 ?=?: pointer to function
1448 with parameters
1449 pointer to instance of type U (not function type)
1450 instance of type U (not function type)
1451 returning
1452 instance of type U (not function type)
1453
1454 f: pointer to function
1455 with parameters
1456 instance of type T (not function type)
1457 returning
1458 instance of type U (not function type)
1459
1460
1461 function
1462 with parameters
1463 instance of type T (not function type)
1464 returning
1465 instance of type U (not function type)
1466
1467 to arguments
1468 Variable Expression: a: signed int
1469
1470 with inferred parameters:
1471 ?=?: function
1472 with parameters
1473 pointer to signed int
1474 signed int
1475 returning
1476 signed int
1477
1478 ?=?: function
1479 with parameters
1480 pointer to float
1481 float
1482 returning
1483 float
1484
1485 f: function
1486 with parameters
1487 signed int
1488 returning
1489 float
1490
1491
1492(types:
1493)
1494Environment: ( _0_T ) -> signed int (no widening)
1495 ( _1_U ) -> float (no widening)
1496
1497
1498Cost ( 1, 0, 0 ): Application of
1499 Variable Expression: i: function
1500 with parameters
1501 float
1502 returning
1503 nothing
1504
1505to arguments
1506 Cast of:
1507 Application of
1508 Variable Expression: g: forall
1509 T: type
1510 with assertions
1511 ?=?: pointer to function
1512 with parameters
1513 pointer to instance of type T (not function type)
1514 instance of type T (not function type)
1515 returning
1516 instance of type T (not function type)
1517
1518
1519 U: type
1520 with assertions
1521 ?=?: pointer to function
1522 with parameters
1523 pointer to instance of type U (not function type)
1524 instance of type U (not function type)
1525 returning
1526 instance of type U (not function type)
1527
1528 f: pointer to function
1529 with parameters
1530 instance of type T (not function type)
1531 returning
1532 instance of type U (not function type)
1533
1534
1535 function
1536 with parameters
1537 instance of type T (not function type)
1538 returning
1539 instance of type U (not function type)
1540
1541 to arguments
1542 Variable Expression: a: signed int
1543
1544 with inferred parameters:
1545 ?=?: function
1546 with parameters
1547 pointer to signed int
1548 signed int
1549 returning
1550 signed int
1551
1552 ?=?: function
1553 with parameters
1554 pointer to double
1555 double
1556 returning
1557 double
1558
1559 f: function
1560 with parameters
1561 signed int
1562 returning
1563 double
1564
1565
1566 to:
1567 float
1568
1569(types:
1570)
1571Environment: ( _0_T ) -> signed int (no widening)
1572 ( _1_U ) -> double (no widening)
1573
1574
1575there are 1 alternatives before elimination
1576there are 1 alternatives after elimination
1577alternatives before prune:
1578Cost ( 0, 0, 0 ): Cast of:
1579 Application of
1580 Variable Expression: i: function
1581 with parameters
1582 float
1583 returning
1584 nothing
1585
1586 to arguments
1587 Application of
1588 Variable Expression: g: forall
1589 T: type
1590 with assertions
1591 ?=?: pointer to function
1592 with parameters
1593 pointer to instance of type T (not function type)
1594 instance of type T (not function type)
1595 returning
1596 instance of type T (not function type)
1597
1598
1599 U: type
1600 with assertions
1601 ?=?: pointer to function
1602 with parameters
1603 pointer to instance of type U (not function type)
1604 instance of type U (not function type)
1605 returning
1606 instance of type U (not function type)
1607
1608 f: pointer to function
1609 with parameters
1610 instance of type T (not function type)
1611 returning
1612 instance of type U (not function type)
1613
1614
1615 function
1616 with parameters
1617 instance of type T (not function type)
1618 returning
1619 instance of type U (not function type)
1620
1621 to arguments
1622 Variable Expression: a: signed int
1623
1624 with inferred parameters:
1625 ?=?: function
1626 with parameters
1627 pointer to signed int
1628 signed int
1629 returning
1630 signed int
1631
1632 ?=?: function
1633 with parameters
1634 pointer to float
1635 float
1636 returning
1637 float
1638
1639 f: function
1640 with parameters
1641 signed int
1642 returning
1643 float
1644
1645
1646
1647to:
1648 nothing
1649(types:
1650)
1651Environment: ( _0_T ) -> signed int (no widening)
1652 ( _1_U ) -> float (no widening)
1653
1654
1655there are 1 alternatives before elimination
1656there are 1 alternatives after elimination
1657nameExpr is i
1658decl is i: function
1659 with parameters
1660 float
1661 returning
1662 nothing
1663
1664newExpr is Variable Expression: i: function
1665 with parameters
1666 float
1667 returning
1668 nothing
1669
1670
1671alternatives before prune:
1672Cost ( 0, 0, 0 ): Variable Expression: i: function
1673 with parameters
1674 float
1675 returning
1676 nothing
1677
1678(types:
1679 pointer to function
1680 with parameters
1681 float
1682 returning
1683 nothing
1684
1685)
1686Environment:
1687
1688there are 1 alternatives before elimination
1689there are 1 alternatives after elimination
1690nameExpr is k
1691decl is k: forall
1692 T: type
1693 with assertions
1694 ?=?: pointer to function
1695 with parameters
1696 pointer to instance of type T (not function type)
1697 instance of type T (not function type)
1698 returning
1699 instance of type T (not function type)
1700
1701
1702 U: type
1703 with assertions
1704 ?=?: pointer to function
1705 with parameters
1706 pointer to instance of type U (not function type)
1707 instance of type U (not function type)
1708 returning
1709 instance of type U (not function type)
1710
1711 f: pointer to function
1712 with parameters
1713 instance of type T (not function type)
1714 returning
1715 instance of type U (not function type)
1716
1717 j: pointer to function
1718 with parameters
1719 instance of type T (not function type)
1720 instance of type U (not function type)
1721 returning
1722 instance of type U (not function type)
1723
1724
1725 function
1726 with parameters
1727 instance of type T (not function type)
1728 returning
1729 instance of type U (not function type)
1730
1731newExpr is Variable Expression: k: forall
1732 T: type
1733 with assertions
1734 ?=?: pointer to function
1735 with parameters
1736 pointer to instance of type T (not function type)
1737 instance of type T (not function type)
1738 returning
1739 instance of type T (not function type)
1740
1741
1742 U: type
1743 with assertions
1744 ?=?: pointer to function
1745 with parameters
1746 pointer to instance of type U (not function type)
1747 instance of type U (not function type)
1748 returning
1749 instance of type U (not function type)
1750
1751 f: pointer to function
1752 with parameters
1753 instance of type T (not function type)
1754 returning
1755 instance of type U (not function type)
1756
1757 j: pointer to function
1758 with parameters
1759 instance of type T (not function type)
1760 instance of type U (not function type)
1761 returning
1762 instance of type U (not function type)
1763
1764
1765 function
1766 with parameters
1767 instance of type T (not function type)
1768 returning
1769 instance of type U (not function type)
1770
1771
1772alternatives before prune:
1773Cost ( 0, 0, 0 ): Variable Expression: k: forall
1774 T: type
1775 with assertions
1776 ?=?: pointer to function
1777 with parameters
1778 pointer to instance of type T (not function type)
1779 instance of type T (not function type)
1780 returning
1781 instance of type T (not function type)
1782
1783
1784 U: type
1785 with assertions
1786 ?=?: pointer to function
1787 with parameters
1788 pointer to instance of type U (not function type)
1789 instance of type U (not function type)
1790 returning
1791 instance of type U (not function type)
1792
1793 f: pointer to function
1794 with parameters
1795 instance of type T (not function type)
1796 returning
1797 instance of type U (not function type)
1798
1799 j: pointer to function
1800 with parameters
1801 instance of type T (not function type)
1802 instance of type U (not function type)
1803 returning
1804 instance of type U (not function type)
1805
1806
1807 function
1808 with parameters
1809 instance of type T (not function type)
1810 returning
1811 instance of type U (not function type)
1812
1813(types:
1814 pointer to forall
1815 _0_T: type
1816 with assertions
1817 ?=?: pointer to function
1818 with parameters
1819 pointer to instance of type _0_T (not function type)
1820 instance of type _0_T (not function type)
1821 returning
1822 instance of type _0_T (not function type)
1823
1824
1825 _1_U: type
1826 with assertions
1827 ?=?: pointer to function
1828 with parameters
1829 pointer to instance of type _1_U (not function type)
1830 instance of type _1_U (not function type)
1831 returning
1832 instance of type _1_U (not function type)
1833
1834 f: pointer to function
1835 with parameters
1836 instance of type _0_T (not function type)
1837 returning
1838 instance of type _1_U (not function type)
1839
1840 j: pointer to function
1841 with parameters
1842 instance of type _0_T (not function type)
1843 instance of type _1_U (not function type)
1844 returning
1845 instance of type _1_U (not function type)
1846
1847
1848 function
1849 with parameters
1850 instance of type _0_T (not function type)
1851 returning
1852 instance of type _1_U (not function type)
1853
1854)
1855Environment:
1856
1857there are 1 alternatives before elimination
1858there are 1 alternatives after elimination
1859nameExpr is b
1860decl is b: signed int
1861newExpr is Variable Expression: b: signed int
1862
1863alternatives before prune:
1864Cost ( 0, 0, 0 ): Variable Expression: b: signed int
1865(types:
1866 lvalue signed int
1867)
1868Environment:
1869
1870there are 1 alternatives before elimination
1871there are 1 alternatives after elimination
1872findSubExprs
1873Cost ( 0, 0, 0 ): Variable Expression: b: signed int
1874(types:
1875 lvalue signed int
1876)
1877Environment:
1878
1879working on alternative:
1880 Cost ( 0, 0, 0 ): Variable Expression: k: forall
1881 T: type
1882 with assertions
1883 ?=?: pointer to function
1884 with parameters
1885 pointer to instance of type T (not function type)
1886 instance of type T (not function type)
1887 returning
1888 instance of type T (not function type)
1889
1890
1891 U: type
1892 with assertions
1893 ?=?: pointer to function
1894 with parameters
1895 pointer to instance of type U (not function type)
1896 instance of type U (not function type)
1897 returning
1898 instance of type U (not function type)
1899
1900 f: pointer to function
1901 with parameters
1902 instance of type T (not function type)
1903 returning
1904 instance of type U (not function type)
1905
1906 j: pointer to function
1907 with parameters
1908 instance of type T (not function type)
1909 instance of type U (not function type)
1910 returning
1911 instance of type U (not function type)
1912
1913
1914 function
1915 with parameters
1916 instance of type T (not function type)
1917 returning
1918 instance of type U (not function type)
1919
1920(types:
1921 pointer to forall
1922 _0_T: type
1923 with assertions
1924 ?=?: pointer to function
1925 with parameters
1926 pointer to instance of type _0_T (not function type)
1927 instance of type _0_T (not function type)
1928 returning
1929 instance of type _0_T (not function type)
1930
1931
1932 _1_U: type
1933 with assertions
1934 ?=?: pointer to function
1935 with parameters
1936 pointer to instance of type _1_U (not function type)
1937 instance of type _1_U (not function type)
1938 returning
1939 instance of type _1_U (not function type)
1940
1941 f: pointer to function
1942 with parameters
1943 instance of type _0_T (not function type)
1944 returning
1945 instance of type _1_U (not function type)
1946
1947 j: pointer to function
1948 with parameters
1949 instance of type _0_T (not function type)
1950 instance of type _1_U (not function type)
1951 returning
1952 instance of type _1_U (not function type)
1953
1954
1955 function
1956 with parameters
1957 instance of type _0_T (not function type)
1958 returning
1959 instance of type _1_U (not function type)
1960
1961)
1962 Environment:
1963formal type is instance of type _0_T (not function type)
1964actual type is lvalue signed int
1965need assertions:
1966j: pointer to function
1967 with parameters
1968 instance of type _0_T (not function type)
1969 instance of type _1_U (not function type)
1970 returning
1971 instance of type _1_U (not function type)
1972(used)f: pointer to function
1973 with parameters
1974 instance of type _0_T (not function type)
1975 returning
1976 instance of type _1_U (not function type)
1977(used)?=?: pointer to function
1978 with parameters
1979 pointer to instance of type _1_U (not function type)
1980 instance of type _1_U (not function type)
1981 returning
1982 instance of type _1_U (not function type)
1983(used)?=?: pointer to function
1984 with parameters
1985 pointer to instance of type _0_T (not function type)
1986 instance of type _0_T (not function type)
1987 returning
1988 instance of type _0_T (not function type)
1989(used)============= original indexer
1990===idTable===
1991===typeTable===
1992===structTable===
1993===enumTable===
1994===unionTable===
1995===contextTable===
1996============= new indexer
1997===idTable===
1998===typeTable===
1999===structTable===
2000===enumTable===
2001===unionTable===
2002===contextTable===
2003inferRecursive: assertion is j: pointer to function
2004 with parameters
2005 instance of type _0_T (not function type)
2006 instance of type _1_U (not function type)
2007 returning
2008 instance of type _1_U (not function type)
2009
2010inferRecursive: candidate is j: function
2011 with parameters
2012 signed int
2013 float
2014 returning
2015 float
2016
2017unifying pointer to function
2018 with parameters
2019 instance of type _0_T (not function type)
2020 instance of type _1_U (not function type)
2021 returning
2022 instance of type _1_U (not function type)
2023 with pointer to function
2024 with parameters
2025 signed int
2026 float
2027 returning
2028 float
2029
2030success!
2031satisfying assertion 62 j: pointer to function
2032 with parameters
2033 instance of type _0_T (not function type)
2034 instance of type _1_U (not function type)
2035 returning
2036 instance of type _1_U (not function type)
2037 with declaration 47 j: function
2038 with parameters
2039 signed int
2040 float
2041 returning
2042 float
2043
2044inferRecursive: assertion is f: pointer to function
2045 with parameters
2046 instance of type _0_T (not function type)
2047 returning
2048 instance of type _1_U (not function type)
2049
2050inferRecursive: candidate is f: function
2051 with parameters
2052 signed int
2053 returning
2054 double
2055
2056unifying pointer to function
2057 with parameters
2058 instance of type _0_T (not function type)
2059 returning
2060 instance of type _1_U (not function type)
2061 with pointer to function
2062 with parameters
2063 signed int
2064 returning
2065 double
2066
2067inferRecursive: candidate is f: function
2068 with parameters
2069 signed int
2070 returning
2071 float
2072
2073unifying pointer to function
2074 with parameters
2075 instance of type _0_T (not function type)
2076 returning
2077 instance of type _1_U (not function type)
2078 with pointer to function
2079 with parameters
2080 signed int
2081 returning
2082 float
2083
2084success!
2085satisfying assertion 58 f: pointer to function
2086 with parameters
2087 instance of type _0_T (not function type)
2088 returning
2089 instance of type _1_U (not function type)
2090 with declaration 29 f: function
2091 with parameters
2092 signed int
2093 returning
2094 float
2095
2096inferRecursive: assertion is ?=?: pointer to function
2097 with parameters
2098 pointer to instance of type _1_U (not function type)
2099 instance of type _1_U (not function type)
2100 returning
2101 instance of type _1_U (not function type)
2102
2103inferRecursive: candidate is ?=?: function
2104 with parameters
2105 pointer to double
2106 double
2107 returning
2108 double
2109
2110unifying pointer to function
2111 with parameters
2112 pointer to instance of type _1_U (not function type)
2113 instance of type _1_U (not function type)
2114 returning
2115 instance of type _1_U (not function type)
2116 with pointer to function
2117 with parameters
2118 pointer to double
2119 double
2120 returning
2121 double
2122
2123inferRecursive: candidate is ?=?: function
2124 with parameters
2125 pointer to float
2126 float
2127 returning
2128 float
2129
2130unifying pointer to function
2131 with parameters
2132 pointer to instance of type _1_U (not function type)
2133 instance of type _1_U (not function type)
2134 returning
2135 instance of type _1_U (not function type)
2136 with pointer to function
2137 with parameters
2138 pointer to float
2139 float
2140 returning
2141 float
2142
2143success!
2144satisfying assertion 55 ?=?: pointer to function
2145 with parameters
2146 pointer to instance of type _1_U (not function type)
2147 instance of type _1_U (not function type)
2148 returning
2149 instance of type _1_U (not function type)
2150 with declaration 8 ?=?: function
2151 with parameters
2152 pointer to float
2153 float
2154 returning
2155 float
2156
2157inferRecursive: assertion is ?=?: pointer to function
2158 with parameters
2159 pointer to instance of type _0_T (not function type)
2160 instance of type _0_T (not function type)
2161 returning
2162 instance of type _0_T (not function type)
2163
2164inferRecursive: candidate is ?=?: function
2165 with parameters
2166 pointer to double
2167 double
2168 returning
2169 double
2170
2171unifying pointer to function
2172 with parameters
2173 pointer to instance of type _0_T (not function type)
2174 instance of type _0_T (not function type)
2175 returning
2176 instance of type _0_T (not function type)
2177 with pointer to function
2178 with parameters
2179 pointer to double
2180 double
2181 returning
2182 double
2183
2184inferRecursive: candidate is ?=?: function
2185 with parameters
2186 pointer to float
2187 float
2188 returning
2189 float
2190
2191unifying pointer to function
2192 with parameters
2193 pointer to instance of type _0_T (not function type)
2194 instance of type _0_T (not function type)
2195 returning
2196 instance of type _0_T (not function type)
2197 with pointer to function
2198 with parameters
2199 pointer to float
2200 float
2201 returning
2202 float
2203
2204inferRecursive: candidate is ?=?: function
2205 with parameters
2206 pointer to signed int
2207 signed int
2208 returning
2209 signed int
2210
2211unifying pointer to function
2212 with parameters
2213 pointer to instance of type _0_T (not function type)
2214 instance of type _0_T (not function type)
2215 returning
2216 instance of type _0_T (not function type)
2217 with pointer to function
2218 with parameters
2219 pointer to signed int
2220 signed int
2221 returning
2222 signed int
2223
2224success!
2225satisfying assertion 51 ?=?: pointer to function
2226 with parameters
2227 pointer to instance of type _0_T (not function type)
2228 instance of type _0_T (not function type)
2229 returning
2230 instance of type _0_T (not function type)
2231 with declaration 4 ?=?: function
2232 with parameters
2233 pointer to signed int
2234 signed int
2235 returning
2236 signed int
2237
2238inferRecursive: candidate is ?=?: function
2239 with parameters
2240 pointer to signed int
2241 signed int
2242 returning
2243 signed int
2244
2245unifying pointer to function
2246 with parameters
2247 pointer to instance of type _1_U (not function type)
2248 instance of type _1_U (not function type)
2249 returning
2250 instance of type _1_U (not function type)
2251 with pointer to function
2252 with parameters
2253 pointer to signed int
2254 signed int
2255 returning
2256 signed int
2257
2258actual expression:
2259 Variable Expression: b: signed int
2260--- results are
2261 lvalue signed int
2262
2263converting lvalue signed int
2264 to instance of type _0_T (not function type)
2265cost is( 0, 0, 0 )
2266
2267converting pointer to function
2268 with parameters
2269 pointer to signed int
2270 signed int
2271 returning
2272 signed int
2273
2274 to pointer to function
2275 with parameters
2276 pointer to instance of type _0_T (not function type)
2277 instance of type _0_T (not function type)
2278 returning
2279 instance of type _0_T (not function type)
2280
2281cost of conversion is ( 0, 0, 0 )
2282
2283converting pointer to function
2284 with parameters
2285 pointer to float
2286 float
2287 returning
2288 float
2289
2290 to pointer to function
2291 with parameters
2292 pointer to instance of type _1_U (not function type)
2293 instance of type _1_U (not function type)
2294 returning
2295 instance of type _1_U (not function type)
2296
2297cost of conversion is ( 0, 0, 0 )
2298
2299converting pointer to function
2300 with parameters
2301 signed int
2302 returning
2303 float
2304
2305 to pointer to function
2306 with parameters
2307 instance of type _0_T (not function type)
2308 returning
2309 instance of type _1_U (not function type)
2310
2311cost of conversion is ( 0, 0, 0 )
2312
2313converting pointer to function
2314 with parameters
2315 signed int
2316 float
2317 returning
2318 float
2319
2320 to pointer to function
2321 with parameters
2322 instance of type _0_T (not function type)
2323 instance of type _1_U (not function type)
2324 returning
2325 instance of type _1_U (not function type)
2326
2327cost of conversion is ( 0, 0, 0 )
2328Case +++++++++++++
2329formals are:
2330 instance of type _0_T (not function type)
2331actuals are:
2332 Variable Expression: b: signed int
2333
2334bindings are:
2335 ( _0_T ) -> signed int
2336 ( _1_U ) -> float (no widening)
2337cost of conversion is:( 0, 12, 0 )
2338alternatives before prune:
2339Cost ( 0, 12, 0 ): Application of
2340 Variable Expression: k: forall
2341 T: type
2342 with assertions
2343 ?=?: pointer to function
2344 with parameters
2345 pointer to instance of type T (not function type)
2346 instance of type T (not function type)
2347 returning
2348 instance of type T (not function type)
2349
2350
2351 U: type
2352 with assertions
2353 ?=?: pointer to function
2354 with parameters
2355 pointer to instance of type U (not function type)
2356 instance of type U (not function type)
2357 returning
2358 instance of type U (not function type)
2359
2360 f: pointer to function
2361 with parameters
2362 instance of type T (not function type)
2363 returning
2364 instance of type U (not function type)
2365
2366 j: pointer to function
2367 with parameters
2368 instance of type T (not function type)
2369 instance of type U (not function type)
2370 returning
2371 instance of type U (not function type)
2372
2373
2374 function
2375 with parameters
2376 instance of type T (not function type)
2377 returning
2378 instance of type U (not function type)
2379
2380to arguments
2381 Variable Expression: b: signed int
2382
2383with inferred parameters:
2384 ?=?: function
2385 with parameters
2386 pointer to signed int
2387 signed int
2388 returning
2389 signed int
2390
2391 ?=?: function
2392 with parameters
2393 pointer to float
2394 float
2395 returning
2396 float
2397
2398 f: function
2399 with parameters
2400 signed int
2401 returning
2402 float
2403
2404 j: function
2405 with parameters
2406 signed int
2407 float
2408 returning
2409 float
2410
2411(types:
2412 instance of type _1_U (not function type)
2413)
2414Environment: ( _0_T ) -> signed int
2415 ( _1_U ) -> float (no widening)
2416
2417
2418there are 1 alternatives before elimination
2419there are 1 alternatives after elimination
2420findSubExprs
2421Cost ( 0, 12, 0 ): Application of
2422 Variable Expression: k: forall
2423 T: type
2424 with assertions
2425 ?=?: pointer to function
2426 with parameters
2427 pointer to instance of type T (not function type)
2428 instance of type T (not function type)
2429 returning
2430 instance of type T (not function type)
2431
2432
2433 U: type
2434 with assertions
2435 ?=?: pointer to function
2436 with parameters
2437 pointer to instance of type U (not function type)
2438 instance of type U (not function type)
2439 returning
2440 instance of type U (not function type)
2441
2442 f: pointer to function
2443 with parameters
2444 instance of type T (not function type)
2445 returning
2446 instance of type U (not function type)
2447
2448 j: pointer to function
2449 with parameters
2450 instance of type T (not function type)
2451 instance of type U (not function type)
2452 returning
2453 instance of type U (not function type)
2454
2455
2456 function
2457 with parameters
2458 instance of type T (not function type)
2459 returning
2460 instance of type U (not function type)
2461
2462to arguments
2463 Variable Expression: b: signed int
2464
2465with inferred parameters:
2466 ?=?: function
2467 with parameters
2468 pointer to signed int
2469 signed int
2470 returning
2471 signed int
2472
2473 ?=?: function
2474 with parameters
2475 pointer to float
2476 float
2477 returning
2478 float
2479
2480 f: function
2481 with parameters
2482 signed int
2483 returning
2484 float
2485
2486 j: function
2487 with parameters
2488 signed int
2489 float
2490 returning
2491 float
2492
2493(types:
2494 float
2495)
2496Environment: ( _0_T ) -> signed int
2497 ( _1_U ) -> float (no widening)
2498
2499
2500working on alternative:
2501 Cost ( 0, 0, 0 ): Variable Expression: i: function
2502 with parameters
2503 float
2504 returning
2505 nothing
2506
2507(types:
2508 pointer to function
2509 with parameters
2510 float
2511 returning
2512 nothing
2513
2514)
2515 Environment:
2516formal type is float
2517actual type is float
2518need assertions:
2519============= original indexer
2520===idTable===
2521===typeTable===
2522===structTable===
2523===enumTable===
2524===unionTable===
2525===contextTable===
2526============= new indexer
2527===idTable===
2528===typeTable===
2529===structTable===
2530===enumTable===
2531===unionTable===
2532===contextTable===
2533actual expression:
2534 Application of
2535 Variable Expression: k: forall
2536 T: type
2537 with assertions
2538 ?=?: pointer to function
2539 with parameters
2540 pointer to instance of type T (not function type)
2541 instance of type T (not function type)
2542 returning
2543 instance of type T (not function type)
2544
2545
2546 U: type
2547 with assertions
2548 ?=?: pointer to function
2549 with parameters
2550 pointer to instance of type U (not function type)
2551 instance of type U (not function type)
2552 returning
2553 instance of type U (not function type)
2554
2555 f: pointer to function
2556 with parameters
2557 instance of type T (not function type)
2558 returning
2559 instance of type U (not function type)
2560
2561 j: pointer to function
2562 with parameters
2563 instance of type T (not function type)
2564 instance of type U (not function type)
2565 returning
2566 instance of type U (not function type)
2567
2568
2569 function
2570 with parameters
2571 instance of type T (not function type)
2572 returning
2573 instance of type U (not function type)
2574
2575 to arguments
2576 Variable Expression: b: signed int
2577
2578 with inferred parameters:
2579 ?=?: function
2580 with parameters
2581 pointer to signed int
2582 signed int
2583 returning
2584 signed int
2585
2586 ?=?: function
2587 with parameters
2588 pointer to float
2589 float
2590 returning
2591 float
2592
2593 f: function
2594 with parameters
2595 signed int
2596 returning
2597 float
2598
2599 j: function
2600 with parameters
2601 signed int
2602 float
2603 returning
2604 float
2605
2606--- results are
2607 float
2608
2609converting float
2610 to float
2611cost is( 0, 0, 0 )
2612Case +++++++++++++
2613formals are:
2614 float
2615actuals are:
2616 Application of
2617 Variable Expression: k: forall
2618 T: type
2619 with assertions
2620 ?=?: pointer to function
2621 with parameters
2622 pointer to instance of type T (not function type)
2623 instance of type T (not function type)
2624 returning
2625 instance of type T (not function type)
2626
2627
2628 U: type
2629 with assertions
2630 ?=?: pointer to function
2631 with parameters
2632 pointer to instance of type U (not function type)
2633 instance of type U (not function type)
2634 returning
2635 instance of type U (not function type)
2636
2637 f: pointer to function
2638 with parameters
2639 instance of type T (not function type)
2640 returning
2641 instance of type U (not function type)
2642
2643 j: pointer to function
2644 with parameters
2645 instance of type T (not function type)
2646 instance of type U (not function type)
2647 returning
2648 instance of type U (not function type)
2649
2650
2651 function
2652 with parameters
2653 instance of type T (not function type)
2654 returning
2655 instance of type U (not function type)
2656
2657 to arguments
2658 Variable Expression: b: signed int
2659
2660 with inferred parameters:
2661 ?=?: function
2662 with parameters
2663 pointer to signed int
2664 signed int
2665 returning
2666 signed int
2667
2668 ?=?: function
2669 with parameters
2670 pointer to float
2671 float
2672 returning
2673 float
2674
2675 f: function
2676 with parameters
2677 signed int
2678 returning
2679 float
2680
2681 j: function
2682 with parameters
2683 signed int
2684 float
2685 returning
2686 float
2687
2688
2689bindings are:
2690 ( _0_T ) -> signed int (no widening)
2691 ( _1_U ) -> float (no widening)
2692cost of conversion is:( 0, 0, 0 )
2693alternatives before prune:
2694Cost ( 0, 0, 0 ): Application of
2695 Variable Expression: i: function
2696 with parameters
2697 float
2698 returning
2699 nothing
2700
2701to arguments
2702 Application of
2703 Variable Expression: k: forall
2704 T: type
2705 with assertions
2706 ?=?: pointer to function
2707 with parameters
2708 pointer to instance of type T (not function type)
2709 instance of type T (not function type)
2710 returning
2711 instance of type T (not function type)
2712
2713
2714 U: type
2715 with assertions
2716 ?=?: pointer to function
2717 with parameters
2718 pointer to instance of type U (not function type)
2719 instance of type U (not function type)
2720 returning
2721 instance of type U (not function type)
2722
2723 f: pointer to function
2724 with parameters
2725 instance of type T (not function type)
2726 returning
2727 instance of type U (not function type)
2728
2729 j: pointer to function
2730 with parameters
2731 instance of type T (not function type)
2732 instance of type U (not function type)
2733 returning
2734 instance of type U (not function type)
2735
2736
2737 function
2738 with parameters
2739 instance of type T (not function type)
2740 returning
2741 instance of type U (not function type)
2742
2743 to arguments
2744 Variable Expression: b: signed int
2745
2746 with inferred parameters:
2747 ?=?: function
2748 with parameters
2749 pointer to signed int
2750 signed int
2751 returning
2752 signed int
2753
2754 ?=?: function
2755 with parameters
2756 pointer to float
2757 float
2758 returning
2759 float
2760
2761 f: function
2762 with parameters
2763 signed int
2764 returning
2765 float
2766
2767 j: function
2768 with parameters
2769 signed int
2770 float
2771 returning
2772 float
2773
2774
2775(types:
2776)
2777Environment: ( _0_T ) -> signed int (no widening)
2778 ( _1_U ) -> float (no widening)
2779
2780
2781there are 1 alternatives before elimination
2782there are 1 alternatives after elimination
2783alternatives before prune:
2784Cost ( 0, 0, 0 ): Cast of:
2785 Application of
2786 Variable Expression: i: function
2787 with parameters
2788 float
2789 returning
2790 nothing
2791
2792 to arguments
2793 Application of
2794 Variable Expression: k: forall
2795 T: type
2796 with assertions
2797 ?=?: pointer to function
2798 with parameters
2799 pointer to instance of type T (not function type)
2800 instance of type T (not function type)
2801 returning
2802 instance of type T (not function type)
2803
2804
2805 U: type
2806 with assertions
2807 ?=?: pointer to function
2808 with parameters
2809 pointer to instance of type U (not function type)
2810 instance of type U (not function type)
2811 returning
2812 instance of type U (not function type)
2813
2814 f: pointer to function
2815 with parameters
2816 instance of type T (not function type)
2817 returning
2818 instance of type U (not function type)
2819
2820 j: pointer to function
2821 with parameters
2822 instance of type T (not function type)
2823 instance of type U (not function type)
2824 returning
2825 instance of type U (not function type)
2826
2827
2828 function
2829 with parameters
2830 instance of type T (not function type)
2831 returning
2832 instance of type U (not function type)
2833
2834 to arguments
2835 Variable Expression: b: signed int
2836
2837 with inferred parameters:
2838 ?=?: function
2839 with parameters
2840 pointer to signed int
2841 signed int
2842 returning
2843 signed int
2844
2845 ?=?: function
2846 with parameters
2847 pointer to float
2848 float
2849 returning
2850 float
2851
2852 f: function
2853 with parameters
2854 signed int
2855 returning
2856 float
2857
2858 j: function
2859 with parameters
2860 signed int
2861 float
2862 returning
2863 float
2864
2865
2866
2867to:
2868 nothing
2869(types:
2870)
2871Environment: ( _0_T ) -> signed int (no widening)
2872 ( _1_U ) -> float (no widening)
2873
2874
2875there are 1 alternatives before elimination
2876there are 1 alternatives after elimination
2877int ___operator_assign__Fi_Pii_(int *, int );
2878float ___operator_assign__Ff_Pff_(float *, float );
2879double ___operator_assign__Fd_Pdd_(double *, double );
2880void __g__A2_0_0____operator_assign__PFt0_Pt0t0____operator_assign__PFt1_Pt1t1___f__PFt1_t0__Ft1_t0_(void (*_adapterF2tU_2tT_)(void (*)(), void *, void *), void (*_adapterF2tU_P2tU2tU_)(void (*)(), void *, void *, void *), void (*_adapterF2tT_P2tT2tT_)(void (*)(), void *, void *, void *), long unsigned int T, long unsigned int U, void (*___operator_assign__PF2tT_P2tT2tT_)(), void (*___operator_assign__PF2tU_P2tU2tU_)(), void (*__f__PF2tU_2tT_)(), void *, void *);
2881float __f__Ff_i_(int );
2882double __f__Fd_i_(int );
2883void __i__F_f_(float );
2884void __h__F__(){
2885 int __a__i;
2886 float _temp0;
2887 void _adapterFi_Pii_(void (*_adaptee)(), void *_ret, void *_p0, void *_p1){
2888 ((*((int *)_ret))=((int (*)(int *, int ))_adaptee)(_p0, (*((int *)_p1))));
2889 }
2890 void _adapterFf_Pff_(void (*_adaptee)(), void *_ret, void *_p0, void *_p1){
2891 ((*((float *)_ret))=((float (*)(float *, float ))_adaptee)(_p0, (*((float *)_p1))));
2892 }
2893 void _adapterFf_i_(void (*_adaptee)(), void *_ret, void *_p0){
2894 ((*((float *)_ret))=((float (*)(int ))_adaptee)((*((int *)_p0))));
2895 }
2896 __i__F_f_((__g__A2_0_0____operator_assign__PFt0_Pt0t0____operator_assign__PFt1_Pt1t1___f__PFt1_t0__Ft1_t0_(_adapterFf_i_, _adapterFf_Pff_, _adapterFi_Pii_, sizeof(int ), sizeof(float ), ((void (*)())___operator_assign__Fi_Pii_), ((void (*)())___operator_assign__Ff_Pff_), ((void (*)())__f__Ff_i_), (&_temp0), (&__a__i)) , _temp0));
2897}
2898;
2899float __j__Ff_if_(int , float );
2900void __k__A2_0_0____operator_assign__PFt0_Pt0t0____operator_assign__PFt1_Pt1t1___f__PFt1_t0___j__PFt1_t0t1__Ft1_t0_(void (*_adapterF2tU_2tT2tU_)(void (*)(), void *, void *, void *), void (*_adapterF2tU_2tT_)(void (*)(), void *, void *), void (*_adapterF2tU_P2tU2tU_)(void (*)(), void *, void *, void *), void (*_adapterF2tT_P2tT2tT_)(void (*)(), void *, void *, void *), long unsigned int T, long unsigned int U, void (*___operator_assign__PF2tT_P2tT2tT_)(), void (*___operator_assign__PF2tU_P2tU2tU_)(), void (*__f__PF2tU_2tT_)(), void (*__j__PF2tU_2tT2tU_)(), void *, void *);
2901void __l__F__(){
2902 int __b__i;
2903 float _temp1;
2904 void _adapterFi_Pii_(void (*_adaptee)(), void *_ret, void *_p0, void *_p1){
2905 ((*((int *)_ret))=((int (*)(int *, int ))_adaptee)(_p0, (*((int *)_p1))));
2906 }
2907 void _adapterFf_Pff_(void (*_adaptee)(), void *_ret, void *_p0, void *_p1){
2908 ((*((float *)_ret))=((float (*)(float *, float ))_adaptee)(_p0, (*((float *)_p1))));
2909 }
2910 void _adapterFf_i_(void (*_adaptee)(), void *_ret, void *_p0){
2911 ((*((float *)_ret))=((float (*)(int ))_adaptee)((*((int *)_p0))));
2912 }
2913 void _adapterFf_if_(void (*_adaptee)(), void *_ret, void *_p0, void *_p1){
2914 ((*((float *)_ret))=((float (*)(int , float ))_adaptee)((*((int *)_p0)), (*((float *)_p1))));
2915 }
2916 __i__F_f_((__k__A2_0_0____operator_assign__PFt0_Pt0t0____operator_assign__PFt1_Pt1t1___f__PFt1_t0___j__PFt1_t0t1__Ft1_t0_(_adapterFf_if_, _adapterFf_i_, _adapterFf_Pff_, _adapterFi_Pii_, sizeof(int ), sizeof(float ), ((void (*)())___operator_assign__Fi_Pii_), ((void (*)())___operator_assign__Ff_Pff_), ((void (*)())__f__Ff_i_), ((void (*)())__j__Ff_if_), (&_temp1), (&__b__i)) , _temp1));
2917}
Note: See TracBrowser for help on using the repository browser.