Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
loomc_link_options_t Struct Reference

Link invocation options. More...

#include <link.h>

Data Fields

loomc_structure_type_t type
 Structure type. Must be LOOMC_STRUCTURE_TYPE_LINK_OPTIONS when nonzero.
loomc_host_size_t structure_size
 Size of this structure in bytes.
const void * next
 Extension chain for future link invocation options.
loomc_link_index_tlink_index
 Frozen provider index to link.
loomc_string_view_t module_name
 Output module name for this invocation. Empty uses the linker's default.
const loomc_string_view_troot_symbols
 Root symbol names for selective linking.
loomc_host_size_t root_symbol_count
 Number of entries in root_symbols.
loomc_link_flags_t flags
 Link operation flags.
loomc_config_options_t config
 Per-invocation config bindings materialized into the linked output module.

Detailed Description

Link invocation options.

A link invocation consumes a frozen index and returns either a retained module or a failed result with diagnostics. Supplying roots or LOOMC_LINK_FLAG_INCLUDE_EXPORTED_ROOTS selects a dependency closure. Supplying neither performs archive-style linking and materializes all linkable symbols in stable index order. Linking preserves every target carried by the selected symbols. Config options materialize on the linked output for this invocation; frozen indexes and reusable input/library modules are never mutated by link-time config.

Field Documentation

◆ root_symbols

const loomc_string_view_t* loomc_link_options_t::root_symbols

Root symbol names for selective linking.

Function-like roots are retained as module-boundary entries in the linked output.


The documentation for this struct was generated from the following file: