Re: Phix : win32 programs not working
- Posted by petelomax Nov 23, 2020
- 818 views
I have made a small change to pmain.e/checkforbuiltins(), line 13166 from
if find({autoinclude,gb_fwd},done) then trace(1) end if
to (with cfb_count outside of checkforbuiltins)
integer cfb_count = 0 ... if find({autoinclude,gb_fwd},done) then ?{"autoinclude",autoinclude,"gb_fwd",gb_fwd,getname(symtab[gb_fwd][S_Name],-2)} cfb_count += 1 if cfb_count>100 then ?9/0 end if trace(1) end if
so it should now spit out lines such as (I temporarily mangled the encode_base64() routine name as a quick test)
{"autoinclude","base64.e","gb_fwd",608,"encode_base64"}
and soon crash, if it is getting stuck in a loop because psym.e's idea of what should be in the builtins is not matching what it's loading, presumably because 0.8.1 is loading 0.7.9's includes or something like that.
I cannot think of a sensible or more importantly maintainable way to earmark Phix/builtins, apart from ones that will likely trigger never-ending grief for both me and everyone else.
If I put a version number in every single file, it will make building the next version simply impossible.
If I rename builtins as say builtins.0.8.2 it will cause multiple headaches and at the same time offer no protection for locally-copied files.
What is actually needed is some kind of "do not use after Feb 22nd 2022", right now, predicting exactly when I'll next release a breaking version...
Maybe if I parse ~200 files and store their signatures, I could, erm, nope, lost it....