version bump
[smdp.git] / include / common.h
index 99c4382..a67a0be 100644 (file)
@@ -3,7 +3,7 @@
 
 /*
  * Common macros.
- * Copyright (C) 2014 Michael Goehler
+ * Copyright (C) 2018 Michael Goehler
  *
  * This file is part of mdp.
  *
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  *
  *
+ * type: bool variable stores only true or false.
+ *
  * macro: MAX returns the higher one of two input variables
  * macro: MIN returns the lower one of two input variables
  *
  */
 
+#if defined( __STDC__ )  // for standard C compiler
+#if __STDC_VERSION__ >= 199901L    // for C99 and later
+#include <stdbool.h>
+#else    // __STDC_VERSION__ >= 199901L
+#if !defined( bool )
+typedef enum {
+    false = 0,
+    true  = 1
+} bool;
+#endif   // !defined( bool )
+#endif   // __STDC_VERSION__ >= 199901L
+#else    // defined( __STDC__ )
+#define bool    int
+#define true    1
+#define false   0
+#endif   // defined( __STDC__ )
+
 #define MAX(a, b) ({ typeof(a) _a = a; typeof(b) _b = b; _a > _b? _a : _b; })
 #define MIN(a, b) ({ typeof(a) _a = a; typeof(b) _b = b; _a < _b? _a : _b; })