1 /* 2 * Copyright 2006 The WebRTC Project Authors. All rights reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 // This module contains some basic debugging facilities. 12 // Originally comes from shared/commandlineflags/checks.h 13 14 #ifndef WEBRTC_BASE_CHECKS_H_ 15 #define WEBRTC_BASE_CHECKS_H_ 16 17 #include <string.h> 18 19 namespace rtc { 20 21 // Prints an error message to stderr and aborts execution. 22 void Fatal(const char* file, int line, const char* format, ...); 23 24 } // namespace rtc 25 26 // The UNREACHABLE macro is very useful during development. 27 #define UNREACHABLE() \ 28 rtc::Fatal(__FILE__, __LINE__, "unreachable code") 29 30 #endif // WEBRTC_BASE_CHECKS_H_ 31