[
https://issues.apache.org/jira/browse/THRIFT-4678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16712801#comment-16712801
]
James E. King III edited comment on THRIFT-4678 at 12/7/18 12:45 PM:
---------------------------------------------------------------------
In this effort here, `BOOST_NOEXCEPT_OR_NOTHROW` is a good option for exception
declarations, however if we build any exception code into the link library, one
would have to build a library for {{C++03}} and one for {{C++11}} in order for
that to work. It starts getting a bit messy.
I think it would be useful to first get the entire C++ library to work without
boost if someone has {{C++11}} or later. Then we can drop support for
{{C++03}}. Anyone who needs {{C++03}} support can use an older version (like
0.11.0 or 0.12.0, to be released soon, hopefully). THRIFT-4441 covers the
effort to wean the project off boost. Perhaps this work can be done in
cooperation with that work? The author of THRIFT-4441 seems to have
disappeared or dropped their effort; they were pretty close to completing the
work of getting to {{C++11}} without the need for boost.
was (Author: jking3):
In this effort here, `BOOST_NOEXCEPT_OR_NOTHROW` is a good option for exception
declarations, however if we build any exception code into the link library, one
would have to build a library for `C++03` and one for `C++11` in order for that
to work. It starts getting a bit messy.
I think it would be useful to first get the entire C++ library to work without
boost if someone has `C++11` or later. Then we can drop support for `C++03`.
Anyone who needs `C++03` support can use an older version (like 0.11.0 or
0.12.0, to be released soon, hopefully). THRIFT-4441 covers the effort to wean
the project off boost. Perhaps this work can be done in cooperation with that
work? The author of THRIFT-4441 seems to have disappeared or dropped their
effort; they were pretty close to completing the work of getting to `C++11`
without the need for boost.
> add noexcept cpp generator option
> ---------------------------------
>
> Key: THRIFT-4678
> URL: https://issues.apache.org/jira/browse/THRIFT-4678
> Project: Thrift
> Issue Type: Improvement
> Components: C++ - Compiler, C++ - Library
> Affects Versions: 0.11.0
> Reporter: yuanyuan chen
> Priority: Minor
>
> The C++11 standard has deprecated the usage of throw() to express
> exceptions,so to avoid warnings from the compiler,I think this option is
> useful.
> I have a pull request in github,this issue is created to track it.
> Some questions remain:
> 1.Should we change the runtime c++ library to use BOOST_NOEXCEPT_OR_NOTHROW?
> 2.Should we add an control option to enable all c++11 options like
> moveable_types .etc?
> 3.Should we begin to support C+17 features? I think std::optional should be
> used to implement optional keyword,but this is clearly an API breaking
> change,so we need an c+17 control option.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)