summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-01 12:43:59 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-11-01 12:43:59 +0000
commit83c5219287937d3dffe60ebd85a5c1f808006238 (patch)
tree08e921559246a4dabedebd5e38e4c158621cf062 /main.c
parent93880659c00b33c6429f6b9cd7a15ff9ee499a70 (diff)
downloadruby-83c5219287937d3dffe60ebd85a5c1f808006238.tar.gz
* main.c: <stdlib.h> is needed, to introduce the getenv(3)
prototype declaration. Without it a C compiler shall infer the getenv type as "int getenv(...);", but this is totally wrong, especially when your machine's sizeof(int) and sizeof(char*) differs. On such environment a return value of getenv(3), which is in fact a char*, might first casted into a int (loses data here), and then casted back to char* by automatic integral promotion fo fit to the prototype of ruby_set_debug_option(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'main.c')
-rw-r--r--main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/main.c b/main.c
index a782939ff3..e100cddba5 100644
--- a/main.c
+++ b/main.c
@@ -15,6 +15,9 @@
#ifdef HAVE_LOCALE_H
#include <locale.h>
#endif
+#ifdef RUBY_DEBUG_ENV
+#include <stdlib.h>
+#endif
RUBY_GLOBAL_SETUP