This is a quick glance at C++ compiler front-end bugs resolved that were reported on the Microsoft Connect portal. We’re happy to say that we have fixed over 750 Connect feedback bugs in Visual Studio 2015 RTM since its first CTP release middle of last year.
Visual Studio 2013 Update 2 includes a number of fixes filed through Connect:
Free functions can be called using curly braces instead of parentheses. (link)
When attempting to expand a recursive template, the compiler uses large amounts of memory and then crashes.
On Tuesday 28 July we released guidance and updates to assist developers using our Active Template Library (ATL) to prevent creating controls or components with potential security vulnerabilities. Vulnerabilities in libraries are a rare, but industry wide issue, that requires broad collaboration and action by the community at large to effectively resolve.
Invalid range check in checked_array_iterator operator  (Beowulff)_localtime64. Bug in “manual” conversion to local time. (wtom)error on std::malloc, std::free with _CRTDBG_MAP_ALLOC (Martin Sebor)Deprecation warning in CRT and SCL (C++ Standard)event_source(com) attribute causing c4701 warning (AdeskDaug)Tools > Error Lookup (Adam Tatusko)uninitialised variable in ATL classes for performance counters (Frank Eden)ATL::W2A_CP misses a closing bracket (Ilia)atlsoap.h: Call to InternetConnect with invalid parameters (Eric Bauersachs)misformatted deprecated warning message (Chris Conti)debugging operator new does not throw (yecril)C2059 in stdlib.h (yecril)LastError not always set in CAsyncSocket::Connect (beinhaerter)MAX_CONNECT_LEN is too small (yecril)Perf: Two TlsGetValue calls in _getptdnoexit when we could use 1 ()VCRT Merge Module requires MSI 3.x for uninstall ()CComSafeArray::Resize can break lock count of wrapped SAFEARRAY (Kim Grsman)AtlIPersistPropertyBag_Load incorrectly decrements ref count of a property which is an object (Mike at work)CComUnkArray::Add doesn’t compile (mlveggo)The WriteData function (atlmime.h) accesses 1 byte passed the end of a buffer (SYSTECJF)[MFC] Access violation reading invalid object from CArchive (Sergey Vlasov)static analysis shows C6011 warning in Microsoft supplied xstring header file (David Lowndes)CEnumerator::Find has wrong implemenation in atldbcli.h with a pointer to data hold by a temporary class (erni)fgetpos gives a negative result when the stream is UTF-8 (yecril)potential bug in atlsoap.h: m_nDepth not initialized (Eric Bauersachs)MFC Activex control crashes when executing CreateManagedControl (MadhuK)_tcsncpy doesn’t work with _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT (mischief)false C4244 (dschwart)strxfrm crashes if output buffer is NULL (wva)?????ATL OLEDB ?????????????????????????????
TERNARY: Compiler error: arrays decay into pointers (Mycroft Holmes)Properties of nested classes cannot access inherited protected members (C++/CLI) (Bekas)LVALUE: DIAG: Bogus error “C2102: ‘&’ requires l-value” on valid code. (Paul Pluzhnikov)CONFORM: For references of function type ,argument deduction behaves incorrectly (ppliu)[CUSTOMER,
Internal Compiler Error C1001 at compiler file ‘f:vs70builds3077vcCompilerUtcsrcP2main.c’, line 148 when compiling file from ATLAS math lib (fullung)EH: BADIL: Inconsistent order of execution of destructors and finally blocks during stack unwinding (igorf)nmake doesn’t read the Tools.ini file properly. (Reality)Can’t compile project from command line during automated build executed under Local System account (fatal error C1902) (Kirill Kovalenko)Exception handler bug in VC8 compiler (paul_at_foobar_nu)Generated code reads from uninitialized memory (Math Nerd)Internal error during IMAGE::BuildImage encountered (Brian_Kramer)optimizer produces incorrect code with particular code segment (Paxton Mason)VS2005 C++ x64 code generation bug when optimizer enabled (Sergey Kashyrin)Nesting wcscat and wcscpy seems to produce invalid code (kwtc)_pexit not always generated properly (Joev Dubach)wrong code is generated for 64-bit assignment in 32-bit mode with optimization (pkou)msvc optimizer bug with floating point and mmx instructions in asm block (Genady Beryozkin)Compiler bug when compiling a mix of floating point(in C) and MMX instructions.
Can’t display xmm1 in 64bit debugging watch window (spec)Add a keyboard shortcut for editing an existing user macro (Avery Lee)changing preprocessor definitions with #ifdef code open in editor causes graying to foul up (x64) (zeromus)Parameter help highlighting of current parameter inside the definition of inherited overridden functions is broken (always highlights the first parameter only) (sXe__)TextPoint / GetStartPoint inaccurate in certain cases (Nobody1234)resource editor crash (knoepfle)Import settings does not persist/use directories (Nick42blah)Custom build steps are ignored during build of a library project unless the user manually changes them ()ATL Wizard for OLEDB provider generates incorrect example code for returning table schema (sWozzie)Resource editor chokes on strings with embedded null (’00’) characters (Owen Wengerd)Managed c++ project fails to add a web reference (gchippie)Visual Studio does not check-out the “resource.hm”
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,