compile order problem - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html) +--- Forum: HP Prime (/forum-5.html) +--- Thread: compile order problem (/thread-4806.html) |
compile order problem - ji3m - 09-26-2015 01:42 PM order problem EXPORT TX=0; //EXPORT TOTTER; //doesnt work //EXPORT TOTTER(); //doesnt work EXPORT TEETER() BEGIN IF TX>4 THEN RETURN TX; ELSE TOTTER(); // <- error here END; END; EXPORT TOTTER() BEGIN IF TX>4 THEN TX:=TX+1; RETURN TX; ELSE TEETER(); END; Does anyone know how to make this compile? Its not about recursion but about order of compilation and lack of declarations. I have seversl "files" whick cross call routines and csnt conrol the order. of compilation. Using two different files also fails since neither succeeds. RE: compile order problem - DrD - 09-26-2015 02:25 PM One way: Code:
-Dale- RE: compile order problem - xset - 09-26-2015 02:27 PM The solution: EXPORT TX=0; TOTTER(); // forward declaration, no need for EXPORT here EXPORT TEETER() BEGIN IF TX>4 THEN RETURN TX; ELSE TOTTER(); // no error END; END; EXPORT TOTTER() BEGIN IF TX>4 THEN TX:=TX+1; RETURN TX; ELSE TEETER(); END; // u forgot second END here ??? END; RE: compile order problem - ji3m - 09-26-2015 02:34 PM Thanx to both. Didnt try the bare decl. If they are in different files will export work.? |