leftibot 9db4a88b99 Fix #493: Allow shared_ptr arguments through std::function callbacks
When ChaiScript wraps a script function in a C++ std::function whose
parameter is a shared_ptr (e.g. const std::shared_ptr<T> &), the
Build_Function_Caller_Helper boxed each argument with std::ref. That
produced a Boxed_Value whose Any held a reference_wrapper<const
shared_ptr<T>> with bare type info shared_ptr<T> instead of T, so
dispatch to a C++ function expecting shared_ptr<T> failed. Detect
shared_ptr parameter types in box() and store them by value instead,
letting Boxed_Value's shared_ptr-aware overloads record the correct
bare type and back the Any with a real shared_ptr.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 20:33:53 -06:00
..
dispatchkit Fix #493: Allow shared_ptr arguments through std::function callbacks 2026-04-28 20:33:53 -06:00
language Enable warnings as errors (#694) 2026-04-28 20:11:15 -06:00
utility Enable warnings as errors (#694) 2026-04-28 20:11:15 -06:00
chaiscript_basic.hpp change .clang-format and reformat code with clang-format 11 2021-05-24 10:44:15 +02:00
chaiscript_defines.hpp Define _LIBCPP_DISABLE_AVAILABILITY for MacOSX (#695) 2026-04-28 20:12:22 -06:00
chaiscript_stdlib.hpp Enable warnings as errors (#694) 2026-04-28 20:11:15 -06:00
chaiscript_threading.hpp change .clang-format and reformat code with clang-format 11 2021-05-24 10:44:15 +02:00
chaiscript.hpp Fix #571: How to redirect "cout" and "print" to a microsoft Windows 10 window? (#657) 2026-04-11 18:58:09 -06:00