/* * Copyright (c) 2019 TAOS Data, Inc. * * This program is free software: you can use, redistribute, and/or modify * it under the terms of the GNU Affero General Public License, version 3 * or later ("AGPL"), as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #ifndef _todbc_log_h_ #define _todbc_log_h_ #include "os.h" #define D(fmt, ...) \ fprintf(stderr, \ "%s[%d]:%s() " fmt "\n", \ basename((char*)__FILE__), __LINE__, __func__, \ ##__VA_ARGS__) #define DASSERT(statement) \ do { \ if (statement) break; \ D("Assertion failure: %s", #statement); \ abort(); \ } while (0) #define DASSERTX(statement, fmt, ...) \ do { \ if (statement) break; \ D("Assertion failure: %s, " fmt "", #statement, ##__VA_ARGS__); \ abort(); \ } while (0) #endif // _todbc_log_h_