source: src/Tests/Expect-r/Abstype.txt @ 4ef8fb3

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 4ef8fb3 was b1d6dd5, checked in by Peter A. Buhr <pabuhr@…>, 9 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: 41.5 KB
Line 
1nameExpr is x
2decl is x: function
3  with parameters
4    instance of type T (not function type)
5  returning
6    instance of type T (not function type)
7
8newExpr is Variable Expression: x: function
9    with parameters
10      instance of type T (not function type)
11    returning
12      instance of type T (not function type)
13
14
15alternatives before prune:
16Cost ( 0, 0, 0 ): Variable Expression: x: function
17    with parameters
18      instance of type T (not function type)
19    returning
20      instance of type T (not function type)
21
22(types:
23    pointer to function
24        with parameters
25          instance of type T (not function type)
26        returning
27          instance of type T (not function type)
28
29)
30Environment:
31
32there are 1 alternatives before elimination
33there are 1 alternatives after elimination
34nameExpr is t
35decl is t: instance of type T (not function type)
36newExpr is Variable Expression: t: instance of type T (not function type)
37
38alternatives before prune:
39Cost ( 0, 0, 0 ): Variable Expression: t: instance of type T (not function type)
40(types:
41    lvalue instance of type T (not function type)
42)
43Environment:
44
45there are 1 alternatives before elimination
46there are 1 alternatives after elimination
47findSubExprs
48Cost ( 0, 0, 0 ): Variable Expression: t: instance of type T (not function type)
49(types:
50    lvalue instance of type T (not function type)
51)
52Environment:
53
54working on alternative:
55        Cost ( 0, 0, 0 ):         Variable Expression: x: function
56            with parameters
57              instance of type T (not function type)
58            returning
59              instance of type T (not function type)
60
61(types:
62            pointer to function
63                with parameters
64                  instance of type T (not function type)
65                returning
66                  instance of type T (not function type)
67
68)
69        Environment:
70formal type is instance of type T (not function type)
71actual type is lvalue instance of type T (not function type)
72need assertions:
73============= original indexer
74===idTable===
75===typeTable===
76===structTable===
77===enumTable===
78===unionTable===
79===contextTable===
80============= new indexer
81===idTable===
82===typeTable===
83===structTable===
84===enumTable===
85===unionTable===
86===contextTable===
87actual expression:
88        Variable Expression: t: instance of type T (not function type)
89--- results are
90        lvalue instance of type T (not function type)
91
92converting lvalue instance of type T (not function type)
93 to instance of type T (not function type)
94cost is( 0, 0, 0 )
95Case +++++++++++++
96formals are:
97        instance of type T (not function type)
98actuals are:
99                  Variable Expression: t: instance of type T (not function type)
100
101bindings are:
102cost of conversion is:( 0, 0, 0 )
103alternatives before prune:
104Cost ( 0, 0, 0 ): Application of
105  Variable Expression: x: function
106      with parameters
107        instance of type T (not function type)
108      returning
109        instance of type T (not function type)
110
111to arguments
112      Variable Expression: t: instance of type T (not function type)
113
114(types:
115    instance of type T (not function type)
116)
117Environment:
118
119there are 1 alternatives before elimination
120there are 1 alternatives after elimination
121alternatives before prune:
122Cost ( 0, 0, 0 ): Cast of:
123  Application of
124    Variable Expression: x: function
125        with parameters
126          instance of type T (not function type)
127        returning
128          instance of type T (not function type)
129
130  to arguments
131          Variable Expression: t: instance of type T (not function type)
132
133
134to:
135  instance of type T (not function type)
136(types:
137    instance of type T (not function type)
138)
139Environment:
140
141there are 1 alternatives before elimination
142there are 1 alternatives after elimination
143nameExpr is ?=?
144decl is ?=?: forall
145    DT: incomplete type
146  function
147  with parameters
148    pointer to pointer to instance of type DT (not function type)
149    pointer to instance of type DT (not function type)
150  returning
151    pointer to instance of type DT (not function type)
152
153newExpr is Variable Expression: ?=?: forall
154      DT: incomplete type
155    function
156    with parameters
157      pointer to pointer to instance of type DT (not function type)
158      pointer to instance of type DT (not function type)
159    returning
160      pointer to instance of type DT (not function type)
161
162
163decl is ?=?: automatically generated function
164  with parameters
165    _dst: pointer to instance of type T (not function type)
166    _src: instance of type T (not function type)
167  returning
168    instance of type T (not function type)
169
170newExpr is Variable Expression: ?=?: function
171    with parameters
172      _dst: pointer to instance of type T (not function type)
173      _src: instance of type T (not function type)
174    returning
175      instance of type T (not function type)
176
177
178decl is ?=?: automatically generated function
179  with parameters
180    _dst: pointer to instance of type U (not function type)
181    _src: instance of type U (not function type)
182  returning
183    instance of type U (not function type)
184  with body
185    CompoundStmt
186              Return Statement, returning: Applying untyped:
187    Name: ?=?
188...to:
189    Cast of:
190      Variable Expression: _dst: pointer to instance of type U (not function type)
191
192    to:
193      pointer to pointer to signed int
194    Cast of:
195      Variable Expression: _src: instance of type U (not function type)
196
197    to:
198      pointer to signed int
199
200
201
202newExpr is Variable Expression: ?=?: function
203    with parameters
204      _dst: pointer to instance of type U (not function type)
205      _src: instance of type U (not function type)
206    returning
207      instance of type U (not function type)
208
209
210decl is ?=?: function
211  with parameters
212    pointer to signed int
213    signed int
214  returning
215    signed int
216
217newExpr is Variable Expression: ?=?: function
218    with parameters
219      pointer to signed int
220      signed int
221    returning
222      signed int
223
224
225alternatives before prune:
226Cost ( 0, 0, 0 ): Variable Expression: ?=?: forall
227      DT: incomplete type
228    function
229    with parameters
230      pointer to pointer to instance of type DT (not function type)
231      pointer to instance of type DT (not function type)
232    returning
233      pointer to instance of type DT (not function type)
234
235(types:
236    pointer to forall
237          _0_DT: incomplete type
238        function
239        with parameters
240          pointer to pointer to instance of type _0_DT (not function type)
241          pointer to instance of type _0_DT (not function type)
242        returning
243          pointer to instance of type _0_DT (not function type)
244
245)
246Environment:
247
248Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
249    with parameters
250      _dst: pointer to instance of type T (not function type)
251      _src: instance of type T (not function type)
252    returning
253      instance of type T (not function type)
254
255(types:
256    pointer to function
257        with parameters
258          _dst: pointer to instance of type T (not function type)
259          _src: instance of type T (not function type)
260        returning
261          instance of type T (not function type)
262
263)
264Environment:
265
266Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
267    with parameters
268      _dst: pointer to instance of type U (not function type)
269      _src: instance of type U (not function type)
270    returning
271      instance of type U (not function type)
272
273(types:
274    pointer to function
275        with parameters
276          _dst: pointer to instance of type U (not function type)
277          _src: instance of type U (not function type)
278        returning
279          instance of type U (not function type)
280
281)
282Environment:
283
284Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
285    with parameters
286      pointer to signed int
287      signed int
288    returning
289      signed int
290
291(types:
292    pointer to function
293        with parameters
294          pointer to signed int
295          signed int
296        returning
297          signed int
298
299)
300Environment:
301
302there are 4 alternatives before elimination
303there are 4 alternatives after elimination
304alternatives before prune:
305Cost ( 0, 0, 0 ): Variable Expression: _dst: pointer to instance of type U (not function type)
306(types:
307    lvalue pointer to instance of type U (not function type)
308)
309Environment:
310
311there are 1 alternatives before elimination
312there are 1 alternatives after elimination
313nameExpr is u
314decl is u: instance of type U (not function type)
315newExpr is Variable Expression: u: instance of type U (not function type)
316
317alternatives before prune:
318Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
319(types:
320    lvalue instance of type U (not function type)
321)
322Environment:
323
324there are 1 alternatives before elimination
325there are 1 alternatives after elimination
326alternatives before prune:
327Cost ( 0, 0, 2 ): Cast of:
328  Variable Expression: u: instance of type U (not function type)
329
330to:
331  instance of type U (not function type)
332(types:
333    instance of type U (not function type)
334)
335Environment:
336
337there are 1 alternatives before elimination
338there are 1 alternatives after elimination
339nameExpr is ?=?
340decl is ?=?: forall
341    DT: incomplete type
342  function
343  with parameters
344    pointer to pointer to instance of type DT (not function type)
345    pointer to instance of type DT (not function type)
346  returning
347    pointer to instance of type DT (not function type)
348
349newExpr is Variable Expression: ?=?: forall
350      DT: incomplete type
351    function
352    with parameters
353      pointer to pointer to instance of type DT (not function type)
354      pointer to instance of type DT (not function type)
355    returning
356      pointer to instance of type DT (not function type)
357
358
359decl is ?=?: automatically generated function
360  with parameters
361    _dst: pointer to instance of type T (not function type)
362    _src: instance of type T (not function type)
363  returning
364    instance of type T (not function type)
365
366newExpr is Variable Expression: ?=?: function
367    with parameters
368      _dst: pointer to instance of type T (not function type)
369      _src: instance of type T (not function type)
370    returning
371      instance of type T (not function type)
372
373
374decl is ?=?: automatically generated function
375  with parameters
376    _dst: pointer to instance of type U (not function type)
377    _src: instance of type U (not function type)
378  returning
379    instance of type U (not function type)
380  with body
381    CompoundStmt
382              Return Statement, returning: Applying untyped:
383    Name: ?=?
384...to:
385    Cast of:
386      Variable Expression: _dst: pointer to instance of type U (not function type)
387
388    to:
389      pointer to pointer to signed int
390    Cast of:
391      Variable Expression: _src: instance of type U (not function type)
392
393    to:
394      pointer to signed int
395
396
397
398newExpr is Variable Expression: ?=?: function
399    with parameters
400      _dst: pointer to instance of type U (not function type)
401      _src: instance of type U (not function type)
402    returning
403      instance of type U (not function type)
404
405
406decl is ?=?: function
407  with parameters
408    pointer to signed int
409    signed int
410  returning
411    signed int
412
413newExpr is Variable Expression: ?=?: function
414    with parameters
415      pointer to signed int
416      signed int
417    returning
418      signed int
419
420
421alternatives before prune:
422Cost ( 0, 0, 0 ): Variable Expression: ?=?: forall
423      DT: incomplete type
424    function
425    with parameters
426      pointer to pointer to instance of type DT (not function type)
427      pointer to instance of type DT (not function type)
428    returning
429      pointer to instance of type DT (not function type)
430
431(types:
432    pointer to forall
433          _0_DT: incomplete type
434        function
435        with parameters
436          pointer to pointer to instance of type _0_DT (not function type)
437          pointer to instance of type _0_DT (not function type)
438        returning
439          pointer to instance of type _0_DT (not function type)
440
441)
442Environment:
443
444Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
445    with parameters
446      _dst: pointer to instance of type T (not function type)
447      _src: instance of type T (not function type)
448    returning
449      instance of type T (not function type)
450
451(types:
452    pointer to function
453        with parameters
454          _dst: pointer to instance of type T (not function type)
455          _src: instance of type T (not function type)
456        returning
457          instance of type T (not function type)
458
459)
460Environment:
461
462Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
463    with parameters
464      _dst: pointer to instance of type U (not function type)
465      _src: instance of type U (not function type)
466    returning
467      instance of type U (not function type)
468
469(types:
470    pointer to function
471        with parameters
472          _dst: pointer to instance of type U (not function type)
473          _src: instance of type U (not function type)
474        returning
475          instance of type U (not function type)
476
477)
478Environment:
479
480Cost ( 0, 0, 0 ): Variable Expression: ?=?: function
481    with parameters
482      pointer to signed int
483      signed int
484    returning
485      signed int
486
487(types:
488    pointer to function
489        with parameters
490          pointer to signed int
491          signed int
492        returning
493          signed int
494
495)
496Environment:
497
498there are 4 alternatives before elimination
499there are 4 alternatives after elimination
500nameExpr is u_instance
501decl is u_instance: instance of type U (not function type) with initializer
502Simple Initializer:   Cast of:
503    Variable Expression: u: instance of type U (not function type)
504
505  to:
506    instance of type U (not function type)
507  with environment:
508    Types:
509    Non-types:
510
511newExpr is Variable Expression: u_instance: instance of type U (not function type)
512
513alternatives before prune:
514Cost ( 0, 0, 0 ): Variable Expression: u_instance: instance of type U (not function type)
515(types:
516    lvalue instance of type U (not function type)
517)
518Environment:
519
520there are 1 alternatives before elimination
521there are 1 alternatives after elimination
522alternatives before prune:
523Cost ( 0, 0, 0 ): Address of:
524  Variable Expression: u_instance: instance of type U (not function type)
525(types:
526    pointer to instance of type U (not function type)
527)
528Environment:
529
530there are 1 alternatives before elimination
531there are 1 alternatives after elimination
532findSubExprs
533Cost ( 0, 0, 0 ): Address of:
534  Variable Expression: u_instance: instance of type U (not function type)
535(types:
536    pointer to instance of type U (not function type)
537)
538Environment:
539
540nameExpr is u
541decl is u: instance of type U (not function type)
542newExpr is Variable Expression: u: instance of type U (not function type)
543
544alternatives before prune:
545Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
546(types:
547    lvalue instance of type U (not function type)
548)
549Environment:
550
551there are 1 alternatives before elimination
552there are 1 alternatives after elimination
553findSubExprs
554Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
555(types:
556    lvalue instance of type U (not function type)
557)
558Environment:
559
560working on alternative:
561        Cost ( 0, 0, 0 ):         Variable Expression: ?=?: function
562            with parameters
563              pointer to signed int
564              signed int
565            returning
566              signed int
567
568(types:
569            pointer to function
570                with parameters
571                  pointer to signed int
572                  signed int
573                returning
574                  signed int
575
576)
577        Environment:
578formal type is pointer to signed int
579actual type is pointer to instance of type U (not function type)
580working on alternative:
581        Cost ( 0, 0, 0 ):         Variable Expression: ?=?: function
582            with parameters
583              _dst: pointer to instance of type U (not function type)
584              _src: instance of type U (not function type)
585            returning
586              instance of type U (not function type)
587
588(types:
589            pointer to function
590                with parameters
591                  _dst: pointer to instance of type U (not function type)
592                  _src: instance of type U (not function type)
593                returning
594                  instance of type U (not function type)
595
596)
597        Environment:
598formal type is pointer to instance of type U (not function type)
599actual type is pointer to instance of type U (not function type)
600formal type is instance of type U (not function type)
601actual type is lvalue instance of type U (not function type)
602need assertions:
603============= original indexer
604===idTable===
605===typeTable===
606===structTable===
607===enumTable===
608===unionTable===
609===contextTable===
610============= new indexer
611===idTable===
612===typeTable===
613===structTable===
614===enumTable===
615===unionTable===
616===contextTable===
617working on alternative:
618        Cost ( 0, 0, 0 ):         Variable Expression: ?=?: function
619            with parameters
620              _dst: pointer to instance of type T (not function type)
621              _src: instance of type T (not function type)
622            returning
623              instance of type T (not function type)
624
625(types:
626            pointer to function
627                with parameters
628                  _dst: pointer to instance of type T (not function type)
629                  _src: instance of type T (not function type)
630                returning
631                  instance of type T (not function type)
632
633)
634        Environment:
635formal type is pointer to instance of type T (not function type)
636actual type is pointer to instance of type U (not function type)
637working on alternative:
638        Cost ( 0, 0, 0 ):         Variable Expression: ?=?: forall
639              DT: incomplete type
640            function
641            with parameters
642              pointer to pointer to instance of type DT (not function type)
643              pointer to instance of type DT (not function type)
644            returning
645              pointer to instance of type DT (not function type)
646
647(types:
648            pointer to forall
649                  _0_DT: incomplete type
650                function
651                with parameters
652                  pointer to pointer to instance of type _0_DT (not function type)
653                  pointer to instance of type _0_DT (not function type)
654                returning
655                  pointer to instance of type _0_DT (not function type)
656
657)
658        Environment:
659formal type is pointer to pointer to instance of type _0_DT (not function type)
660actual type is pointer to instance of type U (not function type)
661actual expression:
662        Address of:
663          Variable Expression: u_instance: instance of type U (not function type)
664--- results are
665        pointer to instance of type U (not function type)
666
667converting pointer to instance of type U (not function type)
668 to pointer to instance of type U (not function type)
669cost is( 0, 0, 0 )
670actual expression:
671        Variable Expression: u: instance of type U (not function type)
672--- results are
673        lvalue instance of type U (not function type)
674
675converting lvalue instance of type U (not function type)
676 to instance of type U (not function type)
677cost is( 0, 0, 2 )
678Case +++++++++++++
679formals are:
680        _dst: pointer to instance of type U (not function type)
681        _src: instance of type U (not function type)
682actuals are:
683                  Address of:
684            Variable Expression: u_instance: instance of type U (not function type)
685
686                  Cast of:
687            Variable Expression: u: instance of type U (not function type)
688
689          to:
690            instance of type U (not function type)
691
692bindings are:
693cost of conversion is:( 0, 0, 2 )
694alternatives before prune:
695Cost ( 0, 0, 2 ): Application of
696  Variable Expression: ?=?: function
697      with parameters
698        _dst: pointer to instance of type U (not function type)
699        _src: instance of type U (not function type)
700      returning
701        instance of type U (not function type)
702
703to arguments
704      Address of:
705      Variable Expression: u_instance: instance of type U (not function type)
706
707      Cast of:
708      Variable Expression: u: instance of type U (not function type)
709
710    to:
711      instance of type U (not function type)
712
713(types:
714    instance of type U (not function type)
715)
716Environment:
717
718there are 1 alternatives before elimination
719there are 1 alternatives after elimination
720alternatives before prune:
721Cost ( 0, 0, 1 ): Cast of:
722  Application of
723    Variable Expression: ?=?: function
724        with parameters
725          _dst: pointer to instance of type U (not function type)
726          _src: instance of type U (not function type)
727        returning
728          instance of type U (not function type)
729
730  to arguments
731          Address of:
732        Variable Expression: u_instance: instance of type U (not function type)
733
734          Cast of:
735        Variable Expression: u: instance of type U (not function type)
736
737      to:
738        instance of type U (not function type)
739
740
741to:
742  nothing
743(types:
744)
745Environment:
746
747there are 1 alternatives before elimination
748there are 1 alternatives after elimination
749nameExpr is ?++
750decl is ?++: function
751  with parameters
752    pointer to signed int
753  returning
754    signed int
755
756newExpr is Variable Expression: ?++: function
757    with parameters
758      pointer to signed int
759    returning
760      signed int
761
762
763alternatives before prune:
764Cost ( 0, 0, 0 ): Variable Expression: ?++: function
765    with parameters
766      pointer to signed int
767    returning
768      signed int
769
770(types:
771    pointer to function
772        with parameters
773          pointer to signed int
774        returning
775          signed int
776
777)
778Environment:
779
780there are 1 alternatives before elimination
781there are 1 alternatives after elimination
782nameExpr is *?
783decl is *?: forall
784    T: type
785      with assertions
786        ?=?: pointer to function
787            with parameters
788              pointer to instance of type T (not function type)
789              instance of type T (not function type)
790            returning
791              instance of type T (not function type)
792
793
794  function
795  with parameters
796    pointer to instance of type T (not function type)
797  returning
798    lvalue instance of type T (not function type)
799
800newExpr is Variable Expression: *?: forall
801      T: type
802        with assertions
803          ?=?: pointer to function
804              with parameters
805                pointer to instance of type T (not function type)
806                instance of type T (not function type)
807              returning
808                instance of type T (not function type)
809
810
811    function
812    with parameters
813      pointer to instance of type T (not function type)
814    returning
815      lvalue instance of type T (not function type)
816
817
818alternatives before prune:
819Cost ( 0, 0, 0 ): Variable Expression: *?: forall
820      T: type
821        with assertions
822          ?=?: pointer to function
823              with parameters
824                pointer to instance of type T (not function type)
825                instance of type T (not function type)
826              returning
827                instance of type T (not function type)
828
829
830    function
831    with parameters
832      pointer to instance of type T (not function type)
833    returning
834      lvalue instance of type T (not function type)
835
836(types:
837    pointer to forall
838          _0_T: type
839            with assertions
840              ?=?: pointer to function
841                  with parameters
842                    pointer to instance of type _0_T (not function type)
843                    instance of type _0_T (not function type)
844                  returning
845                    instance of type _0_T (not function type)
846
847
848        function
849        with parameters
850          pointer to instance of type _0_T (not function type)
851        returning
852          lvalue instance of type _0_T (not function type)
853
854)
855Environment:
856
857there are 1 alternatives before elimination
858there are 1 alternatives after elimination
859nameExpr is u
860decl is u: instance of type U (not function type)
861newExpr is Variable Expression: u: instance of type U (not function type)
862
863alternatives before prune:
864Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
865(types:
866    lvalue instance of type U (not function type)
867)
868Environment:
869
870there are 1 alternatives before elimination
871there are 1 alternatives after elimination
872findSubExprs
873Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
874(types:
875    lvalue instance of type U (not function type)
876)
877Environment:
878
879working on alternative:
880        Cost ( 0, 0, 0 ):         Variable Expression: *?: forall
881              T: type
882                with assertions
883                  ?=?: pointer to function
884                      with parameters
885                        pointer to instance of type T (not function type)
886                        instance of type T (not function type)
887                      returning
888                        instance of type T (not function type)
889
890
891            function
892            with parameters
893              pointer to instance of type T (not function type)
894            returning
895              lvalue instance of type T (not function type)
896
897(types:
898            pointer to forall
899                  _0_T: type
900                    with assertions
901                      ?=?: pointer to function
902                          with parameters
903                            pointer to instance of type _0_T (not function type)
904                            instance of type _0_T (not function type)
905                          returning
906                            instance of type _0_T (not function type)
907
908
909                function
910                with parameters
911                  pointer to instance of type _0_T (not function type)
912                returning
913                  lvalue instance of type _0_T (not function type)
914
915)
916        Environment:
917formal type is pointer to instance of type _0_T (not function type)
918actual type is lvalue instance of type U (not function type)
919need assertions:
920?=?: pointer to function
921          with parameters
922            pointer to instance of type _0_T (not function type)
923            instance of type _0_T (not function type)
924          returning
925            instance of type _0_T (not function type)
926(used)============= original indexer
927===idTable===
928===typeTable===
929===structTable===
930===enumTable===
931===unionTable===
932===contextTable===
933============= new indexer
934===idTable===
935===typeTable===
936===structTable===
937===enumTable===
938===unionTable===
939===contextTable===
940inferRecursive: assertion is ?=?: pointer to function
941  with parameters
942    pointer to instance of type _0_T (not function type)
943    instance of type _0_T (not function type)
944  returning
945    instance of type _0_T (not function type)
946
947inferRecursive: candidate is ?=?: forall
948    DT: incomplete type
949  function
950  with parameters
951    pointer to pointer to instance of type DT (not function type)
952    pointer to instance of type DT (not function type)
953  returning
954    pointer to instance of type DT (not function type)
955
956unifying pointer to function
957  with parameters
958    pointer to instance of type _0_T (not function type)
959    instance of type _0_T (not function type)
960  returning
961    instance of type _0_T (not function type)
962 with pointer to forall
963    _1_DT: incomplete type
964  function
965  with parameters
966    pointer to pointer to instance of type _1_DT (not function type)
967    pointer to instance of type _1_DT (not function type)
968  returning
969    pointer to instance of type _1_DT (not function type)
970
971inferRecursive: candidate is ?=?: automatically generated function
972  with parameters
973    _dst: pointer to instance of type T (not function type)
974    _src: instance of type T (not function type)
975  returning
976    instance of type T (not function type)
977
978unifying pointer to function
979  with parameters
980    pointer to instance of type _0_T (not function type)
981    instance of type _0_T (not function type)
982  returning
983    instance of type _0_T (not function type)
984 with pointer to function
985  with parameters
986    _dst: pointer to instance of type T (not function type)
987    _src: instance of type T (not function type)
988  returning
989    instance of type T (not function type)
990
991inferRecursive: candidate is ?=?: automatically generated function
992  with parameters
993    _dst: pointer to instance of type U (not function type)
994    _src: instance of type U (not function type)
995  returning
996    instance of type U (not function type)
997  with body
998    CompoundStmt
999              Return Statement, returning: Applying untyped:
1000    Name: ?=?
1001...to:
1002    Cast of:
1003      Variable Expression: _dst: pointer to instance of type U (not function type)
1004
1005    to:
1006      pointer to pointer to signed int
1007    Cast of:
1008      Variable Expression: _src: instance of type U (not function type)
1009
1010    to:
1011      pointer to signed int
1012
1013
1014
1015unifying pointer to function
1016  with parameters
1017    pointer to instance of type _0_T (not function type)
1018    instance of type _0_T (not function type)
1019  returning
1020    instance of type _0_T (not function type)
1021 with pointer to function
1022  with parameters
1023    _dst: pointer to instance of type U (not function type)
1024    _src: instance of type U (not function type)
1025  returning
1026    instance of type U (not function type)
1027
1028inferRecursive: candidate is ?=?: function
1029  with parameters
1030    pointer to signed int
1031    signed int
1032  returning
1033    signed int
1034
1035unifying pointer to function
1036  with parameters
1037    pointer to instance of type _0_T (not function type)
1038    instance of type _0_T (not function type)
1039  returning
1040    instance of type _0_T (not function type)
1041 with pointer to function
1042  with parameters
1043    pointer to signed int
1044    signed int
1045  returning
1046    signed int
1047
1048success!
1049satisfying assertion 15 ?=?: pointer to function
1050  with parameters
1051    pointer to instance of type _0_T (not function type)
1052    instance of type _0_T (not function type)
1053  returning
1054    instance of type _0_T (not function type)
1055 with declaration 25 ?=?: function
1056  with parameters
1057    pointer to signed int
1058    signed int
1059  returning
1060    signed int
1061
1062actual expression:
1063        Variable Expression: u: instance of type U (not function type)
1064--- results are
1065        lvalue instance of type U (not function type)
1066
1067converting lvalue instance of type U (not function type)
1068 to pointer to instance of type _0_T (not function type)
1069cost is( 0, 0, 1 )
1070
1071converting pointer to function
1072          with parameters
1073            pointer to signed int
1074            signed int
1075          returning
1076            signed int
1077
1078 to pointer to function
1079          with parameters
1080            pointer to instance of type _0_T (not function type)
1081            instance of type _0_T (not function type)
1082          returning
1083            instance of type _0_T (not function type)
1084
1085cost of conversion is ( 0, 0, 0 )
1086Case +++++++++++++
1087formals are:
1088        pointer to instance of type _0_T (not function type)
1089actuals are:
1090                  Cast of:
1091            Variable Expression: u: instance of type U (not function type)
1092
1093          to:
1094            pointer to signed int
1095
1096bindings are:
1097        ( _0_T ) -> signed int  (no widening)
1098cost of conversion is:( 0, 4, 1 )
1099alternatives before prune:
1100Cost ( 0, 4, 1 ): Application of
1101  Variable Expression: *?: forall
1102        T: type
1103          with assertions
1104            ?=?: pointer to function
1105                with parameters
1106                  pointer to instance of type T (not function type)
1107                  instance of type T (not function type)
1108                returning
1109                  instance of type T (not function type)
1110
1111
1112      function
1113      with parameters
1114        pointer to instance of type T (not function type)
1115      returning
1116        lvalue instance of type T (not function type)
1117
1118to arguments
1119      Cast of:
1120      Variable Expression: u: instance of type U (not function type)
1121
1122    to:
1123      pointer to signed int
1124
1125with inferred parameters:
1126  ?=?: function
1127    with parameters
1128      pointer to signed int
1129      signed int
1130    returning
1131      signed int
1132
1133(types:
1134    lvalue instance of type _0_T (not function type)
1135)
1136Environment:   ( _0_T ) -> signed int  (no widening)
1137
1138
1139there are 1 alternatives before elimination
1140there are 1 alternatives after elimination
1141alternatives before prune:
1142Cost ( 0, 4, 1 ): Address of:
1143  Application of
1144    Variable Expression: *?: forall
1145          T: type
1146            with assertions
1147              ?=?: pointer to function
1148                  with parameters
1149                    pointer to instance of type T (not function type)
1150                    instance of type T (not function type)
1151                  returning
1152                    instance of type T (not function type)
1153
1154
1155        function
1156        with parameters
1157          pointer to instance of type T (not function type)
1158        returning
1159          lvalue instance of type T (not function type)
1160
1161  to arguments
1162          Cast of:
1163        Variable Expression: u: instance of type U (not function type)
1164
1165      to:
1166        pointer to signed int
1167
1168  with inferred parameters:
1169    ?=?: function
1170      with parameters
1171        pointer to signed int
1172        signed int
1173      returning
1174        signed int
1175
1176(types:
1177    pointer to signed int
1178)
1179Environment:   ( _0_T ) -> signed int  (no widening)
1180
1181
1182there are 1 alternatives before elimination
1183there are 1 alternatives after elimination
1184findSubExprs
1185Cost ( 0, 4, 1 ): Address of:
1186  Application of
1187    Variable Expression: *?: forall
1188          T: type
1189            with assertions
1190              ?=?: pointer to function
1191                  with parameters
1192                    pointer to instance of type T (not function type)
1193                    instance of type T (not function type)
1194                  returning
1195                    instance of type T (not function type)
1196
1197
1198        function
1199        with parameters
1200          pointer to instance of type T (not function type)
1201        returning
1202          lvalue instance of type T (not function type)
1203
1204  to arguments
1205          Cast of:
1206        Variable Expression: u: instance of type U (not function type)
1207
1208      to:
1209        pointer to signed int
1210
1211  with inferred parameters:
1212    ?=?: function
1213      with parameters
1214        pointer to signed int
1215        signed int
1216      returning
1217        signed int
1218
1219(types:
1220    pointer to signed int
1221)
1222Environment:   ( _0_T ) -> signed int  (no widening)
1223
1224
1225working on alternative:
1226        Cost ( 0, 0, 0 ):         Variable Expression: ?++: function
1227            with parameters
1228              pointer to signed int
1229            returning
1230              signed int
1231
1232(types:
1233            pointer to function
1234                with parameters
1235                  pointer to signed int
1236                returning
1237                  signed int
1238
1239)
1240        Environment:
1241formal type is pointer to signed int
1242actual type is pointer to signed int
1243need assertions:
1244============= original indexer
1245===idTable===
1246===typeTable===
1247===structTable===
1248===enumTable===
1249===unionTable===
1250===contextTable===
1251============= new indexer
1252===idTable===
1253===typeTable===
1254===structTable===
1255===enumTable===
1256===unionTable===
1257===contextTable===
1258actual expression:
1259        Address of:
1260          Application of
1261            Variable Expression: *?: forall
1262                  T: type
1263                    with assertions
1264                      ?=?: pointer to function
1265                          with parameters
1266                            pointer to instance of type T (not function type)
1267                            instance of type T (not function type)
1268                          returning
1269                            instance of type T (not function type)
1270
1271
1272                function
1273                with parameters
1274                  pointer to instance of type T (not function type)
1275                returning
1276                  lvalue instance of type T (not function type)
1277
1278          to arguments
1279                          Cast of:
1280                Variable Expression: u: instance of type U (not function type)
1281
1282              to:
1283                pointer to signed int
1284
1285          with inferred parameters:
1286            ?=?: function
1287              with parameters
1288                pointer to signed int
1289                signed int
1290              returning
1291                signed int
1292
1293--- results are
1294        pointer to signed int
1295
1296converting pointer to signed int
1297 to pointer to signed int
1298cost is( 0, 0, 0 )
1299Case +++++++++++++
1300formals are:
1301        pointer to signed int
1302actuals are:
1303                  Address of:
1304            Application of
1305              Variable Expression: *?: forall
1306                    T: type
1307                      with assertions
1308                        ?=?: pointer to function
1309                            with parameters
1310                              pointer to instance of type T (not function type)
1311                              instance of type T (not function type)
1312                            returning
1313                              instance of type T (not function type)
1314
1315
1316                  function
1317                  with parameters
1318                    pointer to instance of type T (not function type)
1319                  returning
1320                    lvalue instance of type T (not function type)
1321
1322            to arguments
1323                              Cast of:
1324                  Variable Expression: u: instance of type U (not function type)
1325
1326                to:
1327                  pointer to signed int
1328
1329            with inferred parameters:
1330              ?=?: function
1331                with parameters
1332                  pointer to signed int
1333                  signed int
1334                returning
1335                  signed int
1336
1337
1338bindings are:
1339        ( _0_T ) -> signed int  (no widening)
1340cost of conversion is:( 0, 0, 0 )
1341alternatives before prune:
1342Cost ( 0, 0, 0 ): Application of
1343  Variable Expression: ?++: function
1344      with parameters
1345        pointer to signed int
1346      returning
1347        signed int
1348
1349to arguments
1350      Address of:
1351      Application of
1352        Variable Expression: *?: forall
1353              T: type
1354                with assertions
1355                  ?=?: pointer to function
1356                      with parameters
1357                        pointer to instance of type T (not function type)
1358                        instance of type T (not function type)
1359                      returning
1360                        instance of type T (not function type)
1361
1362
1363            function
1364            with parameters
1365              pointer to instance of type T (not function type)
1366            returning
1367              lvalue instance of type T (not function type)
1368
1369      to arguments
1370                  Cast of:
1371            Variable Expression: u: instance of type U (not function type)
1372
1373          to:
1374            pointer to signed int
1375
1376      with inferred parameters:
1377        ?=?: function
1378          with parameters
1379            pointer to signed int
1380            signed int
1381          returning
1382            signed int
1383
1384
1385(types:
1386    signed int
1387)
1388Environment:   ( _0_T ) -> signed int  (no widening)
1389
1390
1391there are 1 alternatives before elimination
1392there are 1 alternatives after elimination
1393alternatives before prune:
1394Cost ( 0, 0, 1 ): Cast of:
1395  Application of
1396    Variable Expression: ?++: function
1397        with parameters
1398          pointer to signed int
1399        returning
1400          signed int
1401
1402  to arguments
1403          Address of:
1404        Application of
1405          Variable Expression: *?: forall
1406                T: type
1407                  with assertions
1408                    ?=?: pointer to function
1409                        with parameters
1410                          pointer to instance of type T (not function type)
1411                          instance of type T (not function type)
1412                        returning
1413                          instance of type T (not function type)
1414
1415
1416              function
1417              with parameters
1418                pointer to instance of type T (not function type)
1419              returning
1420                lvalue instance of type T (not function type)
1421
1422        to arguments
1423                      Cast of:
1424              Variable Expression: u: instance of type U (not function type)
1425
1426            to:
1427              pointer to signed int
1428
1429        with inferred parameters:
1430          ?=?: function
1431            with parameters
1432              pointer to signed int
1433              signed int
1434            returning
1435              signed int
1436
1437
1438
1439to:
1440  nothing
1441(types:
1442)
1443Environment:   ( _0_T ) -> signed int  (no widening)
1444
1445
1446there are 1 alternatives before elimination
1447there are 1 alternatives after elimination
1448nameExpr is u
1449decl is u: instance of type U (not function type)
1450newExpr is Variable Expression: u: instance of type U (not function type)
1451
1452alternatives before prune:
1453Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
1454(types:
1455    lvalue instance of type U (not function type)
1456)
1457Environment:
1458
1459there are 1 alternatives before elimination
1460there are 1 alternatives after elimination
1461alternatives before prune:
1462Cost ( 0, 0, 2 ): Cast of:
1463  Variable Expression: u: instance of type U (not function type)
1464
1465to:
1466  instance of type U (not function type)
1467(types:
1468    instance of type U (not function type)
1469)
1470Environment:
1471
1472there are 1 alternatives before elimination
1473there are 1 alternatives after elimination
1474nameExpr is u
1475decl is u: instance of type U (not function type)
1476newExpr is Variable Expression: u: instance of type U (not function type)
1477
1478alternatives before prune:
1479Cost ( 0, 0, 0 ): Variable Expression: u: instance of type U (not function type)
1480(types:
1481    lvalue instance of type U (not function type)
1482)
1483Environment:
1484
1485there are 1 alternatives before elimination
1486there are 1 alternatives after elimination
1487alternatives before prune:
1488Cost ( 0, 0, 1 ): Cast of:
1489  Variable Expression: u: instance of type U (not function type)
1490
1491to:
1492  pointer to signed int
1493(types:
1494    pointer to signed int
1495)
1496Environment:
1497
1498there are 1 alternatives before elimination
1499there are 1 alternatives after elimination
1500Error: No reasonable alternatives for expression Cast of:
1501  Variable Expression: _dst: pointer to instance of type U (not function type)
1502
1503to:
1504  pointer to pointer to signed int
1505
Note: See TracBrowser for help on using the repository browser.