Closed marble-sh closed 10 years ago
Also closes #8
@marblenix @nixpulvis @fjaell @crowell @ShaharHD:
Can you all test the fixes in https://github.com/eclubb/ncurses-ruby/tree/marblenix-Fix-Compile-on-Mac-OS ?
Does it compile on your platform(s) without errors and without warnings? If so, I'll merge and release a new version of the gem.
Sure thing, here's what I did:
make clean; rm -f Makefile; ruby ext/ncurses/extconf.rb
compiling ext/ncurses/form_wrap.c
In file included from ext/ncurses/form_wrap.c:31:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/form_wrap.c:621:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
int n = RARRAY_LEN(arg3);
~ ^~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:880:6: note: expanded from macro 'RARRAY_LEN'
(long)((RBASIC(a)->flags >> RARRAY_EMBED_LEN_SHIFT) & \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/form_wrap.c:621:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
int n = RARRAY_LEN(arg3);
~ ^~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:882:25: note: expanded from macro 'RARRAY_LEN'
RARRAY(a)->as.heap.len)
~~~~~~~~~~~~~~~~~~~^~~
ext/ncurses/form_wrap.c:699:40: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_field_fore(field, NUM2ULONG(attr)));
~~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/form_wrap.c:713:40: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_field_back(field, NUM2ULONG(attr)));
~~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
5 warnings generated.
compiling ext/ncurses/menu_wrap.c
In file included from ext/ncurses/menu_wrap.c:27:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/menu_wrap.c:805:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_fore(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/menu_wrap.c:821:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_back(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/menu_wrap.c:837:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_grey(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
4 warnings generated.
compiling ext/ncurses/ncurses_wrap.c
ext/ncurses/ncurses_wrap.c:540:24: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
chstr[i] = NUM2ULONG(rb_ary_entry(array, i));
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/ncurses_wrap.c:605:33: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attr_set(NUM2ULONG(arg1), NUM2INT(arg2), ((void)(arg3),NULL)));
~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:610:48: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wattr_on(get_window(arg1), NUM2ULONG(arg2), ((void)(arg3),NULL)));
~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:615:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wattr_off(get_window(arg1), NUM2ULONG(arg2), ((void)(arg3),NULL)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1210:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(pechochar(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1297:32: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attroff(NUM2ULONG(arg1)));
~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1300:31: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attron(NUM2ULONG(arg1)));
~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1303:32: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attrset(NUM2ULONG(arg1)));
~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1398:28: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(vidattr(NUM2ULONG(arg1)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1405:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(waddch(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1436:45: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wbkgd(get_window(arg1), NUM2ULONG(arg2)));
~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1439:42: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return ((wbkgdset(get_window(arg1), NUM2ULONG(arg2))),Qnil);
~~~~~~~~ ^~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/ncurses_wrap.c:1442:47: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:65: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:83: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:101: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:119: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:137: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:155: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:173: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2ULONG(arg9)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1446:62: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wchgat(get_window(arg1), NUM2INT(arg2), NUM2ULONG(arg3), NUM2INT(arg4), ((void)(arg5),NULL)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1473:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wechochar(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1482:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(whline(get_window(arg1), NUM2ULONG(arg2), NUM2INT(arg3)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1488:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(winsch(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1539:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wvline(get_window(arg1), NUM2ULONG(arg2), NUM2INT(arg3)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1599:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
{ return rb_str_new2(unctrl(NUM2ULONG(ch))); }
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/intern.h:786:27: note: expanded from macro 'rb_str_new_cstr'
(__builtin_constant_p(str)) ? \
^
ext/ncurses/ncurses_wrap.c:1599:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
{ return rb_str_new2(unctrl(NUM2ULONG(ch))); }
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/intern.h:788:18: note: expanded from macro 'rb_str_new_cstr'
rb_str_new_cstr(str); \
^
27 warnings generated.
compiling ext/ncurses/panel_wrap.c
In file included from ext/ncurses/panel_wrap.c:25:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
linking shared-object ncurses.bundle
End result was a compiled ncurses.bundle
Here's the output when compiling with XCODE ruby version 2.0.0
compiling ext/ncurses/form_wrap.c
In file included from ext/ncurses/form_wrap.c:31:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/form_wrap.c:675:1: warning: control may reach end of non-void function [-Wreturn-type]
}
^
2 warnings generated.
compiling ext/ncurses/menu_wrap.c
In file included from ext/ncurses/menu_wrap.c:27:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
compiling ext/ncurses/ncurses_wrap.c
compiling ext/ncurses/panel_wrap.c
In file included from ext/ncurses/panel_wrap.c:25:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
linking shared-object ncurses.bundle
Just realized that I compiled on the wrong branch. Same thing, no errors, no warnings when I switched branches.
minishwoods ~/ncurses-ruby ‹origin/marblenix-Fix-Compile-on-Mac-OS_› » make clean; rm -f Makefile; ruby ext/ncurses/extconf.rb checking for unistd.h... yes checking for ncurses.h... yes checking for wmove() in -lncurses... yes checking for newscr()... yes checking for TABSIZE()... yes checking for ESCDELAY()... yes checking for keybound()... yes checking for curses_version()... yes checking for tigetstr()... yes checking for getwin()... yes checking for putwin()... yes checking for ungetmouse()... yes checking for mousemask()... yes checking for wenclose()... yes checking for mouseinterval()... yes checking for wmouse_trafo()... yes checking for mcprint()... yes checking for has_key()... yes checking for delscreen()... yes checking for define_key()... yes checking for keyok()... yes checking for resizeterm()... yes checking for use_default_colors()... yes checking for use_extended_names()... yes checking for wresize()... yes checking for attr_on()... yes checking for attr_off()... yes checking for attr_set()... yes checking for chgat()... yes checking for color_set()... yes checking for filter()... yes checking for intrflush()... yes checking for mvchgat()... yes checking for mvhline()... yes checking for mvvline()... yes checking for mvwchgat()... yes checking for mvwhline()... yes checking for mvwvline()... yes checking for noqiflush()... yes checking for putp()... yes checking for qiflush()... yes checking for scr_dump()... yes checking for scr_init()... yes checking for scr_restore()... yes checking for scr_set()... yes checking for slk_attr_off()... no checking for slk_attr_on()... no checking for slk_attr()... yes checking for slk_attr_set()... yes checking for slk_color()... yes checking for tigetflag()... yes checking for tigetnum()... yes checking for use_env()... yes checking for vidattr()... yes checking for vid_attr()... no checking for wattr_on()... yes checking for wattr_off()... yes checking for wattr_set()... yes checking for wchgat()... yes checking for wcolor_set()... yes checking for getattrs()... yes checking which debugging functions to wrap... checking for _tracef()... no checking for _tracedump()... no checking for _nc_tracebits()... no checking for _traceattr()... no checking for _traceattr2()... no checking for _tracechar()... no checking for _tracechtype()... no checking for _tracechtype2()... no checking for _tracemouse()... no checking for other functions that appeared after ncurses version 5.0... checking for assume_default_colors()... yes checking for attr_get()... yes checking for the panel library... checking for panel.h... yes checking for panel_hidden() in -lpanel... yes checking for the form library... checking for form.h... yes checking for new_form() in -lform... yes checking for the menu library... checking for menu.h... yes checking for newmenu() in -lmenu... yes creating Makefile minishwoods ~/ncurses-ruby ‹origin/marblenix-Fix-Compile-on-Mac-OS› » make compiling ext/ncurses/form_wrap.c compiling ext/ncurses/panel_wrap.c compiling ext/ncurses/menu_wrap.c compiling ext/ncurses/ncurses_wrap.c linking shared-object ncurses.so
https://github.com/eclubb/ncurses-ruby/pull/10#issuecomment-40142450
Update:
ruby --version
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
git clone https://github.com/eclubb/ncurses-ruby/
cd ncurses-ruby
git checkout -t origin/marblenix-Fix-Compile-on-Mac-OS
ruby ext/ncurses/extconf.rb
make
Outputs the following:
checking for unistd.h... yes
checking for ncurses.h... yes
checking for wmove() in -lncurses... yes
checking for newscr()... yes
checking for TABSIZE()... yes
checking for ESCDELAY()... yes
checking for keybound()... yes
checking for curses_version()... yes
checking for tigetstr()... yes
checking for getwin()... yes
checking for putwin()... yes
checking for ungetmouse()... yes
checking for mousemask()... yes
checking for wenclose()... yes
checking for mouseinterval()... yes
checking for wmouse_trafo()... yes
checking for mcprint()... yes
checking for has_key()... yes
checking for delscreen()... yes
checking for define_key()... yes
checking for keyok()... yes
checking for resizeterm()... yes
checking for use_default_colors()... yes
checking for use_extended_names()... yes
checking for wresize()... yes
checking for attr_on()... yes
checking for attr_off()... yes
checking for attr_set()... yes
checking for chgat()... yes
checking for color_set()... yes
checking for filter()... yes
checking for intrflush()... yes
checking for mvchgat()... yes
checking for mvhline()... yes
checking for mvvline()... yes
checking for mvwchgat()... yes
checking for mvwhline()... yes
checking for mvwvline()... yes
checking for noqiflush()... yes
checking for putp()... yes
checking for qiflush()... yes
checking for scr_dump()... yes
checking for scr_init()... yes
checking for scr_restore()... yes
checking for scr_set()... yes
checking for slk_attr_off()... yes
checking for slk_attr_on()... yes
checking for slk_attr()... yes
checking for slk_attr_set()... yes
checking for slk_color()... yes
checking for tigetflag()... yes
checking for tigetnum()... yes
checking for use_env()... yes
checking for vidattr()... yes
checking for vid_attr()... yes
checking for wattr_on()... yes
checking for wattr_off()... yes
checking for wattr_set()... yes
checking for wchgat()... yes
checking for wcolor_set()... yes
checking for getattrs()... yes
checking which debugging functions to wrap...
checking for _tracef()... no
checking for _tracedump()... no
checking for _nc_tracebits()... no
checking for _traceattr()... no
checking for _traceattr2()... no
checking for _tracechar()... no
checking for _tracechtype()... no
checking for _tracechtype2()... no
checking for _tracemouse()... no
checking for other functions that appeared after ncurses version 5.0...
checking for assume_default_colors()... yes
checking for attr_get()... yes
checking for the panel library...
checking for panel.h... yes
checking for panel_hidden() in -lpanel... yes
checking for the form library...
checking for form.h... yes
checking for new_form() in -lform... yes
checking for the menu library...
checking for menu.h... yes
checking for new_menu() in -lmenu... yes
creating Makefile
compiling ext/ncurses/form_wrap.c
In file included from ext/ncurses/form_wrap.c:31:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/form_wrap.c:621:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
int n = RARRAY_LEN(arg3);
~ ^~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:880:6: note: expanded from macro 'RARRAY_LEN'
(long)((RBASIC(a)->flags >> RARRAY_EMBED_LEN_SHIFT) & \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/form_wrap.c:621:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
int n = RARRAY_LEN(arg3);
~ ^~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:882:25: note: expanded from macro 'RARRAY_LEN'
RARRAY(a)->as.heap.len)
~~~~~~~~~~~~~~~~~~~^~~
ext/ncurses/form_wrap.c:699:40: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_field_fore(field, NUM2ULONG(attr)));
~~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/form_wrap.c:713:40: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_field_back(field, NUM2ULONG(attr)));
~~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
5 warnings generated.
compiling ext/ncurses/menu_wrap.c
In file included from ext/ncurses/menu_wrap.c:27:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/menu_wrap.c:805:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_fore(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/menu_wrap.c:821:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_back(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/menu_wrap.c:837:38: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_menu_grey(menu, NUM2ULONG(attr)));
~~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
4 warnings generated.
compiling ext/ncurses/ncurses_wrap.c
ext/ncurses/ncurses_wrap.c:540:24: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
chstr[i] = NUM2ULONG(rb_ary_entry(array, i));
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/ncurses_wrap.c:605:33: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attr_set(NUM2ULONG(arg1), NUM2INT(arg2), ((void)(arg3),NULL)));
~~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:610:48: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wattr_on(get_window(arg1), NUM2ULONG(arg2), ((void)(arg3),NULL)));
~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:615:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wattr_off(get_window(arg1), NUM2ULONG(arg2), ((void)(arg3),NULL)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1210:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(pechochar(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1297:32: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attroff(NUM2ULONG(arg1)));
~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1300:31: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attron(NUM2ULONG(arg1)));
~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1303:32: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(slk_attrset(NUM2ULONG(arg1)));
~~~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1398:28: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(vidattr(NUM2ULONG(arg1)));
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1405:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(waddch(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1436:45: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wbkgd(get_window(arg1), NUM2ULONG(arg2)));
~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1439:42: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return ((wbkgdset(get_window(arg1), NUM2ULONG(arg2))),Qnil);
~~~~~~~~ ^~~~~~~~~~~~~~~
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^~~~~~~~~~~~~~~~~~~~~~
ext/ncurses/ncurses_wrap.c:1442:47: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:65: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:83: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:101: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:119: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:137: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:155: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), N...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1442:173: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wborder(get_window(arg1), NUM2ULONG(arg2), NUM2ULONG(arg3), NUM2ULONG(arg4), NUM2ULONG(arg5), NUM2ULONG(arg6), NUM2ULONG(arg7), NUM2ULONG(arg8), NUM2U...
~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1446:62: warning: implicit conversion loses integer precision: 'unsigned long' to 'attr_t' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wchgat(get_window(arg1), NUM2INT(arg2), NUM2ULONG(arg3), NUM2INT(arg4), ((void)(arg5),NULL)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1473:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wechochar(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1482:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(whline(get_window(arg1), NUM2ULONG(arg2), NUM2INT(arg3)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1488:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(winsch(get_window(arg1), NUM2ULONG(arg2)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1539:46: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(wvline(get_window(arg1), NUM2ULONG(arg2), NUM2INT(arg3)));
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:1277:35: note: expanded from macro 'INT2NUM'
# define INT2NUM(v) INT2FIX((int)(v))
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:231:45: note: expanded from macro 'INT2FIX'
#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))
^
ext/ncurses/ncurses_wrap.c:1599:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
{ return rb_str_new2(unctrl(NUM2ULONG(ch))); }
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/intern.h:786:27: note: expanded from macro 'rb_str_new_cstr'
(__builtin_constant_p(str)) ? \
^
ext/ncurses/ncurses_wrap.c:1599:29: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
{ return rb_str_new2(unctrl(NUM2ULONG(ch))); }
~~~~~~ ^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/ruby.h:609:22: note: expanded from macro 'NUM2ULONG'
#define NUM2ULONG(x) rb_num2ulong_inline(x)
^
/Users/cm/.rvm/rubies/ruby-2.1.1/include/ruby-2.1.0/ruby/intern.h:788:18: note: expanded from macro 'rb_str_new_cstr'
rb_str_new_cstr(str); \
^
27 warnings generated.
compiling ext/ncurses/panel_wrap.c
In file included from ext/ncurses/panel_wrap.c:25:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
linking shared-object ncurses.bundle
And when I use the Default Xcode version of ruby
ruby --version
ruby 2.0.0p247 (2013-06-27 revision 41674) [universal.x86_64-darwin13]
checking for unistd.h... yes
checking for ncurses.h... yes
checking for wmove() in -lncurses... yes
checking for newscr()... yes
checking for TABSIZE()... yes
checking for ESCDELAY()... yes
checking for keybound()... yes
checking for curses_version()... yes
checking for tigetstr()... yes
checking for getwin()... yes
checking for putwin()... yes
checking for ungetmouse()... yes
checking for mousemask()... yes
checking for wenclose()... yes
checking for mouseinterval()... yes
checking for wmouse_trafo()... yes
checking for mcprint()... yes
checking for has_key()... yes
checking for delscreen()... yes
checking for define_key()... yes
checking for keyok()... yes
checking for resizeterm()... yes
checking for use_default_colors()... yes
checking for use_extended_names()... yes
checking for wresize()... yes
checking for attr_on()... yes
checking for attr_off()... yes
checking for attr_set()... yes
checking for chgat()... yes
checking for color_set()... yes
checking for filter()... yes
checking for intrflush()... yes
checking for mvchgat()... yes
checking for mvhline()... yes
checking for mvvline()... yes
checking for mvwchgat()... yes
checking for mvwhline()... yes
checking for mvwvline()... yes
checking for noqiflush()... yes
checking for putp()... yes
checking for qiflush()... yes
checking for scr_dump()... yes
checking for scr_init()... yes
checking for scr_restore()... yes
checking for scr_set()... yes
checking for slk_attr_off()... yes
checking for slk_attr_on()... yes
checking for slk_attr()... yes
checking for slk_attr_set()... yes
checking for slk_color()... yes
checking for tigetflag()... yes
checking for tigetnum()... yes
checking for use_env()... yes
checking for vidattr()... yes
checking for vid_attr()... yes
checking for wattr_on()... yes
checking for wattr_off()... yes
checking for wattr_set()... yes
checking for wchgat()... yes
checking for wcolor_set()... yes
checking for getattrs()... yes
checking which debugging functions to wrap...
checking for _tracef()... no
checking for _tracedump()... no
checking for _nc_tracebits()... no
checking for _traceattr()... no
checking for _traceattr2()... no
checking for _tracechar()... no
checking for _tracechtype()... no
checking for _tracechtype2()... no
checking for _tracemouse()... no
checking for other functions that appeared after ncurses version 5.0...
checking for assume_default_colors()... yes
checking for attr_get()... yes
checking for the panel library...
checking for panel.h... yes
checking for panel_hidden() in -lpanel... yes
checking for the form library...
checking for form.h... yes
checking for new_form() in -lform... yes
checking for the menu library...
checking for menu.h... yes
checking for new_menu() in -lmenu... yes
creating Makefile
compiling ext/ncurses/form_wrap.c
In file included from ext/ncurses/form_wrap.c:31:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
ext/ncurses/form_wrap.c:675:1: warning: control may reach end of non-void function
[-Wreturn-type]
}
^
2 warnings generated.
compiling ext/ncurses/menu_wrap.c
In file included from ext/ncurses/menu_wrap.c:27:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
compiling ext/ncurses/ncurses_wrap.c
compiling ext/ncurses/panel_wrap.c
In file included from ext/ncurses/panel_wrap.c:25:
ext/ncurses/ncurses_wrap.h:76:9: warning: 'NCURSES_OPAQUE' macro redefined
#define NCURSES_OPAQUE 0
^
/usr/include/curses.h:109:9: note: previous definition is here
#define NCURSES_OPAQUE 1
^
1 warning generated.
linking shared-object ncurses.bundle
Update No. 2: Just built on my main build machine
OS: Arch Linux x86_64 Kernel Release: 3.14.0-4-ARCH
ruby --version
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-linux]
git clone https://github.com/eclubb/ncurses-ruby/
cd ncurses-ruby
git checkout -t origin/marblenix-Fix-Compile-on-Mac-OS
ruby ext/ncurses/extconf.rb
make
checking for unistd.h... yes
checking for ncurses.h... yes
checking for wmove() in -lncurses... yes
checking for newscr()... yes
checking for TABSIZE()... yes
checking for ESCDELAY()... yes
checking for keybound()... yes
checking for curses_version()... yes
checking for tigetstr()... yes
checking for getwin()... yes
checking for putwin()... yes
checking for ungetmouse()... yes
checking for mousemask()... yes
checking for wenclose()... yes
checking for mouseinterval()... yes
checking for wmouse_trafo()... yes
checking for mcprint()... yes
checking for has_key()... yes
checking for delscreen()... yes
checking for define_key()... yes
checking for keyok()... yes
checking for resizeterm()... yes
checking for use_default_colors()... yes
checking for use_extended_names()... yes
checking for wresize()... yes
checking for attr_on()... yes
checking for attr_off()... yes
checking for attr_set()... yes
checking for chgat()... yes
checking for color_set()... yes
checking for filter()... yes
checking for intrflush()... yes
checking for mvchgat()... yes
checking for mvhline()... yes
checking for mvvline()... yes
checking for mvwchgat()... yes
checking for mvwhline()... yes
checking for mvwvline()... yes
checking for noqiflush()... yes
checking for putp()... yes
checking for qiflush()... yes
checking for scr_dump()... yes
checking for scr_init()... yes
checking for scr_restore()... yes
checking for scr_set()... yes
checking for slk_attr_off()... yes
checking for slk_attr_on()... yes
checking for slk_attr()... yes
checking for slk_attr_set()... yes
checking for slk_color()... yes
checking for tigetflag()... yes
checking for tigetnum()... yes
checking for use_env()... yes
checking for vidattr()... yes
checking for vid_attr()... yes
checking for wattr_on()... yes
checking for wattr_off()... yes
checking for wattr_set()... yes
checking for wchgat()... yes
checking for wcolor_set()... yes
checking for getattrs()... yes
checking which debugging functions to wrap...
checking for _tracef()... no
checking for _tracedump()... no
checking for _nc_tracebits()... no
checking for _traceattr()... no
checking for _traceattr2()... no
checking for _tracechar()... no
checking for _tracechtype()... no
checking for _tracechtype2()... no
checking for _tracemouse()... no
checking for other functions that appeared after ncurses version 5.0...
checking for assume_default_colors()... yes
checking for attr_get()... yes
checking for the panel library...
checking for panel.h... yes
checking for panel_hidden() in -lpanel... yes
checking for the form library...
checking for form.h... yes
checking for new_form() in -lform... yes
checking for the menu library...
checking for menu.h... yes
checking for new_menu() in -lmenu... yes
creating Makefile
compiling ext/ncurses/panel_wrap.c
compiling ext/ncurses/ncurses_wrap.c
compiling ext/ncurses/menu_wrap.c
compiling ext/ncurses/form_wrap.c
linking shared-object ncurses.so
Please let me know if you'd like me to test anything else.
Closed by a174b433bc826cef65fbd5fdea500d4b9fe558bd
-multiply_definedsuppress was removed and will no longer be supported. Due to not being able to compile on my linux computer at the moment I have included the change to DLDFLAGS in the logic to detect if the user is compiling on a Mac OS. The following is the error generated without the DLDFLAGS:
The other bugs this fixes is the inability to compile since Mac OS does not have a /usr/pkg/lib directory.
That is all.