The initial mode value of ieee function is setted to 2. 02/17202/4
Adeline CARNIS [Mon, 14 Sep 2015 07:11:53 +0000 (09:11 +0200)]
Change-Id: Ie3c727863f7bb986e8678aaf9e729a30112c00bc

scilab/CHANGES_6.0.X
scilab/modules/ast/src/cpp/system_env/configvariable.cpp
scilab/modules/console/etc/XConfiguration-general.xml
scilab/modules/core/tests/nonreg_tests/bug_2481.dia.ref
scilab/modules/core/tests/nonreg_tests/bug_2481.tst
scilab/modules/elementary_functions/help/en_US/floating_point/ieee.xml
scilab/modules/elementary_functions/help/fr_FR/floating_point/ieee.xml
scilab/modules/elementary_functions/help/pt_BR/floating_point/ieee.xml
scilab/modules/elementary_functions/help/ru_RU/floating_point/ieee.xml
scilab/modules/elementary_functions/tests/nonreg_tests/bug_7216.dia.ref
scilab/modules/elementary_functions/tests/nonreg_tests/bug_7216.tst

index dd04a59..7d574f4 100644 (file)
@@ -12,6 +12,13 @@ New Features
 * Introduction of a call stack limit. Default maximum depth is setup to 1000 and
   can be changed by new function recursionlimit or by preferences interface.
 
+
+  Modified Functions
+===================
+
+* ieee: the initial mode value is now setted to 2.
+
+
 Deprecated Behaviors
 =====================
 
index bafad79..bd7f9c8 100644 (file)
@@ -1050,7 +1050,7 @@ bool ConfigVariable::getEndProcessing()
 ** ieee
 ** \{
 */
-int ConfigVariable::m_iIeee = 0;
+int ConfigVariable::m_iIeee = 2;
 
 void ConfigVariable::setIeee(int _iIeee)
 {
index 4a5dcf2..295903d 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <general title="_(General)">
     <body>
-        <environment fpe="0" printing-format="v" width="10" recursion-limit="1000">
+        <environment fpe="2" printing-format="v" width="10" recursion-limit="1000">
             <fpe code="0" floating-point-exception="_(Produces an error)"/>
             <fpe code="1" floating-point-exception="_(Produces a warning)"/>
             <fpe code="2" floating-point-exception="_(Produces Inf or NaN)"/>
@@ -27,7 +27,7 @@
         <java-heap-memory heap-size="256"/>
         <startup title="_(Start-up directory)" use="current" default="" previous=""/>
     </body>
-    <confirmation-dialogs title="_(Confirmation dialogs)"> 
+    <confirmation-dialogs title="_(Confirmation dialogs)">
         <body>
             <tools>
                 <tool state="checked" id="console-exit" name="Console" description="_(Warn before exiting Scilab)"/>
index dcea167..bf5208d 100644 (file)
@@ -17,6 +17,8 @@
 //  Apparently "sigma.loc = zeros(3,4)" is crucial, entering a random 
 //  matrix does not have the same effect. It makes me believe it is a bug 
 //  in the try-catch primitive.
+m_ieee = ieee();
+ieee(0);
 function x=foo
   x=%t 
   try
@@ -35,3 +37,4 @@ function x=rf()
 endfunction
 if ~foo() then bugmes();quit;end
 if ~rf() then bugmes();quit;end
+ieee(m_ieee);
index e0bf4f8..a81356b 100644 (file)
@@ -19,6 +19,8 @@
 //  matrix does not have the same effect. It makes me believe it is a bug 
 //  in the try-catch primitive.
 
+m_ieee = ieee();
+ieee(0);
 function x=foo
   x=%t 
   try
@@ -39,3 +41,5 @@ endfunction
 
 if ~foo() then pause,end
 if ~rf() then pause,end
+
+ieee(m_ieee);
index f597098..75a0e72 100644 (file)
@@ -51,7 +51,9 @@
             <literal>ieee(mod)</literal> sets the current floating point
             exception mode.
         </para>
-        <para>The initial mode value is 0.</para>
+        <warning>
+            <para>The initial mode value is 2.</para>
+        </warning>
     </refsection>
     <refsection>
         <title>Remarks</title>
@@ -66,4 +68,13 @@ ieee(1);1/0
 ieee(2);1/0,log(0)
  ]]></programlisting>
     </refsection>
+    <refsection>
+        <title>History</title>
+        <revhistory>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>2 is now the initial mode value.</revremark>
+            </revision>
+        </revhistory>
+    </refsection>
 </refentry>
index c4860f2..06d8423 100644 (file)
         <para>
             <literal>ieee(mod)</literal> choisit le mode d'exception ieee courant pour les calculs en virgule flottante.
         </para>
