Bug Submission Guidelines

For the Orcas release we want to only fix bugs that won’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. Internally, we refer to systems where there won’t be a lot of code churn as “red bits”.   Only by mapping to the items below will your bug be considered for the Orcas release.

 

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.

 

 

    1)       Visual C++ Compiler Front-End

·        Bad code generation (even with minimum rebuild)

·        Run-time behavior changes from previous releases, except where documented, and for compliance with C++ Standard

·        Blocking issues for widely used libraries (i.e. STL, Boost)

·        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 & maintained internally within a company)

·        Compiler gives error on #using or #import

 

    2)       Visual C++ Compiler Back-End, Linker and Tools

·        Silent bad code generation

·        Internal Compiler Error on mainstream code without easy workaround (such as #pragma optimize(“”, off))

·        Link regressions from prior products

·        Link failure on mainstream code

·        Call Stack regressions from Visual C++ 2003

·        Issues preventing customers from debugging real-world code

 

    3)       Visual C++ IDE

·        Data loss scenarios including crashes or hangs

·        Unable to build

·        Unable to debug

·        Unresponsive UI for long periods of time

·        Security issues

·        Blocking issues in Wizards, Editing, IntelliSense, Browsing

·        The Dialog Editor is considered part of the green bit features so we intend to fix most issues there

 

    4)       Visual C++ Libraries

·        Security issues

·        Crash, data loss or corruption

·        Compilation or link errors

·        Memory leaks or stress failures

·        Missing/failed debug information in debug libraries

·        Regression from previous version

·        Assertion/exception

·        Serious performance regression or slow performance relative to competition

·        Inappropriate/incomplete UI display in MFC

·        Default compiler warnings level 1-4 emitted when using headers

·        Deployment/installation problems in central or app-local scenarios

·        STL is considered part of the green bit features and we intend to fix most issues there

·        MFC UI except MFC ActiveX is considered part of the green bits and we will target fixing most issues there

 

If any of the following applies, we will not consider a fix for the bug:

 

·        Fix results in “Breaking Changes” (i.e. fixing the issue would result in failure to compile existing user code, or change runtime behavior)

·        A reasonable workaround exists

·        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 & maintained internally within a company)

·        A corner case or costly fix that cannot justify the expense of fixing

·        Insufficient information is provided to reproduce the issue in our environment

·        Call Stack failures that can be eliminated by /Oy-