scc
2024.06
SystemC components library
sccassert.h
1
/*******************************************************************************
2
* Copyright 2017 MINRES Technologies GmbH
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*******************************************************************************/
16
17
#ifndef _UTIL_ASSERT_H_
18
#define _UTIL_ASSERT_H_
19
20
#include "logging.h"
21
22
#ifndef NDEBUG
23
#define ASSERT(condition, message) \
24
do { \
25
if(!(condition)) { \
26
LOG(FATAL) << "Assertion `"
#condition "` failed in " << __FILE__ << " line " << __LINE__ << ": " << message << std::endl; \
27
std::terminate(); \
28
} \
29
} while(false)
30
#else
31
#define ASSERT(condition, message) \
32
do { \
33
} while(false)
34
#endif
35
36
#endif
/* _UTIL_ASSERT_H_ */
src
common
util
sccassert.h
Generated by
1.9.1