ASF subversion and git services commented on PROTON-1116:

Commit ef37b23208f31bef224f82bc493867409f4aceeb in qpid-proton's branch 
refs/heads/master from [~aconway]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;h=ef37b23 ]

PROTON-1116: Potential infinite recursion detected by VC++14 compiler

The problem is caused by the implicit conversion constructor in proton::value.
Made it explicit and fixed a few places that relied on it.

This is a simple fix for 0.12, a safer and more flexible encoding/decoding
system based on type-traits will be committed to master.

> Potential infinite recursion detected by VC++14 compiler
> --------------------------------------------------------
>                 Key: PROTON-1116
>                 URL: https://issues.apache.org/jira/browse/PROTON-1116
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: cpp-binding
>    Affects Versions: 0.12.0
>         Environment: Visual Studio 2015 Update 1, Visual Studio 2010
>            Reporter: Andrew Stitcher
>            Assignee: Alan Conway
>            Priority: Blocker
> I get the following warning when  running the Visual Studio 2015 compiler on 
> the C++ binding code
> {noformat}
> 29>c:\users\andrew\documents\github\qpid-proton\proton-c\bindings\cpp\include\proton\value.hpp(49):
>  warning C4717: 
> 'proton::value::value<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>  >,proton::value> >': recursive on all control paths, function will cause 
> runtime stack overflow
> {noformat}
> My guess is that we never actually try to run this code in the tests or e 
> would indeed by seeing a failure, however I think we must eliminate this as a 
> bug before releasing 0.12.
> Either remove the code so removing the warning (as the code seems like it 
> can't have been called in testing) or fix the code.

This message was sent by Atlassian JIRA

Reply via email to