The gemfile requires installation of byebug 5.0.0, and I ran the bundle to get all setup. However, byebug installation failed The error message:
Fetching byebug 5.0.0 Installing byebug 5.0.0 with native extensions Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/byebug-5.0.0/ext/byebug
/Users/haoboliu/.rbenv/versions/2.6.6/bin/ruby -I /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/2.6.0 -r ./siteconf20220921-57642-1lyfukl.rb extconf.rb creating Makefile
current directory: /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/byebug-5.0.0/ext/byebug make "DESTDIR=" clean
current directory: /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/byebug-5.0.0/ext/byebug
make "DESTDIR="
compiling breakpoint.c
breakpoint.c:103:21: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("greater_or_equal"));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:103:21: note: '{' token is here
return ID2SYM(rb_intern("greater_or_equal"));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:103:21: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("greater_or_equal"));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:103:21: note: ')' token is here
return ID2SYM(rb_intern("greater_or_equal"));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:105:21: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("equal"));
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:105:21: note: '{' token is here
return ID2SYM(rb_intern("equal"));
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:105:21: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("equal"));
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:105:21: note: ')' token is here
return ID2SYM(rb_intern("equal"));
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:107:21: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("modulo"));
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:107:21: note: '{' token is here
return ID2SYM(rb_intern("modulo"));
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:107:21: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
return ID2SYM(rb_intern("modulo"));
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:107:21: note: ')' token is here
return ID2SYM(rb_intern("modulo"));
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:413:29: note: expanded from macro 'ID2SYM'
#define ID2SYM(x) RB_ID2SYM(x)
^
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:408:33: note: expanded from macro 'RB_ID2SYM'
#define RB_ID2SYM(x) (rb_id2sym(x))
^
breakpoint.c:133:7: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:133:7: note: '{' token is here
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:133:7: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:133:7: note: ')' token is here
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:133:52: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:133:52: note: '{' token is here
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:133:52: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:133:52: note: ')' token is here
if (rb_intern("greater_or_equal") == id_value || rb_intern("ge") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:135:12: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:135:12: note: '{' token is here
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:135:12: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:135:12: note: ')' token is here
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:135:46: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:135:46: note: '{' token is here
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:135:46: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:135:46: note: ')' token is here
else if (rb_intern("equal") == id_value || rb_intern("eq") == id_value)
^~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:137:12: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:137:12: note: '{' token is here
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:137:12: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:137:12: note: ')' token is here
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:137:47: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:137:47: note: '{' token is here
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
breakpoint.c:137:47: error: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1816:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
}
^
breakpoint.c:137:47: note: ')' token is here
else if (rb_intern("modulo") == id_value || rb_intern("mod") == id_value)
^~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:56: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:516:12: error: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts
[-Werror,-Wcompound-token-split-by-macro]
idEval = rb_intern("eval");
^~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:23: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^
breakpoint.c:516:12: note: '{' token is here
idEval = rb_intern("eval");
^~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1826:24: note: expanded from macro 'rb_intern'
extension (RUBY_CONST_ID_CACHE((ID), (str))) :
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/haoboliu/.rbenv/versions/2.6.6/include/ruby-2.6.0/ruby/ruby.h:1811:5: note: expanded from macro 'RUBY_CONST_ID_CACHE'
{
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [breakpoint.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/byebug-5.0.0 for inspection. Results logged to /Users/haoboliu/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/extensions/x86_64-darwin-21/2.6.0/byebug-5.0.0/gem_make.out
An error occurred while installing byebug (5.0.0), and Bundler cannot continue.
Make sure that gem install byebug -v '5.0.0' --source 'https://rubygems.org/'
succeeds before bundling.