Commit graph

23,031 commits

Author SHA1 Message Date
William S Fulton
4c58bb558f Fix Racket tests using schemerunme directory
For out of source builds
2022-09-02 19:17:38 +01:00
William S Fulton
0b1d3e3e86 Docs on rvalue parameter changes 2022-09-02 08:24:30 +01:00
William S Fulton
7934561874 Test/fixes to handle NULL pointer for unique_ptr/auto_ptr
Also add missing unique_ptr tests for Lua and Racket.
2022-08-31 19:42:55 +01:00
William S Fulton
ca9eebcb8d Octave - SWIG now marshalls a C/C++ NULL pointer into the null matrix, []
SWIG has always marshalled the null matrix into a NULL pointer; this remains
and now we have consistency in representing a NULL pointer.

This is a pre-requisite for a pending commit to fully support std::unique_ptr.
2022-08-31 19:40:13 +01:00
William S Fulton
2cfd77b1c0 Racket - NULL pointer handling
SWIG now converts a C/C++ NULL pointer into a null value by calling
scheme_make_null(), so that scheme's null? is true for a NULL C/C++
pointer value.

Consistency with Guile and needed for a pending commit for handling
NULL and std::unique_ptr.
2022-08-31 19:40:13 +01:00
William S Fulton
3f622ea65e SWIGTYPE && input typemaps now assume object has been moved - Go and OCaml
Not fully implemented and Untested.
Go's implementation needs fixing to fully support typemaps
before this can be done.
OCaml implementation does not have support for releasing ownership
which is required to add error checking preventing double deletes.
2022-08-31 19:40:13 +01:00
William S Fulton
e139a36511 SWIGTYPE && input typemaps now assume object has been moved
Replicated Java implementation.

Fully implemented for:
- C#
- D
- Guile
- Javascript (UTL)
- Lua
- MzScheme
- Octave (UTL)
- Perl (UTL)
- PHP
- Python (UTL)
- Ruby (UTL)
- Tcl (UTL)

PHP std::auto_ptr std::unique_ptr minor tweaks and testcase corrections
2022-08-31 19:40:14 +01:00
William S Fulton
0634883089 SWIGTYPE && input typemaps now assume object has been moved - Java
Implementation tweak - better RAII.
SWIGTYPE && null pointer check.
2022-08-31 19:40:13 +01:00
William S Fulton
c10a84c775 Cosmetic stray semi-colon removal after %typemap using quotes 2022-08-31 19:40:13 +01:00
William S Fulton
ec965840ce Cosmetic stray semi-colon removal after %typemap 2022-08-20 15:29:49 +01:00
William S Fulton
0ba11023ac Rename debug in testcases to trace
To remove D specific keyword rename
2022-08-20 15:09:23 +01:00
William S Fulton
48c644ea6e Add Racket support for std::unique_ptr and std::auto_ptr
Equivalent to Guile implementation.

Slight tweak to proxy ownership was required by adding in
the own member to swig_mz_proxy.
2022-08-18 22:45:03 +01:00
William S Fulton
5365149ae4 Guile testing
- call gc instead of explicitly calling the destructor
- Guile li_std_auto_ptr testcase tweaks intended for use from Racket
2022-08-18 22:45:03 +01:00
William S Fulton
63143e8773 Guile testing - call gc instead of explicitly calling the destructor 2022-08-18 21:42:25 +01:00
William S Fulton
5b16e4fbd3 Guile cpp11_std_unique_ptr testcase tweaks for use from Racket 2022-08-18 21:31:20 +01:00
William S Fulton
c9f5a85e45 Add Racket test for %newobject
Uses common mzscheme test, but corrections for Racket error:

if: bad syntax (must have an "else" expression)
2022-08-17 08:16:47 +01:00
William S Fulton
748bad3db2 Add guile test for %newobject 2022-08-15 19:56:31 +01:00
William S Fulton
23ce0655a6 Add Guile support for std::unique_ptr and std::auto_ptr
Equivalent to Python/Ruby implementations.
2022-08-12 23:50:54 +01:00
William S Fulton
3a0721bfbc Remove inadvertent guile testing of auto_ptr and unique_ptr 2022-08-11 22:12:19 +01:00
William S Fulton
b34092c517 Add -pthread to lua testing
Required to fix linker errors in li_std_auto_ptr and cpp11_std_unique_ptr test cases
2022-08-11 22:08:10 +01:00
William S Fulton
41fddf61ec Add Lua support for std::unique_ptr and std::auto_ptr
Equivalent to Python/Ruby implementations.
2022-08-11 21:38:21 +01:00
William S Fulton
63632f80fb Correct raw pointer handling test for virtual inheritance 2022-08-11 18:44:36 +01:00
William S Fulton
1f2338bf41 Typo fix in Go.html 2022-08-11 07:20:04 +01:00
William S Fulton
6436c9408a GHA: Add ruby-3.1 testing 2022-08-07 08:12:49 +01:00
William S Fulton
fa9c7a7197 Add PHP support for std::unique_ptr and std::auto_ptr
Equivalent to Python/Ruby implementations.
2022-08-06 18:34:26 +01:00
William S Fulton
d4b1152d4b Add raw pointer handling test for virtual inheritance
This is a test added for D in previous commit, now expanded to all target languages.

