diff options
author | no-author <no-author@gcc.gnu.org> | 2004-04-22 18:51:16 +0000 |
---|---|---|
committer | no-author <no-author@gcc.gnu.org> | 2004-04-22 18:51:16 +0000 |
commit | 255d1216471be681eb2ee9ece11ec735a3f27876 (patch) | |
tree | 8c306f5f27b8edf1ef6e9ea83e476b9872e5642a /gcc/testsuite/ada/acats/tests/cxg/cxg1004.a | |
parent | 28ba643603d86afcea151fc5026a7dc2eaa47da1 (diff) |
This commit was manufactured by cvs2svn to create tagapple/gcc-1742
'apple-gcc-1742'.
git-svn-id: https://gcc.gnu.org/svn/gcc/tags/apple-gcc-1742@81049 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/ada/acats/tests/cxg/cxg1004.a')
-rw-r--r-- | gcc/testsuite/ada/acats/tests/cxg/cxg1004.a | 360 |
1 files changed, 0 insertions, 360 deletions
diff --git a/gcc/testsuite/ada/acats/tests/cxg/cxg1004.a b/gcc/testsuite/ada/acats/tests/cxg/cxg1004.a deleted file mode 100644 index f026eae70db..00000000000 --- a/gcc/testsuite/ada/acats/tests/cxg/cxg1004.a +++ /dev/null @@ -1,360 +0,0 @@ --- CXG1004.A --- --- Grant of Unlimited Rights --- --- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687, --- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained --- unlimited rights in the software and documentation contained herein. --- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making --- this public release, the Government intends to confer upon all --- recipients unlimited rights equal to those held by the Government. --- These rights include rights to use, duplicate, release or disclose the --- released technical data and computer software in whole or in part, in --- any manner and for any purpose whatsoever, and to have or permit others --- to do so. --- --- DISCLAIMER --- --- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR --- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED --- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE --- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE --- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A --- PARTICULAR PURPOSE OF SAID MATERIAL. ---* --- --- OBJECTIVE: --- Check that the specified exceptions are raised by the subprograms --- defined in package Ada.Numerics.Generic_Complex_Elementary_Functions --- given the prescribed input parameter values. --- --- TEST DESCRIPTION: --- This test checks that specific subprograms defined in the --- package Ada.Numerics.Generic_Complex_Elementary_Functions raise the --- exceptions Argument_Error and Constraint_Error when their input --- parameter value are those specified as causing each exception. --- In the case of Constraint_Error, the exception will be raised in --- each test case, provided that the value of the attribute --- 'Machine_Overflows (for the actual type of package --- Generic_Complex_Type) is True. --- --- APPLICABILITY CRITERIA: --- This test only applies to implementations supporting the --- numerics annex. --- --- --- CHANGE HISTORY: --- 06 Dec 94 SAIC ACVC 2.0 --- 16 Nov 95 SAIC Corrected visibility problems for ACVC 2.0.1. --- 29 Sep 96 SAIC Incorporated reviewer comments. --- 02 Jun 98 EDS Replace "_i" with "_One". ---! - -with Ada.Numerics.Generic_Complex_Types; -with Ada.Numerics.Generic_Complex_Elementary_Functions; -with Report; - -procedure CXG1004 is -begin - - Report.Test ("CXG1004", "Check that the specified exceptions are " & - "raised by the subprograms defined in package " & - "Ada.Numerics.Generic_Complex_Elementary_" & - "Functions given the prescribed input " & - "parameter values"); - - Test_Block: - declare - - type Real_Type is new Float; - - TC_Overflows : Boolean := Real_Type'Machine_Overflows; - - package Complex_Pack is - new Ada.Numerics.Generic_Complex_Types(Real_Type); - - package CEF is - new Ada.Numerics.Generic_Complex_Elementary_Functions(Complex_Pack); - - use Ada.Numerics, Complex_Pack, CEF; - - Complex_Zero : constant Complex := Compose_From_Cartesian(0.0, 0.0); - Plus_One : constant Complex := Compose_From_Cartesian(1.0, 0.0); - Minus_One : constant Complex := Compose_From_Cartesian(-1.0, 0.0); - Plus_i : constant Complex := Compose_From_Cartesian(i); - Minus_i : constant Complex := Compose_From_Cartesian(-i); - - Complex_Negative_Real : constant Complex := - Compose_From_Cartesian(-4.0, 2.0); - Complex_Negative_Imaginary : constant Complex := - Compose_From_Cartesian(3.0, -5.0); - - TC_Complex : Complex; - - - -- This procedure is used in "Exception Raising" calls below in an - -- attempt to avoid elimination of the subtest through optimization. - - procedure No_Optimize (The_Complex_Number : Complex) is - begin - Report.Comment("No Optimize: Should never be printed " & - Integer'Image(Integer(The_Complex_Number.Im))); - end No_Optimize; - - - begin - - -- Check that the exception Numerics.Argument_Error is raised by the - -- exponentiation operator when the value of the left operand is zero, - -- and the real component of the exponent (or the exponent itself) is - -- zero. - - begin - TC_Complex := "**"(Left => Complex_Zero, Right => Complex_Zero); - Report.Failed("Argument_Error not raised by exponentiation " & - "operator, left operand = complex zero, right " & - "operand = complex zero"); - No_Optimize(TC_Complex); - exception - when Argument_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised by exponentiation " & - "operator, left operand = complex zero, right " & - "operand = complex zero"); - end; - - begin - TC_Complex := Complex_Zero**0.0; - Report.Failed("Argument_Error not raised by exponentiation " & - "operator, left operand = complex zero, right " & - "operand = real zero"); - No_Optimize(TC_Complex); - exception - when Argument_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised by exponentiation " & - "operator, left operand = complex zero, right " & - "operand = real zero"); - end; - - - begin - TC_Complex := "**"(Left => 0.0, Right => Complex_Zero); - Report.Failed("Argument_Error not raised by exponentiation " & - "operator, left operand = real zero, right " & - "operand = complex zero"); - No_Optimize(TC_Complex); - exception - when Argument_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised by exponentiation " & - "operator, left operand = real zero, right " & - "operand = complex zero"); - end; - - - -- Check that the exception Constraint_Error is raised under the - -- specified circumstances, provided that - -- Complex_Types.Real'Machine_Overflows is True. - - if TC_Overflows then - - -- Raised by Log, when the value of the parameter X is zero. - begin - TC_Complex := Log (X => Complex_Zero); - Report.Failed("Constraint_Error not raised when Function " & - "Log given parameter value of complex zero"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Log given parameter value of complex zero"); - end; - - -- Raised by Cot, when the value of the parameter X is zero. - begin - TC_Complex := Cot (X => Complex_Zero); - Report.Failed("Constraint_Error not raised when Function " & - "Cot given parameter value of complex zero"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Cot given parameter value of complex zero"); - end; - - -- Raised by Coth, when the value of the parameter X is zero. - begin - TC_Complex := Coth (Complex_Zero); - Report.Failed("Constraint_Error not raised when Function " & - "Coth given parameter value of complex zero"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Coth given parameter value of complex zero"); - end; - - -- Raised by the exponentiation operator, when the value of the - -- left operand is zero and the real component of the exponent - -- is negative. - begin - TC_Complex := Complex_Zero**Complex_Negative_Real; - Report.Failed("Constraint_Error not raised when the " & - "exponentiation operator left operand is " & - "complex zero, and the real component of " & - "the exponent is negative"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when the " & - "exponentiation operator left operand is " & - "complex zero, and the real component of " & - "the exponent is negative"); - end; - - -- Raised by the exponentiation operator, when the value of the - -- left operand is zero and the exponent itself (when it is of - -- type real) is negative. - declare - Negative_Exponent : constant Real_Type := -4.0; - begin - TC_Complex := Complex_Zero**Negative_Exponent; - Report.Failed("Constraint_Error not raised when the " & - "exponentiation operator left operand is " & - "complex zero, and the real exponent is " & - "negative"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when the " & - "exponentiation operator left operand is " & - "complex zero, and the real exponent is " & - "negative"); - end; - - -- Raised by Arctan, when the value of the parameter is +i. - begin - TC_Complex := Arctan (Plus_i); - Report.Failed("Constraint_Error not raised when Function " & - "Arctan is given parameter value +i"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arctan is given parameter value +i"); - end; - - -- Raised by Arctan, when the value of the parameter is -i. - begin - TC_Complex := Arctan (Minus_i); - Report.Failed("Constraint_Error not raised when Function " & - "Arctan is given parameter value -i"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arctan is given parameter value -i"); - end; - - -- Raised by Arccot, when the value of the parameter is +i. - begin - TC_Complex := Arccot (Plus_i); - Report.Failed("Constraint_Error not raised when Function " & - "Arccot is given parameter value +i"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arccot is given parameter value +i"); - end; - - -- Raised by Arccot, when the value of the parameter is -i. - begin - TC_Complex := Arccot (Minus_i); - Report.Failed("Constraint_Error not raised when Function " & - "Arccot is given parameter value -i"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arccot is given parameter value -i"); - end; - - -- Raised by Arctanh, when the value of the parameter is +1. - begin - TC_Complex := Arctanh (Plus_One); - Report.Failed("Constraint_Error not raised when Function " & - "Arctanh is given parameter value +1"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arctanh is given parameter value +1"); - end; - - -- Raised by Arctanh, when the value of the parameter is -1. - begin - TC_Complex := Arctanh (Minus_One); - Report.Failed("Constraint_Error not raised when Function " & - "Arctanh is given parameter value -1"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arctanh is given parameter value -1"); - end; - - -- Raised by Arccoth, when the value of the parameter is +1. - begin - TC_Complex := Arccoth (Plus_One); - Report.Failed("Constraint_Error not raised when Function " & - "Arccoth is given parameter value +1"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arccoth is given parameter value +1"); - end; - - -- Raised by Arccoth, when the value of the parameter is -1. - begin - TC_Complex := Arccoth (Minus_One); - Report.Failed("Constraint_Error not raised when Function " & - "Arccoth is given parameter value -1"); - No_Optimize(TC_Complex); - exception - when Constraint_Error => null; -- OK, expected exception. - when others => - Report.Failed("Incorrect exception raised when Function " & - "Arccoth is given parameter value -1"); - end; - - else - Report.Comment - ("Attribute Complex_Pack.Real'Machine_Overflows is False; " & - "evaluation of the complex elementary functions under " & - "specified circumstances was not performed"); - end if; - - - exception - when others => - Report.Failed ("Unexpected exception raised in Test_Block"); - end Test_Block; - - Report.Result; - -end CXG1004; |