summaryrefslogtreecommitdiffstats
path: root/resources
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2010-11-07 08:28:31 +0100
committerMichael Bien <[email protected]>2010-11-15 16:09:28 +0100
commite98aa3caa114133080e4e1668bfa4c828d5c42bf (patch)
tree3998800a7ecb3fc195ce64d15e410c9a18fe6cc6 /resources
parent09cba4571143544817a45657b04357e4419545f5 (diff)
1st fixes for new gluegen
Diffstat (limited to 'resources')
-rw-r--r--resources/stubs_includes/common/stddef.h31
-rw-r--r--resources/stubs_includes/common/stdint.h45
2 files changed, 44 insertions, 32 deletions
diff --git a/resources/stubs_includes/common/stddef.h b/resources/stubs_includes/common/stddef.h
index c05f1d44..f6c7207b 100644
--- a/resources/stubs_includes/common/stddef.h
+++ b/resources/stubs_includes/common/stddef.h
@@ -1,13 +1,24 @@
+#ifndef __stddef_h_
+#define __stddef_h_
-#if defined(_WIN64)
- typedef __int64 ptrdiff_t;
-#elif defined(__ia64__) || defined(__x86_64__)
- typedef long int ptrdiff_t;
-#else
- typedef int ptrdiff_t;
-#endif
+ /**
+ * Look in the GlueGen.java API documentation for the build-in types (terminal symbols)
+ * definition.
+ *
+ * The following types are build-in:
+ *
+ * __int32
+ * int32_t
+ * uint32_t
+ * __int64
+ * int64_t
+ * uint64_t
+ * ptrdiff_t
+ * size_t
+ */
-#define NULL ((void *)0)
+ #define NULL ((void *)0)
-typedef int wchar_t;
-typedef unsigned long size_t; \ No newline at end of file
+ typedef int wchar_t;
+
+#endif /* __stddef_h_ */
diff --git a/resources/stubs_includes/common/stdint.h b/resources/stubs_includes/common/stdint.h
index d6a5dd23..4e456608 100644
--- a/resources/stubs_includes/common/stdint.h
+++ b/resources/stubs_includes/common/stdint.h
@@ -1,22 +1,30 @@
+#ifndef __stdint_h_
+#define __stdint_h_
-#if defined(_WIN32)
- #error windows does not support stdint.h
- // typedef signed __int32 int32_t;
- // typedef unsigned __int32 uint32_t;
- // typedef signed __int64 int64_t;
- // typedef unsigned __int64 uint64_t;
-#else
+ /**
+ * Look in the GlueGen.java API documentation for the build-in types (terminal symbols)
+ * definition.
+ *
+ * The following types are build-in:
+ *
+ * __int32
+ * int32_t
+ * uint32_t
+ * __int64
+ * int64_t
+ * uint64_t
+ * ptrdiff_t
+ * size_t
+ */
typedef signed char int8_t;
typedef unsigned short int16_t;
- typedef int int32_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
- typedef unsigned int uint32_t;
- typedef long intptr_t;
- typedef unsigned long uintptr_t;
+ typedef ptrdiff_t intptr_t;
+ typedef size_t uintptr_t;
/* Greatest-width integer types */
/* Modern GCCs provide __INTMAX_TYPE__ */
@@ -25,23 +33,16 @@
#elif __have_longlong64
typedef signed long long intmax_t;
#else
- typedef signed long intmax_t;
+ typedef int64_t intmax_t;
#endif
/* Modern GCCs provide __UINTMAX_TYPE__ */
#if defined(__UINTMAX_TYPE__)
- typedef __UINTMAX_TYPE__ uintmax_t;
+ typedef __UINTMAX_TYPE__ uintmax_t;
#elif __have_longlong64
typedef unsigned long long uintmax_t;
#else
- typedef unsigned long uintmax_t;
+ typedef uint64_t uintmax_t;
#endif
- #if defined(__ia64__) || defined(__x86_64__)
- typedef signed long int int64_t;
- typedef unsigned long int uint64_t;
- #else
- typedef signed long long int int64_t;
- typedef unsigned long long int uint64_t;
- #endif
-#endif
+#endif /* __stdint_h_ */