c37213h.ada

来自「用于进行gcc测试」· ADA 代码 · 共 458 行 · 第 1/2 页

ADA
458
字号
                    BEGIN                         DECLARE                              X : NREC;                         BEGIN                              FAILED ("INDEX CHECK NOT PERFORMED - 5");                              IF X /= (1, (1, 1)) THEN                                   COMMENT ("INCORRECT VALUES FOR X " &                                            "- 5");                              END IF;                         END;                    EXCEPTION                         WHEN CONSTRAINT_ERROR =>                              NULL;                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED " &                                       "- 5A");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 5B");               END;               BEGIN                    DECLARE                         TYPE ACC_CONS IS ACCESS CONS;                    BEGIN                         DECLARE                              X : ACC_CONS;                         BEGIN                              X := NEW CONS;                              FAILED ("INDEX CHECK NOT PERFORMED - 6");                              IF X.ALL /= (1, (1, 1)) THEN                                   COMMENT ("INCORRECT VALUES FOR X " &                                            "- 6");                              END IF;                         EXCEPTION                              WHEN CONSTRAINT_ERROR =>                                   NULL;                              WHEN OTHERS =>                                   COMMENT ("UNEXPECTED EXCEPTION " &                                            "RAISED - 6A");                         END;                    EXCEPTION                         WHEN OTHERS =>                              COMMENT ("UNEXPECTED EXCEPTION RAISED " &                                       "- 6B");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 6C");               END;          END;-- CASE D2: DISCRIMINANT-DEPENDENT COMPONENT IS ABSENT.          F1_CONS := 2;          SEQUENCE_NUMBER := 3;          DECLARE               TYPE CONS (D3 : DISCR := IDENT_INT(-6)) IS                    RECORD                         CASE D3 IS                              WHEN -5..10 =>                                   C1 : MY_ARR(D3..F1); -- F1 EVALUATED.                              WHEN OTHERS =>                                   C2 : INTEGER := IDENT_INT(0);                         END CASE;                    END RECORD;               CHK1 : BOOLEAN := CHK (F1_CONS, 1, "F1 NOT EVALUATED");               X : CONS;                      -- F1 NOT EVALUATED AGAIN.               Y : CONS;                      -- F1 NOT EVALUATED AGAIN.               CHK2 : BOOLEAN := CHK (F1_CONS, 1, "F1 EVALUATED");          BEGIN               IF X /= (-6, 0) OR Y /= (-6, 0) THEN                    FAILED ("VALUES NOT CORRECT");               END IF;          END;          F1_CONS := 12;          SEQUENCE_NUMBER := 4;          DECLARE               TYPE CONS (D3 : DISCR := IDENT_INT(11)) IS                    RECORD                         CASE D3 IS                              WHEN -5..10 =>                                   C1 : MY_ARR(D3..F1);                              WHEN OTHERS =>                                   C2 : INTEGER := IDENT_INT(0);                         END CASE;                    END RECORD;          BEGIN               BEGIN                    DECLARE                         X : CONS;                    BEGIN                         IF X /= (11, 0) THEN                              FAILED ("X VALUE IS INCORRECT - 11");                         END IF;                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 11");               END;               BEGIN                    DECLARE                         SUBTYPE SCONS IS CONS;                    BEGIN                         DECLARE                              X : SCONS;                         BEGIN                              IF X /= (11, 0) THEN                                   FAILED ("X VALUE INCORRECT - 12");                              END IF;                         END;                    EXCEPTION                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED - " &                                      "12A");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 12B");               END;               BEGIN                    DECLARE                         TYPE ARR IS ARRAY (1..5) OF CONS;                    BEGIN                         DECLARE                              X : ARR;                         BEGIN                              IF X /= (1..5 => (11, 0)) THEN                                   FAILED ("X VALUE INCORRECT - 13");                              END IF;                         END;                    EXCEPTION                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED - " &                                      "13A");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 13B");               END;               BEGIN                    DECLARE                         TYPE NREC IS                              RECORD                                   C1 : CONS;                              END RECORD;                    BEGIN                         DECLARE                              X : NREC;                         BEGIN                              IF X /= (C1 => (11, 0)) THEN                                   FAILED ("X VALUE INCORRECT - 14");                              END IF;                         END;                    EXCEPTION                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED - " &                                      "14A");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 14B");               END;               BEGIN                    DECLARE                         TYPE NREC IS NEW CONS;                    BEGIN                         DECLARE                              X : NREC;                         BEGIN                              IF X /= (11, 0) THEN                                   FAILED ("X VALUE INCORRECT - 15");                              END IF;                         END;                    EXCEPTION                         WHEN CONSTRAINT_ERROR =>                              NULL;                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED - " &                                      "15A");                    END;               EXCEPTION                    WHEN OTHERS =>                         FAILED ("UNEXPECTED EXCEPTION RAISED - 15B");               END;               BEGIN                    DECLARE                         TYPE ACC_CONS IS ACCESS CONS;                         X : ACC_CONS;                    BEGIN                         X := NEW CONS;                         IF X.ALL /= (11, 0) THEN                              FAILED ("X VALUE INCORRECT - 17");                         END IF;                    EXCEPTION                         WHEN OTHERS =>                              FAILED ("UNEXPECTED EXCEPTION RAISED - " &                                      "17A");                    END;               EXCEPTION                    WHEN OTHERS =>                          FAILED ("UNEXPECTED EXCEPTION RAISED - 17B");               END;          END;     EXCEPTION          WHEN CONSTRAINT_ERROR =>               FAILED ("INDEX VALUES IMPROPERLY CHECKED - " &                       INTEGER'IMAGE (SEQUENCE_NUMBER));          WHEN OTHERS =>               FAILED ("UNEXPECTED EXCEPTION RAISED " &                       INTEGER'IMAGE (SEQUENCE_NUMBER));     END;     RESULT;END C37213H;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?