Title
Preservation of infinite loops
Status
nad
Section
6.9.2 [intro.multithread]
Submitter
Daniel Krügler

Created on 2013-04-15.00:00:00 last changed 109 months ago

Messages

Date: 2015-10-15.00:00:00

Rationale (October, 2015)

SG1 reaffirms the original intent of this specification.

Date: 2022-11-20.07:54:16

According to 6.9.2 [intro.multithread] paragraph 24,

The implementation may assume that any thread will eventually do one of the following:

  • terminate,

  • make a call to a library I/O function,

  • access or modify a volatile object, or

  • perform a synchronization operation or an atomic operation.

[Note: This is intended to allow compiler transformations such as removal of empty loops, even when termination cannot be proven. —end note]

Some programmers find this liberty afforded to implementations to be disadvantageous; see this blog post for a discussion of the subject.

History
Date User Action Args
2015-11-10 00:00:00adminsetmessages: + msg5968
2015-11-10 00:00:00adminsetstatus: concurrency -> nad
2013-10-14 00:00:00adminsetstatus: open -> concurrency
2013-04-15 00:00:00admincreate