Submitter: Batty
Submission Date: 2011-10-14
Source: WG 14
Reference Document: N1584
Version: 1.1
Date: February 2012
Subject: "happens before" can not be cyclic
Summary
C++11 forbids "happens before" from being cyclic, but this change has not made its way into C11. In order to fix this, the following sentence (taken from C++ N3291, 1.10p12) should be added to 5.1.2.4p18:
The implementation shall ensure that no program execution demonstrates a cycle in the "happens before" relation.
NOTE: This cycle would otherwise be possible only through the use of consume operations.
Suggested Technical Corrigendum
See above.
Committee Discussion
Feb 2012 meeting
- Seems as if C++ made this change at the last minute and WG 14 had already voted a document for ballot.
- There seems to be consensus to make a change along this line.
Proposed Technical Corrigendum
Add to 5.1.2.4p18:Previous Defect Report < - > Next Defect ReportThe implementation shall ensure that no program execution demonstrates a cycle in the "happens before" relation.
NOTE: This cycle would otherwise be possible only through the use of consume operations.