Nobuyoshi Nakada
ac152b3cac
Update dependencies
2021-11-21 16:21:18 +09:00
Nobuyoshi Nakada
122ce52e8f
Check if alternative malloc header can work in C++
...
jemalloc (5.2.1 at least) cannot compile in C++ on macOS SDK, due
to conflicts on exception specification.
2021-06-13 15:12:45 +09:00
卜部昌平
80b316212a
ext/-test-/cxxanyargs: suppress SunPro warning
...
I found a way to suppress particular kind of warnings via pragmas.
2020-08-21 11:04:54 +09:00
Nobuyoshi Nakada
e9adc2f420
Match the output without encoding for localized compilers
2020-06-23 15:05:44 +09:00
卜部昌平
defc0ee9d1
ext/-test-/cxxanyargs: add #pragma for icc.
2020-04-10 16:17:30 +09:00
Benoit Daloze
5fa12dafa8
The last argument of rb_rescue2() should always be (VALUE)0
...
* Otherwise it might segfault, since C has no idea of the type of varargs,
and the C code must assume all varargs are VALUE.
2020-03-28 13:03:17 +01:00
卜部昌平
0febd07c69
ext/-test-/cxxanyargs: use try_link instead
...
We would like to skip this extension library when libstdc++ is missing.
To avoid such situation let's use try_link instead of try_compile.
2020-02-25 13:39:46 +09:00
卜部昌平
4e6bae47c8
ext/-test-/cxxanyargs: prevent have_devel check
...
The `cxx.try_compile` command in this file kicks `cxx.have_devel?`
internally, which recursively calls `cxx.try_link` with a different
source code. We don't want that happen (the source code compiled in
this file must be the first one). We need to fake the system.
2020-02-20 11:46:54 +09:00
卜部昌平
7cff2f4585
fix delete unnecessary return
...
Was my mistake to put return here.
2020-02-01 14:02:59 +09:00
卜部昌平
cdd75d4e7f
support C++ std::nullptr_t
...
C++ keyword `nullptr` represents a null pointer (note also that NULL is
an integer in C++ due to its design flaw). Its type is `std::nullptr_t`,
defined in <cstddef> standard header. Why not support it when the
backend implementation can take a null pointer as an argument.
2020-01-31 13:01:52 +09:00
Nobuyoshi Nakada
4942adf68c
Return the makefile content
...
Block for `create_makefile` is expected to return the content of
the makefile.
2020-01-31 12:52:22 +09:00
NARUSE, Yui
ca2888fb3d
Move .IGNORE in extconf.rb
2020-01-31 08:00:56 +09:00
NARUSE, Yui
9aed421d70
Support nmake
2020-01-31 06:47:55 +09:00
NARUSE, Yui
53adb53c9a
Ignore expected errors on compiling C++ source [Bug #16331 ]
...
BSD make can run parallel more aggressively than GNU make. It communicate
with other make process through -J option in MAKEFLAGS environment variable
to notify a build failure happend in an other pararell make process.
https://www.freebsd.org/cgi/man.cgi?make
It usually works well but ext/-test-/cxxanyargs/Makefile has two targets
which are expected to fail (failure.o and failurem1.o).
Additional note:
To test and debug this issue, following command will speed up it.
`make -f exts.mk -j8 clean all`
2020-01-31 03:05:51 +09:00
卜部昌平
83d6487ae5
fix rb_define_global_function to take const VALUE*
...
It was unable for rb_define_global_function to take VALUE(*)(int argc,
const VLAUE *argv, VALUE self) -style function. Test added.
2020-01-28 17:29:57 +09:00
卜部昌平
bbe3420cce
add test for rb_define_global_function
...
was missing.
2020-01-28 17:09:42 +09:00
卜部昌平
16592d6b69
add test for rb_define_method_id
...
was missing.
2020-01-28 17:09:42 +09:00
卜部昌平
3c3eb418f9
improved support for rb_f_notimplement
...
rb_f_notimplement should be accepted for all possible arities.
Test provided for that.
2020-01-28 17:09:42 +09:00
Nobuyoshi Nakada
a93d0a4e62
Check -1 arity for C++
2019-11-22 18:42:49 +09:00
Nobuyoshi Nakada
710bc00379
Moved RB_METHOD_DEFINITION_DECL to intern.h
...
This macro is used here before defined in ruby.h.
2019-10-12 17:47:28 +09:00
Nobuyoshi Nakada
740a98fe10
Fix for explicit cast without RUBY_METHOD_FUNC
2019-09-20 19:12:36 +09:00
Nobuyoshi Nakada
cb1f9fe918
Check various method defitions in C++
2019-09-20 19:12:35 +09:00
Nobuyoshi Nakada
04c53a1d03
Get rid of embedding make command line
...
NMAKE sets MAKE to the full path name, which includes spaces by
the default installation.
2019-09-20 17:05:52 +09:00
Nobuyoshi Nakada
d56a3c0635
Fixed cxxanyargs/depend
...
* Removed excess backslashes
* Fixed the target name to try failure.cpp
2019-09-20 16:58:47 +09:00
Nobuyoshi Nakada
e0c56b45a4
Moved unmatch arity check to depend file
...
To substitute suffixes and VPATH for nmake.
2019-09-19 22:09:43 +09:00
Nobuyoshi Nakada
a3daf8e49a
Ensure that unmatched arity fails in C++
2019-09-19 20:57:58 +09:00
Nobuyoshi Nakada
df3fd50717
Removed mkmf.log dump in Makefile
2019-09-19 12:25:48 +09:00
Nobuyoshi Nakada
2d1e3bd8f1
DEBUG: cxxanyargs
2019-09-19 11:25:09 +09:00
Nobuyoshi Nakada
a98181eb11
DEBUG: cxxanyargs
2019-09-19 10:46:52 +09:00
Nobuyoshi Nakada
842f600a93
Look up the language module
...
Look up language module with `MakeMakefile.[]`, insted of a
accessing constant under that module directly, to get rid of
expose the constant to the toplevel inadvertently.
2019-09-19 00:03:18 +09:00
Nobuyoshi Nakada
15d5de59fb
Removed unused keyword argument [ci skip]
2019-09-19 00:03:18 +09:00
Nobuyoshi Nakada
c3f03da494
[EXPERIMENTAL] MakeMakefile::CXX for C++
2019-09-18 18:47:02 +09:00
卜部昌平
89c5d5a64e
add minimaist C++ check
...
This is a test extension so we basically want test failures rather
than a configure breakage but if there is no C++ compiler, we need
no test at all because there will be no chance for the tested
header file to be used later.
This makes it possible to build the ruby binary without any C++
compiler installed in a build environment.
2019-09-09 21:27:40 +09:00
卜部昌平
042c436cd9
static member variables must explictly be initialized
...
These variables then get their room for storage.
See also https://github.com/ruby/ruby/runs/214042030
2019-09-09 21:27:40 +09:00
卜部昌平
92a8726994
Revert "save committers' weekend from CI failures"
...
This reverts commit 53d21087da
.
2019-09-09 21:27:40 +09:00
卜部昌平
53d21087da
save committers' weekend from CI failures
...
Kill the failing tests.
2019-09-06 18:20:11 +09:00
卜部昌平
1851dc269c
avoid name mangling
...
Otherwise the dynamic linker cannot find this function.
See also https://ci.appveyor.com/project/ruby/ruby/builds/27224231/job/4pg6lxlsnsjotu2l
2019-09-06 16:52:20 +09:00
卜部昌平
2aa4fb57d1
nullptr is a C++11ism.
...
Should use numeric 0 for maximum portability.
See also https://travis-ci.org/ruby/ruby/jobs/581543798
2019-09-06 16:42:45 +09:00
卜部昌平
7516c48b27
fix Visual Studio compilation error
...
See also https://github.com/ruby/ruby/runs/213964487
2019-09-06 16:33:30 +09:00
卜部昌平
04f570e266
add test for cxxanyargs.hpp
2019-09-06 15:50:58 +09:00