Tidy up counting object instances.
2022-08-05 22:30:23 +01:00
William S Fulton
910fd1e3cf [D] Fix occasional undefined behaviour with inheritance hierarchies
Particularly when using virtual inheritance as the pointers weren't
correctly upcast from derived class to base class when stored in the
base's proxy class.

Fixes commented out test code in cpp11_std_unique_ptr_runme
and li_std_auto_ptr_runme D tests.
2022-08-05 22:30:23 +01:00
William S Fulton
5a379d317b Add Tcl support for std::unique_ptr and std::auto_ptr
Equivalent to C#/Java implementations.
2022-08-05 22:30:23 +01:00
Olly Betts
6bf2138fa0 [guile] Update status of Guile 1.8.0 support
See #1624
2022-08-05 10:21:20 +12:00
Olly Betts
c496bc9d7b cpp20_spaceship_operator_runme.py: Check ALIEN value 2022-08-05 04:53:15 +12:00
William S Fulton
e3cb10487b Switch node 17 testing to node 18 2022-08-04 09:03:52 +01:00
William S Fulton
c16d25d9d6 Update docs regarding 'modern' c++ standards testing 2022-08-04 09:03:32 +01:00
William S Fulton
15a9ce36f8 ISO C comments fix 2022-08-04 07:51:20 +01:00
William S Fulton
d13763892e GHA: Test newer JavaScriptCore with c++11 2022-08-04 07:14:30 +01:00
William S Fulton
7a3e79cfc6 JSC version display tweaks 2022-08-04 07:14:30 +01:00
William S Fulton
662b88b605 JavaScript Webkit testing and detection changes
Add testing for javascriptcoregtk-4.1.
Simplify configure detection of JSC, relying only only pkg-config.
Add javascriptcoregtk-4.1 tests to GHA.
2022-08-04 07:14:30 +01:00
William S Fulton
a741c7dbcf auto_ptr and unique_ptr test tweaks 2022-08-04 07:14:30 +01:00
William S Fulton
fe17296eb4 Add Javascript support for std::unique_ptr and std::auto_ptr
Equivalent to Ruby/Python implementations.
2022-08-04 07:14:30 +01:00
Olly Betts
7556ed0889 Merge branch 'guile-stop-using-deprecated-aliases' 2022-08-04 10:41:35 +12:00
Olly Betts
fd0a47fee8 [guile] Update supported guile versions in docs
Document that Guile 2.2.x and 3.0.x work.

Document that Guile 1.8.x is believed to still work, but that we're
no longer able to easily test this.
2022-08-04 10:40:10 +12:00
Olly Betts
336de2f745 [guile] Stop using deprecated aliases
The replacements should all work with Guile 1.8.0, which is the
oldest version we still aim to support.

Fixes #1624
2022-08-04 10:39:02 +12:00
Olly Betts
239ffe4b5b [ci] Add testing for guile 2.2 and 3.0 2022-08-04 10:35:33 +12:00
William S Fulton
2ccc9bd060 Add Octave support for std::unique_ptr and std::auto_ptr
Equivalent to Ruby/Python implementations.
2022-08-02 00:00:54 +01:00
William S Fulton
1730e4126e GHA: Start testing python-3.11 2022-08-01 08:30:28 +01:00
William S Fulton
1d56bc6b85 Add initialisers for additional members in PyHeapTypeObject
(builtin mode) for Python-3.11 - _ht_tpname, _spec_cache.
2022-08-01 08:24:52 +01:00
William S Fulton
54e7bb606e Correct c17 testing with C++20 2022-07-31 22:23:39 +01:00
William S Fulton
89f57708e9 Suppress -Wvolatile gcc warnings in Perl headers for C++20
Seen in Perl 5.34 and earlier
2022-07-31 16:45:31 +01:00
William S Fulton
e0ed4cc62d Suppress -Wvolatile gcc warnings in Guile wrappers for C++20 2022-07-31 16:18:08 +01:00
William S Fulton
ac8864bc59 ruby 2022-07-31 16:15:00 +01:00
William S Fulton
d9fd09aa21 Suppress Ruby.h gcc warnings 2022-07-31 14:51:26 +01:00