c46021a.ada
来自「用于进行gcc测试」· ADA 代码 · 共 211 行
ADA
211 行
-- C46021A.ADA-- 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 FLOATING POINT CONVERSIONS ARE PERFORMED CORRECTLY-- WHEN THE OPERAND TYPE IS AN INTEGER TYPE, FOR 5-DIGIT PRECISION.-- HISTORY:-- JET 02/12/88 CREATED ORIGINAL TEST.WITH REPORT; USE REPORT;PROCEDURE C46021A IS TYPE FLOAT5 IS DIGITS 5; TYPE INT IS RANGE -32768..32767; TYPE NFLOAT5 IS NEW FLOAT5; FUNCTION IDENT (A : FLOAT5) RETURN FLOAT5 IS BEGIN IF EQUAL(3,3) THEN RETURN A; ELSE RETURN 0.0; END IF; END IDENT; FUNCTION IDENT (A : NFLOAT5) RETURN NFLOAT5 IS BEGIN IF EQUAL(3,3) THEN RETURN A; ELSE RETURN 0.0; END IF; END IDENT;BEGIN TEST ("C46021A", "CHECK THAT FLOATING POINT CONVERSIONS ARE " & "PERFORMED CORRECTLY WHEN THE OPERAND TYPE " & "IS AN INTEGER TYPE, FOR 5-DIGIT PRECISION"); IF FLOAT5(IDENT_INT(-7)) /= -7.0 THEN FAILED ("INCORRECT VALUE (1)"); END IF; IF FLOAT5(IDENT_INT(3)) /= 3.0 THEN FAILED ("INCORRECT VALUE (2)"); END IF; IF FLOAT5(IDENT_INT(-999)) /= -999.0 THEN FAILED ("INCORRECT VALUE (3)"); END IF; IF FLOAT5(IDENT_INT(101)) /= 101.0 THEN FAILED ("INCORRECT VALUE (4)"); END IF; IF FLOAT5(IDENT_INT(-32767)) /= -32767.0 THEN FAILED ("INCORRECT VALUE (5)"); END IF; IF FLOAT5(IDENT_INT(32767)) /= 32767.0 THEN FAILED ("INCORRECT VALUE (6)"); END IF; IF FLOAT5(-7) /= IDENT(-7.0) THEN FAILED ("INCORRECT VALUE (7)"); END IF; IF FLOAT5(3) /= IDENT(3.0) THEN FAILED ("INCORRECT VALUE (8)"); END IF; IF FLOAT5(-999) /= IDENT(-999.0) THEN FAILED ("INCORRECT VALUE (9)"); END IF; IF FLOAT5(101) /= IDENT(101.0) THEN FAILED ("INCORRECT VALUE (10)"); END IF; IF FLOAT5(-32767) /= IDENT(-32767.0) THEN FAILED ("INCORRECT VALUE (11)"); END IF; IF FLOAT5(32767) /= IDENT(32767.0) THEN FAILED ("INCORRECT VALUE (12)"); END IF; IF FLOAT5(INT'(-7)) /= IDENT(-7.0) THEN FAILED ("INCORRECT VALUE (13)"); END IF; IF FLOAT5(INT'(3)) /= IDENT(3.0) THEN FAILED ("INCORRECT VALUE (14)"); END IF; IF FLOAT5(INT'(-999)) /= IDENT(-999.0) THEN FAILED ("INCORRECT VALUE (15)"); END IF; IF FLOAT5(INT'(101)) /= IDENT(101.0) THEN FAILED ("INCORRECT VALUE (16)"); END IF; IF FLOAT5(INT'(-32767)) /= IDENT(-32767.0) THEN FAILED ("INCORRECT VALUE (17)"); END IF; IF FLOAT5(INT'(32767)) /= IDENT(32767.0) THEN FAILED ("INCORRECT VALUE (18)"); END IF; IF NFLOAT5(IDENT_INT(-7)) /= -7.0 THEN FAILED ("INCORRECT VALUE (19)"); END IF; IF NFLOAT5(IDENT_INT(3)) /= 3.0 THEN FAILED ("INCORRECT VALUE (20)"); END IF; IF NFLOAT5(IDENT_INT(-999)) /= -999.0 THEN FAILED ("INCORRECT VALUE (21)"); END IF; IF NFLOAT5(IDENT_INT(101)) /= 101.0 THEN FAILED ("INCORRECT VALUE (22)"); END IF; IF NFLOAT5(IDENT_INT(-32767)) /= -32767.0 THEN FAILED ("INCORRECT VALUE (23)"); END IF; IF NFLOAT5(IDENT_INT(32767)) /= 32767.0 THEN FAILED ("INCORRECT VALUE (24)"); END IF; IF NFLOAT5(-7) /= IDENT(-7.0) THEN FAILED ("INCORRECT VALUE (25)"); END IF; IF NFLOAT5(3) /= IDENT(3.0) THEN FAILED ("INCORRECT VALUE (26)"); END IF; IF NFLOAT5(-999) /= IDENT(-999.0) THEN FAILED ("INCORRECT VALUE (27)"); END IF; IF NFLOAT5(101) /= IDENT(101.0) THEN FAILED ("INCORRECT VALUE (28)"); END IF; IF NFLOAT5(-32767) /= IDENT(-32767.0) THEN FAILED ("INCORRECT VALUE (29)"); END IF; IF NFLOAT5(32767) /= IDENT(32767.0) THEN FAILED ("INCORRECT VALUE (30)"); END IF; IF NFLOAT5(INT'(-7)) /= IDENT(-7.0) THEN FAILED ("INCORRECT VALUE (31)"); END IF; IF NFLOAT5(INT'(3)) /= IDENT(3.0) THEN FAILED ("INCORRECT VALUE (32)"); END IF; IF NFLOAT5(INT'(-999)) /= IDENT(-999.0) THEN FAILED ("INCORRECT VALUE (33)"); END IF; IF NFLOAT5(INT'(101)) /= IDENT(101.0) THEN FAILED ("INCORRECT VALUE (34)"); END IF; IF NFLOAT5(INT'(-32767)) /= IDENT(-32767.0) THEN FAILED ("INCORRECT VALUE (35)"); END IF; IF NFLOAT5(INT'(32767)) /= IDENT(32767.0) THEN FAILED ("INCORRECT VALUE (36)"); END IF; RESULT;END C46021A;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?