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

Status : 

  Fixed<br /><br />
		This item has been fixed in the current or upcoming version of this product.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 780098 Comments
Status Closed Workarounds
Type Bug Repros 0
Opened 2/27/2013 4:31:28 AM
Access Restriction Public


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 Deon [MSFT] 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:
Posted by Jonathan [MSFT] 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(