[ 
https://issues.apache.org/jira/browse/THRIFT-750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852699#action_12852699
 ] 

David Reiss commented on THRIFT-750:
------------------------------------

You know that the ones inherited from the *If are automatically virtual, even 
though they are not explicitly declared as such, right?

> C++ Compiler Virtual Function Option
> ------------------------------------
>
>                 Key: THRIFT-750
>                 URL: https://issues.apache.org/jira/browse/THRIFT-750
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Compiler (C++)
>    Affects Versions: 0.2, 0.3
>         Environment: Cygwin 1.7.1 on Windows XP SP3, Thrift 0.2.0 & r760184 & 
> Trunk 
>            Reporter: Tim Wilson-Brown
>            Priority: Minor
>         Attachments: t_cpp_generator.cc
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> The C++ Compiler currelty emits most functions in the *Client class as 
> non-virtual.
> This makes it impossible to subclass the generated class and override its 
> functions.
> A workaround is to inherit from the interface class *If, override the 
> functions, and use them to call a *Client class member pointer.
> But this can be cumbersome in some situations.
> I propose to add a virtual option to the C++ compiler that emits function 
> declarations as virtual.
> I have attached a patched version of t_cpp_generator.cc from Thrift 0.2.0 - I 
> can work out how to turn it into a patch file if needed.
> Is this worth merging into the trunk?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to