• [^] # Re: Bravo !

    Posté par (site web personnel, Mastodon) . En réponse au journal Portage de TapTempo en Ada. Évalué à 2.

    Oui. Ainsi, la compilation du code suivant

    procedure Test_Bornes is
     type Precision is range 1 .. 5;
     ma_petite_precision : Precision := 0;
     ma_grosse_precision : Precision := 6;
    begin
     null;
    end Test_Bornes;

    renvoie le message suivant

    test_bornes.adb:4:39: warning: value not in range of type "Precision" defined at line 2
    test_bornes.adb:4:39: warning: "Constraint_Error" will be raised at run time
    test_bornes.adb:5:39: warning: value not in range of type "Precision" defined at line 2
    test_bornes.adb:5:39: warning: "Constraint_Error" will be raised at run time
    

    Et à l'exécution, comme prévu et prévenu

    raised CONSTRAINT_ERROR : test_bornes.adb:4 range check failed