IMP
2.0.0
The Integrative Modeling Platform
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
warning_macros.h
Go to the documentation of this file.
1
/**
2
* \file IMP/base/warning_macros.h
3
* \brief Various general useful macros for IMP.
4
*
5
* Copyright 2007-2013 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPBASE_WARNING_MACROS_H
10
#define IMPBASE_WARNING_MACROS_H
11
12
#include <IMP/base/base_config.h>
13
#include "internal/eat.h"
14
15
#define IMP_REQUIRE_SEMICOLON_CLASS(Name)
16
#define IMP_REQUIRE_SEMICOLON_NAMESPACE
17
/*
18
#define IMP_REQUIRE_SEMICOLON_CLASS(Name) \
19
IMP_NO_DOXYGEN(IMP_NO_SWIG(struct semicolon_##Name##_helper_struct{}))
20
#define IMP_REQUIRE_SEMICOLON_NAMESPACE void dummy_f()
21
*/
22
23
24
/** Disable unused variable warning for a variable.
25
*/
26
#define IMP_UNUSED(variable) IMP::base::internal::eat(variable)
27
28
#ifndef IMP_DOXYGEN
29
#ifdef __GNUC__
30
#define IMP_WARN_PREPROCESS(msg) IMP_PRAGMA(message IMP_STRINGIFY(msg) )
31
32
//#if __GNUC_PREREQ(4,2)
33
#define IMP_GCC_DISABLE_WARNING(name)\
34
IMP_GCC_PRAGMA( diagnostic ignored IMP_STRINGIFY(name) )
35
36
/*#else
37
#define IMP_GCC_DISABLE_WARNING(name)
38
#endif*/
39
40
#else
41
#define IMP_GCC_DISABLE_WARNING(name)
42
#endif
43
44
#endif
45
46
47
#endif
/* IMPBASE_WARNING_MACROS_H */