mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-29 00:04:55 +00:00
Estimated hours taken: 5 extras/dynamic_linking/dl.m: New module, containing support for dynamic linking (i.e. a binding to dlopen(), dlsym(), and dlclose()). extras/dynamic_linking/name_mangle.m: New module, containing a representation for Mercury procedure specifiers and a function for mangling them into symbol names. extras/dynamic_linking/dl_test.m: extras/dynamic_linking/dl_test.exp: extras/dynamic_linking/hello.m: A test case (and sample program) for the use of dynamic linking. extras/dynamic_linking/README: A brief README file describing the files in this directory. extras/dynamic_linking/Mmakefile: A simple Mmakefile to build it all and test it. NEWS: Mention the new dynamic linking support. compiler/llds_out.m: Add some comments warning about code duplication between the code here and that in extras/dynamic_linking/name_mangle.m (and also profiler/demangle.m and util/mdemangle.c).
This directory contains the following files: dl.m: A module containing support for dynamic linking (i.e. a binding to the C functions dlopen(), dlsym(), and dlclose()). name_mangle.m: A module containing a representation for Mercury procedure specifiers and a function for mangling them into symbol names suitable for passing to dlsym(). dl_test.m: hello.m: dl_test.exp: A sample program (and test case) for the use of dynamic linking.