pike.git / CHANGES

version» Context lines:

pike.git/CHANGES:189:    It's now possible to set custom attributes on types. This is    currently used to improve the argument checking for sprintf()    and related functions, and for marking symbols as deprecated.    eg:       __deprecated__ mixed obsolete_function();    __deprecated__(mixed) obsolete_return_value();    mixed fun(__deprecated__(mixed) obsolete_arg);    __deprecated__(mixed) obsolete_variable;    +  The deprecated type flag using __deprecated__ is a convenience +  syntax to use instead of e.g.    -  __attribute__(deprecated) -  FIXME: syntax for __attribute__ +  void f(void|__attribute__("deprecated",int) timeout)    -  +  Other uses of __attribute__ in type declarations can be seen in e.g. +  the type for werror(): +  +  > typeof(werror); +  (1) Result: scope(0,function(string : int) | +  function(__attribute__("sprintf_format", string), +  __attribute__("sprintf_args", mixed) ... : int) | +  function(array(string), mixed ... : int)) +    o __func__       The symbol __func__ now evaluates to the name of the current    function. Note that this name currently can differ from the    declared name in case of local functions (ie lambdas). Note    also that __func__ behaves like a litteral string, so implicit    string concatenation is supported. eg:       error("Error in " __func__ ".\n");   
pike.git/CHANGES:229:      o Compatibility name spaces       Older versions of a function can be reached through its version name    space. For example the 7.4 version of the hash function can be    called through 7.4::hash().      o Iterator API       The iterator API method Iterator->next() is no longer optional. -  FIXME: Compatibility implications? +          Extensions and New Functions   ----------------------------      o exit()       Exit now takes optional arguments to act as a werror in addition to    exiting the process.   
pike.git/CHANGES:276:    (1) Result: "\0\5Hello"       - The new formatting directive %q can be used to format a atring as    a quoted string, quoting all control character and non-8-bit    characters as well as quote characters. Like %O but always on one    line.       > sprintf("%q", "abc \x00 \" \' \12345");    (1) Result: "\"abc \\0 \\\" ' \\u14e5\""    +  - Ranges in sscanf sets can now start with ^, even at the beginning +  of the set specifier. Example: %[^-^] matches a set with only ^ in +  it. To negate a set with - in it, the - character must now be the +  last character in the set specifier. +    o encode/decode value and programs       --with-portable-bytecode is now the default. Pike programs that have    been dumped on one architecture now can be decoded on another.    - o sscanf %[^-X] (!= %[^X-]) %[X-X] FIXME -  +    o gethrtime, gethrvtime, gauge       Added support for POSIX style timers using clock_gettime(3). Notably    this fixes nice high resolution thread local cpu time and monotonic    real time on reasonably modern Linux systems.       There are new constants CPU_TIME_* and REAL_TIME_* in the System    module to allow pike code to query various properties of the CPU and    real time clocks in use.