<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in externref.cc</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>b34556f9 - C++ API: Make `wasmtime::Store::gc` return a `Result` (#12439)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/externref.cc#b34556f9</link>
        <description>C++ API: Make `wasmtime::Store::gc` return a `Result` (#12439)* C++ API: Make `Store::gc()` return a `Result`* Handle GC errors in C++ example programs* clang format

            List of files:
            /wasmtime-44.0.1/examples/externref.cc</description>
        <pubDate>Mon, 26 Jan 2026 21:45:00 +0000</pubDate>
        <dc:creator>Nick Fitzgerald &lt;fitzgen@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>adff9d9d - Fix externref/anyref ownership in C/C++ API (#11799)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/externref.cc#adff9d9d</link>
        <description>Fix externref/anyref ownership in C/C++ API (#11799)* Fix externref/anyref ownership in C/C++ APIThis commit is a follow-up to #11514 which was discovered throughfailing tests in the wasmtime-py repository when updating to Wasmtime37.0.0. Effectively a combination of bugs in the Rust API meant that itwasn&apos;t possible to use `externref` or `anyref` bindings correctly. TheRust changes in this commit are:* `wasmtime_val_unroot` correctly drops the value now as opposed to  effectively being a noop from before (typo of using `as_externref` vs  `from_externref`).* `wasmtime_{anyref,externref,val}_t` now have a `Drop` implementation  in Rust to correctly drop them if a value in Rust is dropped. This is  required to correctly manage memory in the `wasmtime_func_{call,new}`  implementations, for example.* `wasmtime_{anyref,externref,val}_clone` no longer have an unnecessary  context parameter.* `wasmtime_{anyref,externref,val}_unroot` no longer have an unnecessary  context parameter.Changes in the C/C++ APIs are:* `Result::{ok,err}_ref` APIs were added in addition to the preexisting  rvalue accessors.* Loading/storing typed arguments now has an overload for `const T&amp;` and  `T&amp;&amp;` which behaves differently. Notably transferring ownership for  `T&amp;&amp;` and not for `const T&amp;`. This means that passing parameters when  calling a wasm function uses `const T&amp;`, but passing results from a  host import uses `T&amp;&amp;`.* `TypedFunc::call` now uses `const Params&amp;` instead of `Params` to  explicitly specify it doesn&apos;t modify the parameters and forces using  the `const T&amp;` store method.* `Store::gc` is now a convenience method for `store.context().gc()`* `ExternRef`, `AnyRef`, and `Val` now have ownership semantics and  destructors. This matches the spirit of #11514 for Rust but models it  in C++ as well. This required filling out move/copy  constructors/assignments.* The explicit `ExternRef` now takes `std::any` instead of `T`.* Minor issues related to ownership are fixed in `Val` bindings.Valgrind was used to ensure that there were no leaks for the test suitewhich additionally resulted in a number of `*_delete` calls being addedto tests using the C API (accidental omissions).The original goal of this change was to be a patch release for 37.0.1 toenable updating wasmtime-py to the 37.0.x releases of Wasmtime. In theend though the changes here were broad enough that I no longer feel thatthis is a good idea, so wasmtime-py will be skipping the 37 version ofWasmtime.* Run `clang-format`prtest:full

            List of files:
            /wasmtime-44.0.1/examples/externref.cc</description>
        <pubDate>Tue, 07 Oct 2025 16:36:13 +0000</pubDate>
        <dc:creator>Alex Crichton &lt;alex@alexcrichton.com&gt;</dc:creator>
    </item>
<item>
        <title>13ebd6f5 - c-api: Bring wasmtime-cpp into this repository (#10582)</title>
        <link>http://172.16.0.5:8080/history/wasmtime-44.0.1/examples/externref.cc#13ebd6f5</link>
        <description>c-api: Bring wasmtime-cpp into this repository (#10582)* c-api: Bring wasmtime-cpp into this repository.`wasmtime-cpp/include/wasmtime.hh` -&gt; `/crates/c-api/include/``wasmtime-cpp/tests/*` -&gt; `/crates/c-api/tests/``wasmtime-cpp/examples/*` -&gt; `/examples/`See discussion in #10566 for more context.* Make tests disabled by default prtest:full* Mention C++ API in the c-api README* Enable C++ only for tests* Add *.hh files to doxygenThis requires disabling warnings on undocumented, as `wasm.hh` hasundocumeted structuresAlso fix urls in `wasmtime.hh`* Re-enable `WARN_IF_UNDOCUMENTED`This required excluding `wasm.hh`, `wasmtime::detail` namespace, and somemacros.Also documented two overloads to `Func::call()`

            List of files:
            /wasmtime-44.0.1/examples/externref.cc</description>
        <pubDate>Wed, 16 Apr 2025 18:28:47 +0000</pubDate>
        <dc:creator>MangoPeachGrape &lt;191630121+MangoPeachGrape@users.noreply.github.com&gt;</dc:creator>
    </item>
</channel>
</rss>
