Home Dashboard Directory Help
Search

[codename Milan] compile failed in some complicated case ( mixed with namespaces and variadic templates ) by sw6ueyz


Status: 

Closed
 as Fixed Help for as Fixed


1
0
Sign in
to vote
Type: Bug
ID: 776606
Opened: 1/15/2013 7:50:18 AM
Access Restriction: Public
0
Workaround(s)
view
0
User(s) can reproduce this bug

Description

// this code should compile in Visual Studio 2012, v120_CTP_Nov2012.
// it compiled in gcc 4.6.1


namespace ns {

    template< class ... _Type >
    struct Data
    {
    };
}

template< class ... _Args >
void eat( _Args&& ... )
{
}

template< class _Type >
_Type get() { return _Type(); }

template< class ... _Args >
ns::Data< _Args ... > foo( _Args&& ... )
{
    eat( get< _Args >() ... );
    return ns::Data< _Args ... >();
}

int main()
{
    foo( foo( 0 ) );

    return 0;
}
Details
Sign in to post a comment.
Posted by Microsoft on 1/16/2013 at 5:28 PM
Hi:
    Thanks for reporting the issue.
    A fix for this issue has been checked into the compiler sources. The fix should show up in the next release of Visual C++.

Xiang Fan
Visual C++ Team
Posted by Microsoft on 1/15/2013 at 10:11 PM
Thanks for your feedback.

We are rerouting this issue to the appropriate group within the Visual Studio Product Team for triage and resolution. These specialized experts will follow-up with your issue.
Posted by Microsoft on 1/15/2013 at 8:52 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.