**diff options**

author | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-07-11 18:11:44 +0000 |
---|---|---|

committer | murf <murf@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-07-11 18:11:44 +0000 |

commit | 7f5e9fa22568009adefa72b5072f51c8afc0968f (patch) | |

tree | 835b99fc589efbec601cd9fc7f2dc9bc9c1e2fe4 | |

parent | 141282ffbd4c549520476365e5b5b33d4b69e2a8 (diff) |

further reversion of previously applied floating point stuff for expr2

git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@74628 f38db490-d61c-443f-a65b-d21fe96a405b

-rw-r--r-- | UPGRADE.txt | 6 | ||||

-rw-r--r-- | doc/channelvariables.txt | 21 | ||||

-rw-r--r-- | utils/expr2.testinput | 4 |

3 files changed, 7 insertions, 24 deletions

diff --git a/UPGRADE.txt b/UPGRADE.txt index 48954e496..5be1a7f3c 100644 --- a/UPGRADE.txt +++ b/UPGRADE.txt @@ -101,12 +101,6 @@ PBX Core: if your dialplan relies on the ability to 'run off the end' of an extension and wait for a new extension without using WaitExten() to accomplish that, you will need set autofallthrough to 'no' in your extensions.conf file. - -* The ast_expr2 stuff has been modified to handle floating-point numbers. - Numbers of the format D.D are now acceptable input for the expr parser, - Where D is a string of base-10 digits. All math is now done in "long double", - if it is available on your compiler/architecture. This was half-way between - a bug-fix (because the MATH func returns fp by default), and an enhancement. Command Line Interface: diff --git a/doc/channelvariables.txt b/doc/channelvariables.txt index 6c501ae52..761516fa7 100644 --- a/doc/channelvariables.txt +++ b/doc/channelvariables.txt @@ -212,19 +212,19 @@ with equal precedence are grouped within { } symbols. an empty string or zero; otherwise, returns zero. expr1 {=, >, >=, <, <=, !=} expr2 - Return the results of floating pt. comparison if both arguments are - numbers; otherwise, returns the results of string comparison + Return the results of integer comparison if both arguments are + integers; otherwise, returns the results of string comparison using the locale-specific collation sequence. The result of each comparison is 1 if the specified relation is true, or 0 if the relation is false. expr1 {+, -} expr2 - Return the results of addition or subtraction of + Return the results of addition or subtraction of integer-valued arguments. expr1 {*, /, %} expr2 - Return the results of multiplication, division, or - remainder of arguments. (floating point [long double if possible]). + Return the results of multiplication, integer division, or + remainder of integer-valued arguments. - expr1 Return the result of subtracting expr1 from 0. @@ -322,13 +322,10 @@ __________________________ NUMBERS VS STRINGS -------------------------- -Tokens consisting only of numbers are converted to long doubles for -most of the operators (80-128 bits, depending on the compiler/platform/etc). -This means that overflows can occur when the +Tokens consisting only of numbers are converted to 64-bit numbers for +most of the operators. This means that overflows can occur when the numbers get above 18 digits. Warnings will appear in the logs in this case. -If "long double" is not available, then "double" is used (usually 64 bit floating -point numbers). ___________________________ CONDITIONALS --------------------------- @@ -487,10 +484,6 @@ of possible concern with "legacy" extension.conf files: 9. Unary operators '-' and '!' were made right associative. -10. All arithmetic operations are now done in floating point (long double - if possible, plain double otherwise). - - -------------------------------------------------------- DEBUGGING HINTS FOR $[ ] EXPRESSIONS -------------------------------------------------------- diff --git a/utils/expr2.testinput b/utils/expr2.testinput index 0dfc862bc..948baaf94 100644 --- a/utils/expr2.testinput +++ b/utils/expr2.testinput @@ -90,7 +90,3 @@ x != x 3 something 043 -2.1+4.2 -1.500003+1.4999999999999898989898989898989898989889898 -1/4 - |