Date: Wed, 28 Jun 2017 13:00:05 -0700
FYI, as I get these I’ll direct them to std-proposals – this features alias is a bit harder for people to find and post to.
From: Michał W. Urbańczyk [mailto:michal.w.urbanczyk_at_[hidden]]
Sent: Wednesday, June 28, 2017 12:47 PM
To: Herb Sutter <hsutter_at_[hidden]>
Subject: Re: About p0697r0 — how SD-6 unclear status proved harmful to me
Absolutely, I'll post it there in a moment.
2017-06-28 21:32 GMT+02:00 Herb Sutter <hsutter_at_[hidden] <mailto:hsutter_at_[hidden]> >:
Thank you Michal. Would you be so kind as to post this to the std-proposals forum?
https://groups.google.com/a/isocpp.org/forum/?fromgroups#!forum/std-proposals <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fa%2Fisocpp.org%2Fforum%2F%3Ffromgroups%23!forum%2Fstd-proposals&data=02%7C01%7Chsutter%40microsoft.com%7C443539a1816640f9aede08d4be5e77a1%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342760313505953&sdata=y0uNIz53EO0Y7kH4KSS4duONGOW5UaA8D%2FT0vmZPCY0%3D&reserved=0>
From: Michał W. Urbańczyk [mailto:michal.w.urbanczyk_at_[hidden] <mailto:michal.w.urbanczyk_at_[hidden]> ]
Sent: Wednesday, June 28, 2017 10:47 AM
To: Herb Sutter <hsutter_at_[hidden] <mailto:hsutter_at_[hidden]> >
Subject: About p0697r0 — how SD-6 unclear status proved harmful to me
Hello,
I saw your recent paper on feature test macros (p0697r0) and I'd like to share my very recent experience in that matter as a plain C++ user — SD-6 presence and its unclear status proved harmful to me.
I wanted to port one of my projects to VS2017 — that eventually [1] led me to an issue within the Qt framework. It provides the "qOverload" variable template for compilers that support C++14 variable templates. The feature detection is based on SD-6 feature macro, so "qOverload" is not visible under MSVC, even though it supports variable templates. When I reported the issue to Qt mainteners, I was informed that not supporting VS there was an intentional choice to save on maintenance cost and that users should report it to MS to force them to implement SD-6. [2]
I feel like I've been catched in a crossfire between vendors who took different approaches towards SD-6 adoption. While it may be argued that either MS or Qt is at fault (respectively for not implementing useful SD-6 macros or for requiring non-standard feature), I think that problem should be finally solved by WG21, as you stated in p0697r0.
Both Qt framework and Visual Studio are vital parts of C++ ecosystem and not being able to fully used them together will likely be an increasing problem point, as C++14 and C++17 gains further adoption.
I hope you might find my story relevant with regards to to upcoming discussion on the SD-6 future.
Best regards,
Michał Urbańczyk
[1] Full discussion: https://github.com/woboq/verdigris/issues/6 <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fwoboq%2Fverdigris%2Fissues%2F6&data=02%7C01%7Chsutter%40microsoft.com%7C38ea531cf1aa4291b94d08d4be4da487%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342688057326594&sdata=JkYZdP3HkaYpSg483AoVyVs6sSpjckt79TNAqOEm6sk%3D&reserved=0>
[2] https://bugreports.qt.io/browse/QTBUG-61667?focusedCommentId=362506 <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugreports.qt.io%2Fbrowse%2FQTBUG-61667%3FfocusedCommentId%3D362506%26page%3Dcom.atlassian.jira.plugin.system.issuetabpanels%253Acomment-tabpanel%23comment-362506&data=02%7C01%7Chsutter%40microsoft.com%7C38ea531cf1aa4291b94d08d4be4da487%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342688057326594&sdata=Zc6CTODdomwRfkyM0vuJHmTfnhz7qDjx3aU14AO%2Fj%2Fw%3D&reserved=0> &page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-362506
From: Michał W. Urbańczyk [mailto:michal.w.urbanczyk_at_[hidden]]
Sent: Wednesday, June 28, 2017 12:47 PM
To: Herb Sutter <hsutter_at_[hidden]>
Subject: Re: About p0697r0 — how SD-6 unclear status proved harmful to me
Absolutely, I'll post it there in a moment.
2017-06-28 21:32 GMT+02:00 Herb Sutter <hsutter_at_[hidden] <mailto:hsutter_at_[hidden]> >:
Thank you Michal. Would you be so kind as to post this to the std-proposals forum?
https://groups.google.com/a/isocpp.org/forum/?fromgroups#!forum/std-proposals <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.google.com%2Fa%2Fisocpp.org%2Fforum%2F%3Ffromgroups%23!forum%2Fstd-proposals&data=02%7C01%7Chsutter%40microsoft.com%7C443539a1816640f9aede08d4be5e77a1%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342760313505953&sdata=y0uNIz53EO0Y7kH4KSS4duONGOW5UaA8D%2FT0vmZPCY0%3D&reserved=0>
From: Michał W. Urbańczyk [mailto:michal.w.urbanczyk_at_[hidden] <mailto:michal.w.urbanczyk_at_[hidden]> ]
Sent: Wednesday, June 28, 2017 10:47 AM
To: Herb Sutter <hsutter_at_[hidden] <mailto:hsutter_at_[hidden]> >
Subject: About p0697r0 — how SD-6 unclear status proved harmful to me
Hello,
I saw your recent paper on feature test macros (p0697r0) and I'd like to share my very recent experience in that matter as a plain C++ user — SD-6 presence and its unclear status proved harmful to me.
I wanted to port one of my projects to VS2017 — that eventually [1] led me to an issue within the Qt framework. It provides the "qOverload" variable template for compilers that support C++14 variable templates. The feature detection is based on SD-6 feature macro, so "qOverload" is not visible under MSVC, even though it supports variable templates. When I reported the issue to Qt mainteners, I was informed that not supporting VS there was an intentional choice to save on maintenance cost and that users should report it to MS to force them to implement SD-6. [2]
I feel like I've been catched in a crossfire between vendors who took different approaches towards SD-6 adoption. While it may be argued that either MS or Qt is at fault (respectively for not implementing useful SD-6 macros or for requiring non-standard feature), I think that problem should be finally solved by WG21, as you stated in p0697r0.
Both Qt framework and Visual Studio are vital parts of C++ ecosystem and not being able to fully used them together will likely be an increasing problem point, as C++14 and C++17 gains further adoption.
I hope you might find my story relevant with regards to to upcoming discussion on the SD-6 future.
Best regards,
Michał Urbańczyk
[1] Full discussion: https://github.com/woboq/verdigris/issues/6 <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fwoboq%2Fverdigris%2Fissues%2F6&data=02%7C01%7Chsutter%40microsoft.com%7C38ea531cf1aa4291b94d08d4be4da487%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342688057326594&sdata=JkYZdP3HkaYpSg483AoVyVs6sSpjckt79TNAqOEm6sk%3D&reserved=0>
[2] https://bugreports.qt.io/browse/QTBUG-61667?focusedCommentId=362506 <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugreports.qt.io%2Fbrowse%2FQTBUG-61667%3FfocusedCommentId%3D362506%26page%3Dcom.atlassian.jira.plugin.system.issuetabpanels%253Acomment-tabpanel%23comment-362506&data=02%7C01%7Chsutter%40microsoft.com%7C38ea531cf1aa4291b94d08d4be4da487%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636342688057326594&sdata=Zc6CTODdomwRfkyM0vuJHmTfnhz7qDjx3aU14AO%2Fj%2Fw%3D&reserved=0> &page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-362506
Received on 2017-06-28 22:00:12