comparison cbackend.rhope @ 81:dbe95bfec970

Very basic file access is now working; however, there's a bug involving assigning a literal to a named pipe inside a conditional block that needs fixing
author Mike Pavone <pavone@retrodev.com>
date Thu, 22 Jul 2010 05:39:08 +0000
parents 0083b2f7b3c7
children 27bb051d631c
comparison
equal deleted inserted replaced
80:d78613686a38 81:dbe95bfec970
673 673
674 Get Raw Pointer@C Function[func,psource,pdest:out] 674 Get Raw Pointer@C Function[func,psource,pdest:out]
675 { 675 {
676 dest <- [pdest]Make Op[func] 676 dest <- [pdest]Make Op[func]
677 source <- [psource]Make Op[func] 677 source <- [psource]Make Op[func]
678 out <- [func]Add Statement[ [[[dest]Append[" = &("]]Append[source]]Append["->payload)"] ] 678 out <- [func]Add Statement[ [[[dest]Append[" = (void*)("]]Append[source]]Append[" + 1)"] ]
679 } 679 }
680 680
681 Array Raw Pointer@C Function[func,psource,pdest:out] 681 Array Raw Pointer@C Function[func,psource,pdest:out]
682 { 682 {
683 dest <- [pdest]Make Op[func] 683 dest <- [pdest]Make Op[func]
776 } 776 }
777 } 777 }
778 778
779 Func Base@C Function[func,tocall,args,type:out] 779 Func Base@C Function[func,tocall,args,type:out]
780 { 780 {
781 Print[ [[func]Name >>]Append[ [": Func Base("]Append[tocall] ] ]
781 rargs <- Map[args, ["Make Op"]Set Input[1, func]] 782 rargs <- Map[args, ["Make Op"]Set Input[1, func]]
782 783
783 If[[[rargs]Length] > [[func]Last NumParams >>]] 784 If[[[rargs]Length] > [[func]Last NumParams >>]]
784 { 785 {
785 If[[[func]Last NumParams >>] = [-1]] 786 If[[[func]Last NumParams >>] = [-1]]