| // Protocol Buffers - Google's data interchange format |
| // Copyright 2008 Google Inc. All rights reserved. |
| // https://developers.google.com/protocol-buffers/ |
| // |
| // Redistribution and use in source and binary forms, with or without |
| // modification, are permitted provided that the following conditions are |
| // met: |
| // |
| // * Redistributions of source code must retain the above copyright |
| // notice, this list of conditions and the following disclaimer. |
| // * Redistributions in binary form must reproduce the above |
| // copyright notice, this list of conditions and the following disclaimer |
| // in the documentation and/or other materials provided with the |
| // distribution. |
| // * Neither the name of Google Inc. nor the names of its |
| // contributors may be used to endorse or promote products derived from |
| // this software without specific prior written permission. |
| // |
| // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| // #undefs all macros defined in port_def.inc. See comments in port_def.inc |
| // for more info. |
| |
| #ifndef PROTOBUF_NAMESPACE |
| #error "port_undef.inc must be included after port_def.inc" |
| #endif |
| #undef PROTOBUF_NAMESPACE |
| #undef PROTOBUF_NAMESPACE_ID |
| #undef PROTOBUF_ALWAYS_INLINE |
| #undef PROTOBUF_COLD |
| #undef PROTOBUF_NOINLINE |
| #undef PROTOBUF_SECTION_VARIABLE |
| #undef PROTOBUF_DEPRECATED |
| #undef PROTOBUF_DEPRECATED_ENUM |
| #undef PROTOBUF_DEPRECATED_MSG |
| #undef PROTOBUF_FUNC_ALIGN |
| #undef PROTOBUF_RETURNS_NONNULL |
| #undef PROTOBUF_ATTRIBUTE_REINITIALIZES |
| #undef PROTOBUF_RTTI |
| #undef PROTOBUF_VERSION |
| #undef PROTOBUF_VERSION_SUFFIX |
| #undef PROTOBUF_FIELD_OFFSET |
| #undef PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC |
| #undef PROTOBUF_MIN_PROTOC_VERSION |
| #undef PROTOBUF_PREDICT_TRUE |
| #undef PROTOBUF_PREDICT_FALSE |
| #undef PROTOBUF_LONGLONG |
| #undef PROTOBUF_ULONGLONG |
| #undef PROTOBUF_LL_FORMAT |
| #undef PROTOBUF_GUARDED_BY |
| #undef PROTOBUF_FALLTHROUGH_INTENDED |
| #undef PROTOBUF_EXPORT |
| #undef PROTOC_EXPORT |
| #undef PROTOBUF_MUST_USE_RESULT |
| #undef PROTOBUF_NAMESPACE_OPEN |
| #undef PROTOBUF_NAMESPACE_CLOSE |
| #undef PROTOBUF_UNUSED |
| #undef PROTOBUF_ASSUME |
| #undef PROTOBUF_EXPORT_TEMPLATE_DECLARE |
| #undef PROTOBUF_EXPORT_TEMPLATE_DEFINE |
| #undef PROTOBUF_ALIGNAS |
| #undef PROTOBUF_EXPORT_TEMPLATE_INVOKE_2 |
| #undef PROTOBUF_EXPORT_TEMPLATE_DECLARE_DEFAULT |
| #undef PROTOBUF_EXPORT_TEMPLATE_DEFINE_DEFAULT |
| #undef PROTOBUF_EXPORT_TEMPLATE_DECLARE_MSVC_HACK |
| #undef PROTOBUF_EXPORT_TEMPLATE_DEFINE_MSVC_HACK |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_2 |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_3 |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__attribute__ |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport |
| #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport |
| #undef PROTOBUF_FINAL |
| #undef PROTOBUF_THREAD_LOCAL |
| |
| // Restore macro that may have been #undef'd in port_def.inc. |
| #ifdef _MSC_VER |
| #pragma pop_macro("CREATE_NEW") |
| #pragma pop_macro("DOUBLE_CLICK") |
| #pragma pop_macro("ERROR") |
| #pragma pop_macro("ERROR_BUSY") |
| #pragma pop_macro("ERROR_NOT_FOUND") |
| #pragma pop_macro("GetMessage") |
| #pragma pop_macro("IGNORE") |
| #pragma pop_macro("IN") |
| #pragma pop_macro("INPUT_KEYBOARD") |
| #pragma pop_macro("OUT") |
| #pragma pop_macro("OPTIONAL") |
| #pragma pop_macro("min") |
| #pragma pop_macro("max") |
| #pragma pop_macro("NO_ERROR") |
| #pragma pop_macro("REASON_UNKNOWN") |
| #pragma pop_macro("SERVICE_DISABLED") |
| #pragma pop_macro("SEVERITY_ERROR") |
| #pragma pop_macro("STRICT") |
| #endif |
| |
| #if defined(__clang__) || defined(__GNUC__) || defined(_MSC_VER) |
| #pragma pop_macro("YES") |
| #pragma pop_macro("NO") |
| #pragma pop_macro("DEBUG") |
| #endif // defined(__clang__) || defined(__GNUC__) || defined(_MSC_VER) |
| |
| #if defined(__clang__) |
| #pragma clang diagnostic pop |
| #elif defined(__GNUC__) |
| #pragma GCC diagnostic pop |
| #endif |