<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 05:03:42 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-43646] Upgrade MSVC to VS2019 or newer.</title>
                <link>https://jira.mongodb.org/browse/SERVER-43646</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;MSVC 19.xx has had some serious teething problems with its new &quot;improvements&quot; to how it handles templates.&#160; Many have been fixed.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;We should rev the supported version from 19.16 to some more recent version.&#160; I&apos;m asking for people to add comments to this ticket with links to godbolt examples of where gcc, clang, and a more recent MSVC do the right thing but MSVC 19.16 does the wrong thing.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;The godbolt examples should run across 4 compilers:&#160; MSVC 19.16, a later MSVC 19.xx where the feature works (if possible), gcc 8.3 and clang 7.0.&#160; The expectation is that clang and gcc are doing the right thing, in these examples.&lt;/p&gt;</description>
                <environment></environment>
        <key id="940573">SERVER-43646</key>
            <summary>Upgrade MSVC to VS2019 or newer.</summary>
                <type id="4" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14710&amp;avatarType=issuetype">Improvement</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="13203">Gone away</resolution>
                                        <assignee username="backlog-server-devplatform">[DO NOT ASSIGN] Backlog - Server Development Platform Team (SDP)</assignee>
                                    <reporter username="adam.martin@mongodb.com">ADAM Martin</reporter>
                        <labels>
                    </labels>
                <created>Wed, 25 Sep 2019 22:32:34 +0000</created>
                <updated>Fri, 27 Oct 2023 20:42:38 +0000</updated>
                            <resolved>Wed, 22 Dec 2021 20:20:31 +0000</resolved>
                                                                                        <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="4264726" author="acm" created="Wed, 22 Dec 2021 20:20:31 +0000"  >&lt;p&gt;We have already upgraded to VS2019 and we are well on our way to upgrading to VS2022 at this point.&lt;/p&gt;</comment>
                            <comment id="2475745" author="acm" created="Thu, 10 Oct 2019 14:50:36 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=adam.martin&quot; class=&quot;user-hover&quot; rel=&quot;adam.martin&quot;&gt;adam.martin&lt;/a&gt; - Yes, the versioning scheme is weird. As is the VS vs VC distinction.&lt;/p&gt;</comment>
                            <comment id="2474261" author="acm" created="Wed, 9 Oct 2019 17:18:43 +0000"  >&lt;p&gt;Putting this in the V4 toolchain epic where we will be considering a move to VS 2019 or newer.&lt;/p&gt;</comment>
                            <comment id="2447505" author="acm" created="Wed, 2 Oct 2019 15:26:41 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=adam.martin&quot; class=&quot;user-hover&quot; rel=&quot;adam.martin&quot;&gt;adam.martin&lt;/a&gt; - I don&apos;t entirely understand. According to the linked table, &lt;tt&gt;_MSC_VER = 1916&lt;/tt&gt; is the last version of MSVC that comes with VS 2017, our current compiler of record, and &lt;tt&gt;_MSC_VER = 1920&lt;/tt&gt; is part of VS 2019.&lt;/p&gt;

&lt;p&gt;Also, calling these MSVC 19 is very confusing (this is Microsoft&apos;s fault).&lt;/p&gt;

&lt;p&gt;I think what you are actually saying is that &lt;tt&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;MSVC++ 14.16 _MSC_VER == 1916 (Visual Studio 2017 version 15.9)&amp;#93;&lt;/span&gt;&lt;/tt&gt; is buggy, but that &lt;tt&gt;&lt;span class=&quot;error&quot;&gt;&amp;#91;MSVC++ 14.2  _MSC_VER == 1920 (Visual Studio 2019 Version 16.0)&amp;#93;&lt;/span&gt;&lt;/tt&gt; is less so. If that is correct, than this ticket is equivalent to asking that we upgrade to VS 2019, which is not a minor version bump, but a toolchain upgrade.&lt;/p&gt;</comment>
                            <comment id="2433653" author="adam.martin" created="Wed, 25 Sep 2019 22:33:06 +0000"  >&lt;p&gt;&lt;a href=&quot;https://godbolt.org/z/wSsCaH&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://godbolt.org/z/wSsCaH&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;MSVC 19.16 doesn&apos;t handle if-constexpr initializer statements.&#160; 19.20 does.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                            <outwardlinks description="depends on">
                                        <issuelink>
            <issuekey id="984086">SERVER-44315</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>5.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18555" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname># of Sprints</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_12751" key="com.atlassian.jira.plugin.system.customfieldtypes:multiselect">
                        <customfieldname>Assigned Teams</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="25130"><![CDATA[Server Development Platform]]></customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Wed, 2 Oct 2019 15:26:41 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        2 years, 7 weeks ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[<s><a href='https://jira.mongodb.org/browse/SERVER-44315'>SERVER-44315</a></s>, <s><a href='https://jira.mongodb.org/browse/BUILD-9214'>BUILD-9214</a></s>]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                            <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>PM-2391</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>true</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>luke.bonanomi@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            2 years, 7 weeks ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>backlog-server-devplatform</customfieldvalue>
            <customfieldvalue>adam.martin@mongodb.com</customfieldvalue>
            <customfieldvalue>andrew.morrow@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hvsjm7:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hzzlh3:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_10557" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue id="3281">Dev Tools 2019-10-07</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hvs5vj:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>