[ubsan] Move attribute specifier to fix build with gcc.
authorWill Dietz <wdietz2@illinois.edu>
Thu, 10 Jan 2013 17:01:13 +0000 (17:01 +0000)
committerWill Dietz <wdietz2@illinois.edu>
Thu, 10 Jan 2013 17:01:13 +0000 (17:01 +0000)
llvm-svn: 172078

compiler-rt/lib/ubsan/ubsan_handlers.h
compiler-rt/lib/ubsan/ubsan_handlers_cxx.h

index 6cc2d36..d6a0424 100644 (file)
@@ -25,10 +25,10 @@ struct TypeMismatchData {
 };
 
 #define RECOVERABLE(checkname, ...) \
-  SANITIZER_INTERFACE_ATTRIBUTE \
-  extern "C" void __ubsan_handle_ ## checkname( __VA_ARGS__ ); \
-  SANITIZER_INTERFACE_ATTRIBUTE \
-  extern "C" void __ubsan_handle_ ## checkname ## _abort( __VA_ARGS__ );
+  extern "C" SANITIZER_INTERFACE_ATTRIBUTE \
+    void __ubsan_handle_ ## checkname( __VA_ARGS__ ); \
+  extern "C" SANITIZER_INTERFACE_ATTRIBUTE \
+    void __ubsan_handle_ ## checkname ## _abort( __VA_ARGS__ );
 
 /// \brief Handle a runtime type check failure, caused by either a misaligned
 /// pointer, a null pointer, or a pointer to insufficient storage for the
@@ -72,11 +72,11 @@ struct UnreachableData {
 };
 
 /// \brief Handle a __builtin_unreachable which is reached.
-SANITIZER_INTERFACE_ATTRIBUTE
-extern "C" void __ubsan_handle_builtin_unreachable(UnreachableData *Data);
+extern "C" SANITIZER_INTERFACE_ATTRIBUTE
+void __ubsan_handle_builtin_unreachable(UnreachableData *Data);
 /// \brief Handle reaching the end of a value-returning function.
-SANITIZER_INTERFACE_ATTRIBUTE
-extern "C" void __ubsan_handle_missing_return(UnreachableData *Data);
+extern "C" SANITIZER_INTERFACE_ATTRIBUTE
+void __ubsan_handle_missing_return(UnreachableData *Data);
 
 struct VLABoundData {
   SourceLocation Loc;
index 94eccb5..cb1bca7 100644 (file)
@@ -28,11 +28,11 @@ struct DynamicTypeCacheMissData {
 /// \brief Handle a runtime type check failure, caused by an incorrect vptr.
 /// When this handler is called, all we know is that the type was not in the
 /// cache; this does not necessarily imply the existence of a bug.
-SANITIZER_INTERFACE_ATTRIBUTE
-extern "C" void __ubsan_handle_dynamic_type_cache_miss(
+extern "C" SANITIZER_INTERFACE_ATTRIBUTE
+void __ubsan_handle_dynamic_type_cache_miss(
   DynamicTypeCacheMissData *Data, ValueHandle Pointer, ValueHandle Hash);
-SANITIZER_INTERFACE_ATTRIBUTE
-extern "C" void __ubsan_handle_dynamic_type_cache_miss_abort(
+extern "C" SANITIZER_INTERFACE_ATTRIBUTE
+void __ubsan_handle_dynamic_type_cache_miss_abort(
   DynamicTypeCacheMissData *Data, ValueHandle Pointer, ValueHandle Hash);
 
 }