Phix 1.0.3 uploaded

new topic     » topic index » view thread      » older message » newer message

Maintenance release, nothing particularly exciting, unless a half-complete (or is that half-incomplete) GUI is your thing.

Bugfix: IupToggleInt unrecognised by p2js 
Added basic enum-style nested constants, eg constant ABCD = {A:=$, B:=$, C:=$, D:=$} is the  
        same as constant ABCD = {A:=1, B:=2, C:=3, D:=4} (15/3/23, used in xpGUI.e) 
Moved begins() out of vlookup[.e/htm] to match.e, where it should clearly always have been. 
Replaced bPrefW parameter on requires() with bQuiet, and added a simple mad-spawn prevention. 
Minor improvement to the error message for return <const> in a procedure, see readme.txt. 
Fudge: get_struct_field() does not retrieve floats/doubles correctly. bool bAsFlt=false added 
       as a temporary work-around, and I've suggested it might signal IEEE754s via a -ve size, 
       but that would of course justify a fair bit more testing than I can afford right now. 
Minor improvement to the location of a "p2js violation: sq_add() must be used here" error on 
      "sequence lines = tagset(9)+file*10", it now points at the '+' rather than next line. 
Added "with nested_globals", under which "local constant S = {A:=1}" declares S as local, but 
      A as global. There is now also a complementary "with nested_locals" for the inverse. 
Added a new get_possible_constant_names() diagnostic aid, see the docs for further details. 
Bugfix: "for l in split(text,'\n') to 4 do" triggered an attempt to subscript an atom error,  
        traced to a missing saveFunctionResultVars() in DoFor(), because the to clause meant 
        it was not doing the implicit length() that would have done exactly that. [19/6/23] 
Known Bug: under 64-bit (while a) "while p<1e10 do" works fine were p declared atom, it is 
        possible to declare it as integer, and suddenly that loop behaves as "while true do". 
        The problem is that pglobals.e declares MAXINT as #3FFF_FFFF rather than either that 
        or #3FFF_FFFF_FFFF_FFFF... However attempts to fix that led to catastrophic failure, 
        especially on 64-bit Linux, such that it would no longer self-compile, hence a proper  
        fix has been deferred to version 2.0.0 or later. See rosetta/Ormiston_triplets.exw. 
        Just in case you missed it, the compiler uses "MAXINT<1e10" to completely optimise 
        away that test to "true", which at least in one sense is perfectly correct/wanted. 
        It may be possible to selectively use a new atom T_MAXINT which is target-specific, 
        but I can't really justify expending any (more) time and effort on that right now. 
Bugfix: (partial, 23/6/23) pltype.e (which even I barely understand) now contains: 
                            --  ntyp = or_bits(ntyp,T_N) 
                                ntyp = or_bits(rootType(ntyp),T_N) 
        It was certainly an error to combine a builtin and udt type like that, at least. 
        It has triggered a knock-on error in tests/p46ltype.e under 64-bit (only??) that 
        warrants further investigation, and maybe back out a few other changes made. 
Added median() and average() builtins. Move phi into gcd.e, merged min/max/smallest docs. 
Added mpz_set_q(), mpz_next_prime(), mpfr_fmod(), mpfr_si_pow_si() to mpfr.e 
Added builtins/primesieve.e but you'd have to download the dll, and it's not documented. 
Improved fmt error messages in [s]printf(): the generic "error in format string" is now 
"unexpected end of format string", "missing ] in format string", "unknown specifier:%c", 
"comma fill not supported on %c", or "show plus not supported on %c". 
Alpha version of xpGUI: maybe ~60% complete, the most glaring omission being the layout 
management, so few things get the desired position/size/spacing as yet. The docs should 
be fairly close to the final form, I've probably spent more time on them than the code. 

Usual place: http://phix.x10.mx/download.php (1.0.2 notes: https://openeuphoria.org/forum/m/137643.wc )

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu