Home Dashboard Directory Help

variadic templates mess up parameter types when constructing base class??? by Bengt Gustafsson


 as Fixed Help for as Fixed

Sign in
to vote
Type: Bug
ID: 780098
Opened: 2/27/2013 4:31:28 AM
Access Restriction: Public
User(s) can reproduce this bug


This unfortunately a bit complicated example shows a problem related to inheriting a variadic template from another variadic template. The base class has a virtual method with the parameter pack as parameter, implemented in the subclass. In addition, the subclass has a member of a template type which is initiated from ctor parameters which are a variant of the parameter pack. When the base has been initiated the "variantness" of the types is "forgotten" by the compiler when initiating the member. Or something like that.

In my real code, before boiling it down maximally to show this issue in the attached file I get a subsequent internal compiler error:

1> Generating Code...
1>c:\ru\proplist.hpp(413): fatal error C1001: An internal error has occurred in the compiler.
1> (compiler file 'f:\dd\vctools\compiler\utc\src\p2\main.c', line 211)
Sign in to post a comment.
Posted by Microsoft on 4/29/2014 at 12:30 PM
Thank you for reporting this issue. This issue has been fixed in Visual Studio 2013. You can install a trial version of Visual Studio 2013 with the fix from: http://go.microsoft.com/?linkid=9832436
Posted by Microsoft on 3/11/2013 at 11:36 AM
Hi: this bug has been fixed. The fix will show up in the next release of Visual C++

Jonathan Caves
Visual C++ Compiler Team
Posted by Microsoft on 2/27/2013 at 9:27 PM
Thank you for submitting feedback on Visual Studio and .NET Framework. Your issue has been routed to the appropriate VS development team for investigation. We will contact you if we require any additional information.
Posted by Microsoft on 2/27/2013 at 4:49 AM
Thank you for your feedback, we are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)
Sign in to post a workaround.
File Name Submitted By Submitted On File Size  
bug7_12.cpp 2/27/2013 1 KB