diff options
Diffstat (limited to 'FL')
| -rw-r--r-- | FL/Fl.H | 3 | ||||
| -rw-r--r-- | FL/fl_casts.H | 23 |
2 files changed, 25 insertions, 1 deletions
@@ -22,8 +22,9 @@ # define Fl_H #include <FL/Fl_Export.H> - #include <FL/platform_types.h> // for FL_SOCKET +#include <FL/fl_casts.H> // experimental + #ifdef FLTK_HAVE_CAIRO # include <FL/Fl_Cairo.H> #endif diff --git a/FL/fl_casts.H b/FL/fl_casts.H new file mode 100644 index 000000000..b4968c055 --- /dev/null +++ b/FL/fl_casts.H @@ -0,0 +1,23 @@ +// experimental inline cast functions for the Fast Light Toolkit (FLTK) + +#include <FL/platform_types.h> + +inline char fl_char(void *v) { return (char)(fl_intptr_t)v; } +inline int fl_int(void *v) { return (int)(fl_intptr_t)v; } +inline long fl_long(void *v) { return (long)(fl_intptr_t)v; } + +inline unsigned char fl_uchar(void *v) { return (unsigned char)(fl_uintptr_t)v; } +inline unsigned int fl_uint(void *v) { return (unsigned int)(fl_uintptr_t)v; } +inline unsigned long fl_ulong(void *v) { return (unsigned long)(fl_uintptr_t)v; } + +#if 0 /* not necessary */ + +inline char fl_char(size_t v) { return (char)v; } +inline int fl_int(size_t v) { return (int)v; } +inline long fl_long(size_t v) { return (long)v; } + +inline unsigned char fl_uchar(size_t v) { return (unsigned char)v; } +inline unsigned int fl_uint(size_t v) { return (unsigned int)v; } +inline unsigned long fl_ulong(size_t v) { return (unsigned long)v; } + +#endif /* not necessary */ |