-        <para>
-            La valeur initiale au lancement de Scilab est 0.
-        </para>
+        <warning>
+            <para>
+                La valeur initiale au lancement de Scilab est 2.
+            </para>
+        </warning>
     </refsection>
     <refsection>
         <title>REMARQUES</title>
@@ -72,4 +74,13 @@ ieee(1);1/0
 ieee(2);1/0,log(0)
  ]]></programlisting>
     </refsection>
+    <refsection>
+        <title>Historique</title>
+        <revhistory>
+            <revision>
+                <revnumber>6.0.0</revnumber>
+                <revremark>2 est maintenant la valeur par défaut au lancement de Scilab.</revremark>
+            </revision>
+        </revhistory>
+    </refsection>
 </refentry>
index 3559396..b817e14 100644 (file)
@@ -53,7 +53,9 @@
             <literal>ieee(mod)</literal> ajusta o modo corrente de excessão de
             ponto flutuante.
         </para>
-        <para>O valor de modo incial é 0.</para>
+        <warning>
+            <para>O valor de modo incial é 2.</para>
+        </warning>
     </refsection>
     <refsection>
         <title>Observações </title>
@@ -69,4 +71,10 @@ ieee(1);1/0
 ieee(2);1/0,log(0)
  ]]></programlisting>
     </refsection>
+    <revhistory>
+        <revision>
+            <revnumber>6.0.0</revnumber>
+            <revremark>O valor de modo incial é 2.</revremark>
+        </revision>
+    </revhistory>
 </refentry>
index 7dd8145..2ba6716 100644 (file)
@@ -50,7 +50,9 @@
         <para>
             <literal>ieee(mod)</literal> устанавливает текущий режим исключения с плавающей запятой.
         </para>
-        <para>Исходное значение режима равно 0.</para>
+        <warning>
+            <para>Исходное значение режима равно 2.</para>
+        </warning>
     </refsection>
     <refsection>
         <title>Примечания</title>
@@ -65,4 +67,10 @@ ieee(1);1/0
 ieee(2);1/0,log(0)
  ]]></programlisting>
     </refsection>
+    <revhistory>
+        <revision>
+            <revnumber>6.0.0</revnumber>
+            <revremark>Исходное значение режима равно 2.</revremark>
+        </revision>
+    </revhistory>
 </refentry>
index 5ba560d..2c16997 100644 (file)
 // http://bugzilla.scilab.org/show_bug.cgi?id=7216
 //
 // <-- Short Description -->
-//    modulo(x,0) and pmodulo(x,0) return an error message. With ieee(2), return 
-//    %nan
+//    The result returned by modulo(x,0) and pmodulo(x,0) depends on the ieee()
+//    mode.
 // =============================================================================
+ieee(0);
 assert_checkfalse(execstr("modulo(5,0)", "errcatch") == 0);
 refMsg = msprintf(_("Division by zero...\n"));
 assert_checkerror("modulo(5,0)", refMsg);
 assert_checkfalse(execstr("pmodulo(5,0)", "errcatch") == 0);
 refMsg = msprintf(_("Division by zero...\n"));
 assert_checkerror("pmodulo(5,0)", refMsg);
-ieee(2)
+ieee(2);
 x = modulo(5,0);
 assert_checkequal(x, %nan);
 x = pmodulo(5,0);
 assert_checkequal(x, %nan);
-ieee(0)
+ieee(0);
index 561a582..3b0186b 100644 (file)
 // http://bugzilla.scilab.org/show_bug.cgi?id=7216\r
 //\r
 // <-- Short Description -->\r
-//    modulo(x,0) and pmodulo(x,0) return an error message. With ieee(2), return \r
-//    %nan\r
+//    The result returned by modulo(x,0) and pmodulo(x,0) depends on the ieee()\r
+//    mode.\r
 // =============================================================================\r
 \r
+ieee(0);\r
 assert_checkfalse(execstr("modulo(5,0)", "errcatch") == 0);\r
 refMsg = msprintf(_("Division by zero...\n")); \r
 assert_checkerror("modulo(5,0)", refMsg);\r
@@ -25,13 +26,14 @@ assert_checkfalse(execstr("pmodulo(5,0)", "errcatch") == 0);
 refMsg = msprintf(_("Division by zero...\n")); \r
 assert_checkerror("pmodulo(5,0)", refMsg);\r
 \r
-ieee(2)\r
+ieee(2);\r
 x = modulo(5,0);\r
 assert_checkequal(x, %nan);\r
 \r
 x = pmodulo(5,0);\r
 assert_checkequal(x, %nan);\r
 \r
-ieee(0)\r
+ieee(0);\r
+\r
+\r
 \r
-\r\r