LWG Issue 2056 - change the value of future_errc::broken_promise

Howard Hinnant howard.hinnant at gmail.com
Fri Sep 13 18:53:38 PDT 2013


On Sep 12, 2013, at 1:50 PM, Marshall Clow <mclow.lists at gmail.com> wrote:

> Make it non-zero, like all the other error codes in the library.
> 
> Note: This changes both the dylib and the headers, and in a way that could break existing code
> (i.e, if you explicitly test for std:: future_errc::broken_promise, then you will need to recompile your code)
> 
> -- Marshall
> 
> Marshall Clow     Idio Software   <mailto:mclow.lists at gmail.com>
> 
> A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
>        -- Yu Suzuki
> 
> <ish2056.patch>

On building:

+ clang++ -c -g -Os -arch i386 -arch x86_64 -nostdinc++ -std=c++11 -fstrict-aliasing -Wall -Wextra -Wshadow -Wconversion -Wnewline-eof -Wpadded -Wmissing-prototypes -Wstrict-aliasing=2 -Wstrict-overflow=4 -I../include ../src/future.cpp
../src/future.cpp:35:10: error: duplicate case value: '0' and 'broken_promise' both equal '0'
    case future_errc::broken_promise:
         ^
../src/future.cpp:34:10: note: previous case defined here
    case future_errc(0):
         ^
1 error generated.

Looks like the <future> synopsis is fixed, but not the actual code.

Howard





More information about the cfe-commits mailing list