-- Copyright 2017-2020 Free Software Foundation, Inc. -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 3 of the License, or -- (at your option) any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program. If not, see . with Ada.Text_IO; use Ada.Text_IO; procedure Crash is procedure Request_For_Crash is begin null; -- Just an anchor for the debugger... end Request_For_Crash; task type T is entry Done; end T; task body T is begin accept Done do null; end Done; Put_Line ("Task T: Rendez-vous completed."); end T; My_T : T; begin -- Give some time for the task to be created, and start its execution, -- so that it reaches the accept statement. delay 0.01; Request_For_Crash; delay 0.01; Put_Line ("*** We didn't crash !?!"); -- Complete the rendez-vous with our task, so it can complete. My_T.Done; end Crash;