Implement make_proxy_inplace and inplace_proxiable_target with freestanding #92
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes
concept inplace_proxiable_target
and function templatesmake_proxy_inplace
as non-allocating factory. Resolves Add APIs for in-place construction of a target #86.allocate_proxy
since it makes the semantics ambiguous (will reflect in the documentation later).proxy
be compatible with freestanding by removing dependency tomemcpy
, which requires C runtime. Fixes Compile error when-ffreestanding
is enabled on GCC #87.make_proxy
andallocate_proxy
from freestanding compilation.make_proxy_inplace
and modified the cases forallocate_proxy
due to changes in semantics.ProxyFreestandingTests
for freestanding compilation without linking to any static library, using any exceptions, RTTI, or C/C++ runtime. To run the test code from an operating system, some assembly code for various platforms is embedded to invoke in the main function. The code generation on freestanding x86, x86-64, ARM64, RISC-V and PowerPC are tested manually. The pipeline should be able to build and run the test for x84-64. Resolves Add pipelines for freestanding environment #88.