// Copyright 2016 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_ALLOCATOR_ALLOCATOR_SHIM_INTERNALS_H_ #define BASE_ALLOCATOR_ALLOCATOR_SHIM_INTERNALS_H_ #if defined(__GNUC__) #include <sys/cdefs.h> // for __THROW #ifndef __THROW // Not a glibc system #ifdef _NOEXCEPT // LLVM libc++ uses noexcept instead #define __THROW _NOEXCEPT #else #define __THROW #endif // !_NOEXCEPT #endif // Shim layer symbols need to be ALWAYS exported, regardless of component build. #define SHIM_ALWAYS_EXPORT __attribute__((visibility("default"))) #define SHIM_ALIAS_SYMBOL(fn) __attribute__((alias(#fn))) #endif // __GNUC__ #endif // BASE_ALLOCATOR_ALLOCATOR_SHIM_INTERNALS_H_