|
2447 | 2447 | The semantics of this function are \impldef{semantics of \tcode{breakpoint}}.
|
2448 | 2448 |
|
2449 | 2449 | \begin{note}
|
2450 |
| -When invoked, the execution of the program temporarily halts and execution is |
2451 |
| -handed to the debugger until such a time as: The program is terminated by the |
2452 |
| -debugger, or the debugger resumes execution of the program as if the function |
2453 |
| -was not invoked. |
| 2450 | +It is intended that, when invoked with a debugger present, the execution of the |
| 2451 | +program temporarily halts and execution is handed to the debugger until the |
| 2452 | +program is either terminated by the debugger or the debugger resumes execution |
| 2453 | +of the program as if the function was not invoked. In particular, there is no |
| 2454 | +intent for a call to this function to accomodate resumption of the program in a |
| 2455 | +different manner. If there is no debugger present, execution of the program can |
| 2456 | +end abnormally. |
2454 | 2457 | \end{note}
|
2455 | 2458 |
|
2456 | 2459 | \end{itemdescr}
|
|
2486 | 2489 | \impldef{default semantics of \tcode{is_debugger_present}}.
|
2487 | 2490 |
|
2488 | 2491 | \begin{note}
|
2489 |
| -When tracing the execution of a program with a debugger, an implementation |
2490 |
| -returns \tcode{true}. An implementation performs an immediate query, as needed, |
2491 |
| -to determine if the program is traced by a debugger. On Windows or equivalent |
2492 |
| -systems, this can be achieved by calling the \tcode{::IsDebuggerPresent()} Win32 |
2493 |
| -function. On POSIX, this can be achieved by checking for a tracer parent process, |
2494 |
| -with best effort determination that such a tracer parent process is a debugger. |
| 2492 | +It is intended that, using an immediate (uncached) query to determine if the |
| 2493 | +program is being traced by a debugger, an implementation returns \tcode{true} |
| 2494 | +only when tracing the execution of the program with a debugger. On Windows or |
| 2495 | +equivalent systems, this can be achieved by calling the |
| 2496 | +\tcode{::IsDebuggerPresent()} Win32 function. For systems compatible with |
| 2497 | +ISO/IEC 23360:2021, this can be achieved by checking for a tracing process, with |
| 2498 | +a best-effort determination that such a tracing process is a debugger. |
2495 | 2499 | \end{note}
|
2496 | 2500 |
|
2497 | 2501 | \pnum
|
|
0 commit comments