Commit 1706959a authored by Lucian Grijincu's avatar Lucian Grijincu Committed by Noam Lerner

folly: exception_tracer: add throw() to __cxa_begin_catch

Summary:
http://libcxxabi.llvm.org/spec.html

void* __cxa_begin_catch(void* exceptionObject) throw();

```
folly/experimental/exception_tracer/ExceptionTracerLib.cpp:145:7: error: '__cxa_begin_catch' is missing exception specification 'throw()' [-Werror]
void* __cxa_begin_catch(void *excObj) {
^
throw()
folly/experimental/exception_tracer/ExceptionTracerLib.cpp:35:7: note: previous declaration is here
void* __cxa_begin_catch(void* excObj);
^
1 error generated.
11.44s error: folly/experimental/exception_tracer/ExceptionTracerLib.cpp
fbmake: *** [_build/opt/folly/experimental/exception_tracer/b187621/ExceptionTracerLib.o] Error 1
```

Test Plan: fbmake

Reviewed By: philipp@fb.com

Subscribers: folly-diffs@, yfeldblum, tudort, chalfant

FB internal diff: D2115305

Tasks: 5908365

Signature: t1:2115305:1433186210:3652d81ab10effe1be6da86705322ce090fb6cd4

Blame Revision: https://phabricator.fb.com/D2114085
parent 45339b04
...@@ -32,7 +32,7 @@ extern "C" { ...@@ -32,7 +32,7 @@ extern "C" {
FOLLY_NORETURN void __cxa_throw(void* thrownException, FOLLY_NORETURN void __cxa_throw(void* thrownException,
std::type_info* type, std::type_info* type,
void (*destructor)(void*)); void (*destructor)(void*));
void* __cxa_begin_catch(void* excObj); void* __cxa_begin_catch(void* excObj) throw();
FOLLY_NORETURN void __cxa_rethrow(void); FOLLY_NORETURN void __cxa_rethrow(void);
void __cxa_end_catch(void); void __cxa_end_catch(void);
} }
...@@ -142,7 +142,7 @@ void __cxa_rethrow() { ...@@ -142,7 +142,7 @@ void __cxa_rethrow() {
orig_cxa_rethrow(); orig_cxa_rethrow();
} }
void* __cxa_begin_catch(void *excObj) { void* __cxa_begin_catch(void *excObj) throw() {
// excObj is a pointer to the unwindHeader in __cxa_exception // excObj is a pointer to the unwindHeader in __cxa_exception
moveTopException(activeExceptions, caughtExceptions); moveTopException(activeExceptions, caughtExceptions);
return orig_cxa_begin_catch(excObj); return orig_cxa_begin_catch(excObj);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment