# Transition to C++17 as the minimum standard

**URL:** <https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951>\
**Category:** Development\
**Created:** [June 19, 2022, 10:47pm UTC](https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951 "2022-06-19T22:47:18Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![jamesobutler](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jamesobutler/32/7511_2.png) [@jamesobutler](https://discourse.slicer.org/u/jamesobutler)\
**Post date:** [June 19, 2022, 10:47pm UTC](https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951/1 "2022-06-19T22:47:18Z")

</div>

I propose that on 2022-07-04T04:00:00Z Slicer transition to set the minimum C++ standard to C++17. See the following pull request for previous discussion and what will be integrated to complete this change.

> <https://github.com/Slicer/Slicer/pull/6237>
>
> Qt 6 has a C++ minimum version that is now C++17. https://www.qt.io/blog/qt6-dev…elopment-hosts-and-targets
> 
> This commit bumping to C++17 was originally included in #6108 with other supported platform minimum version bumps. This was moved into its own independent PR based on feedback to separate this decision from the other platform version changes needed for Qt 6 and for other reasons as well.
> 
> From my initial testing when #6108 was first submitted Slicer I had the following report:
> \- ✅C++17 built on Windows 10 using Visual Studio 2019 with v142 toolset completed successfully with this PR. All tests cases were run and passed successfully where the failing tests were the same as the already failing tests.

Visual Studio 2017 (15.7) was announced to officially conform with the C++ standard of C++11, C++14 and C++17

> **[Announcing: MSVC Conforms to the C++ Standard](https://devblogs.microsoft.com/cppblog/announcing-msvc-conforms-to-the-c-standard/)**
>
> Achieving conformance with the C++ Standards has been a long road for the Visual C++ team. If you’ve seen us at any conferences lately, you’ve probably seen the MSVC Conformance slide. (You can grab a copy of the slide or watch the 2017 CppCon talk...

---

<div class="post-metadata">

**Author:** ![jamesobutler](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jamesobutler/32/7511_2.png) [@jamesobutler](https://discourse.slicer.org/u/jamesobutler)\
**Post date:** [June 27, 2022, 11:57am UTC](https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951/2 "2022-06-27T11:57:58Z")

</div>

Reminder to developers that this will happen in a week. You can like the original post to serve as your acknowledgment.

---

<div class="post-metadata">

**Author:** ![jamesobutler](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jamesobutler/32/7511_2.png) [@jamesobutler](https://discourse.slicer.org/u/jamesobutler)\
**Post date:** [July 4, 2022, 8:23pm UTC](https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951/3 "2022-07-04T20:23:08Z")

</div>

A approval to my PR is needed from another developer to be able to execute on the original proposed timeline.

---

<div class="post-metadata">

**Author:** ![jamesobutler](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jamesobutler/32/7511_2.png) [@jamesobutler](https://discourse.slicer.org/u/jamesobutler)\
**Post date:** [July 4, 2022, 11:53pm UTC](https://discourse.slicer.org/t/transition-to-c-17-as-the-minimum-standard/23951/4 "2022-07-04T23:53:59Z")

</div>

To follow up, the corresponding PR has been merged.
