Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
2020-03-22 Mattias Ellert <mattias.ellert@physics.uu.se>

* inst/include/Rcpp/exceptions_impl.h: Add include guard,
Make sure RCPP_DEMANGLER_ENABLED is always defined,
Add missing inline qualifier

2020-03-18 Dirk Eddelbuettel <edd@debian.org>

* DESCRIPTION (Version, Date): Roll minor version
Expand Down
8 changes: 7 additions & 1 deletion inst/include/Rcpp/exceptions_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@
// You should have received a copy of the GNU General Public License
// along with Rcpp. If not, see <http://www.gnu.org/licenses/>.

#ifndef Rcpp__exceptions_impl__h
#define Rcpp__exceptions_impl__h

// disable demangler on platforms where we have no support
#ifndef RCPP_DEMANGLER_ENABLED
# if defined(_WIN32) || \
Expand All @@ -34,14 +37,16 @@
# elif defined(__GNUC__) || defined(__clang__)
# include <execinfo.h>
# define RCPP_DEMANGLER_ENABLED 1
# else
# define RCPP_DEMANGLER_ENABLED 0
# endif
#endif

namespace Rcpp {

// Extract mangled name e.g. ./test(baz+0x14)[0x400962]
#if RCPP_DEMANGLER_ENABLED
static std::string demangler_one(const char* input) { // #nocov start
static inline std::string demangler_one(const char* input) { // #nocov start

static std::string buffer;

Expand Down Expand Up @@ -102,3 +107,4 @@ namespace Rcpp {

}

#endif