{"id":6363,"date":"2006-06-07T16:20:00","date_gmt":"2006-06-07T16:20:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vcblog\/2006\/06\/07\/bug-submission-guidelines\/"},"modified":"2019-02-18T18:54:51","modified_gmt":"2019-02-18T18:54:51","slug":"bug-submission-guidelines","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/bug-submission-guidelines\/","title":{"rendered":"Bug Submission Guidelines"},"content":{"rendered":"<p class=\"MsoNormal\"><span>For the Orcas release we want to only fix bugs that won&rsquo;t create barriers to adoption. We have created a set of guidelines that describe high severity and adoption blocking bugs. <span>Essentially, in each of the below subsystems we will try to minimize the overall number of <\/span>changes.&nbsp;Internally<span>, we refer to systems where there won&rsquo;t be a lot of code churn as <a href=\"http:\/\/blogs.msdn.com\/somasegar\/archive\/2006\/05\/18\/601354.aspx\" target=\"_blank\">&ldquo;red bits&rdquo;<\/a>. &nbsp; Only by mapping to the items below will your bug be considered for the Orcas release.<\/span><\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<\/p>\n<p class=\"MsoNormal\"><span>Some component areas affected by work on the Orcas release will have greater tolerance for changes. These areas are referred to as green bits. We intend to fix 90% of customer bugs reported in those areas. When a component is a green bit, it is called out explicitly in the below guidelines.<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><b><span><\/p>\n<p>&nbsp;<\/p>\n<p><\/span><\/b><\/p>\n<p class=\"MsoNormal\"><b><span><span>&nbsp;&nbsp;&nbsp; <\/span><\/span><\/b><b><span>1)<\/span><\/b><b><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/b><b><span>Visual C++<\/span><\/b><b><span> <\/span><\/b><b><span>Compiler Front-End<\/span><\/b><span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Bad code generation (even with minimum rebuild)<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Run-time behavior changes from previous releases, except where documented, and for compliance with C++ Standard<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Blocking issues for widely used libraries (i.e. STL, Boost)<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Assertion or Internal Compiler Error on real world code without prior diagnostic (i.e. the code that is intended to be shipped as part of a software product or deployed &amp; maintained internally within a company)<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Compiler gives error <span>on #using or<\/span> #import<\/span><span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><b><span><\/p>\n<p>&nbsp;<\/p>\n<p><\/span><\/b><\/p>\n<p class=\"MsoNormal\"><b><span><span>&nbsp;&nbsp;&nbsp; <\/span><\/span><\/b><b><span>2)<\/span><\/b><b><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/b><b><span>Visual C++ Compiler Back-End, Linker and Tools<\/span><\/b><span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Silent bad code generation<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Internal Compiler Error on mainstream code<span> <\/span>without easy workaround (such as #pragma optimize(&#8220;&#8221;, off))<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Link regressions from prior products<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Link failure on mainstream code<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Call Stack regressions from Visual C++ 2003<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Issues preventing customers from debugging real-world code<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><b><span><span>&nbsp;&nbsp;&nbsp; <\/span><\/span><\/b><b><span>3)<\/span><\/b><b><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/b><b><span>Visual C++ IDE<\/span><\/b><span><\/p>\n<p><\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Data loss scenarios including crashes or hangs<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Unable to build<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Unable to debug<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Unresponsive UI for long periods of time<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Security issues<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Blocking issues in Wizards, Editing, IntelliSense, Browsing<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>The Dialog Editor is considered part of the green bit features so we intend to fix most issues there<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<\/p>\n<p class=\"MsoNormal\"><b><span><span>&nbsp;&nbsp;&nbsp; <\/span><\/span><\/b><b><span>4)<\/span><\/b><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><b><span>Visual C++ Libraries<\/span><\/b><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Security issues<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Crash, data loss or corruption<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Compilation or link errors <\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Memory leaks or stress failures<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Missing\/failed debug information in debug libraries<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Regression from previous version <\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Assertion\/exception <\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Serious performance regression or slow performance relative to competition<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Inappropriate\/incomplete UI display in MFC<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Default compiler warnings level 1-4 emitted when using headers<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Deployment\/installation problems in central or app-local scenarios<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>STL is considered part of the green bit features and we intend to fix most issues there<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>MFC UI except MFC ActiveX is considered part of the green bits and we will target fixing most issues there<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<\/p>\n<p class=\"MsoNormal\"><span>If any of the following applies, we will not consider a fix for the bug:<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Fix results in &#8220;Breaking Changes&#8221; (i.e. fixing the issue would result in failure to compile existing user code, or change runtime behavior)<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>A reasonable workaround exists<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Issue is in a non-mainstream scenario (i.e. the code is not intended to be shipped as part of a software product or deployed &amp; maintained internally within a company)<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>A corner case or costly fix that cannot justify the expense of fixing<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Insufficient information is provide<span>d<\/span> to reproduce the issue in our environment<\/span><\/p>\n<p class=\"MsoNormal\"><span>&middot;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>Call Stack failures that can be eliminated by \/Oy-<\/span><\/p>\n<p class=\"MsoNormal\">&nbsp;<\/p>\n<p class=\"MsoNormal\">\n<p class=\"MsoNormal\"><span><\/span>&nbsp;<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>For the Orcas release we want to only fix bugs that won&rsquo;t create barriers to adoption. We have created a set of guidelines that describe high severity and adoption blocking bugs. Essentially, in each of the below subsystems we will try to minimize the overall number of changes.&nbsp;Internally, we refer to systems where there won&rsquo;t [&hellip;]<\/p>\n","protected":false},"author":289,"featured_media":35994,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[4,5],"class_list":["post-6363","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cplusplus","tag-bug-info","tag-pages"],"acf":[],"blog_post_summary":"<p>For the Orcas release we want to only fix bugs that won&rsquo;t create barriers to adoption. We have created a set of guidelines that describe high severity and adoption blocking bugs. Essentially, in each of the below subsystems we will try to minimize the overall number of changes.&nbsp;Internally, we refer to systems where there won&rsquo;t [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/6363","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/289"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=6363"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/6363\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/35994"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=6363"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=6363"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=6363"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}