From d1f9f11245a29f00bfa8cd86f9b4eb4ab0963a15 Mon Sep 17 00:00:00 2001 From: alaviss Date: Tue, 18 Feb 2020 18:44:54 +0000 Subject: manual: documents changes regarding dynlib (#13425) * manual: documents changes regarding dynlib Closes #13416 * manual: clean up sentence phrasing --- doc/manual.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/manual.rst b/doc/manual.rst index 2f5673684..b31458fc4 100644 --- a/doc/manual.rst +++ b/doc/manual.rst @@ -7224,6 +7224,9 @@ The string literal passed to ``exportc`` can be a format string: In the example the external name of ``p`` is set to ``prefixp``. Only ``$1`` is available and a literal dollar sign must be written as ``$$``. +If the symbol should also be exported to a dynamic library, the ``dynlib`` +pragma should be used in addition to the ``exportc`` pragma. See +`Dynlib pragma for export <#foreign-function-interface-dynlib-pragma-for-export>`_. Extern pragma @@ -7363,10 +7366,7 @@ conjunction with the ``exportc`` pragma: proc exportme(): int {.cdecl, exportc, dynlib.} This is only useful if the program is compiled as a dynamic library via the -``--app:lib`` command line option. This pragma only has an effect for the code -generation on the Windows target, so when this pragma is forgotten and the dynamic -library is only tested on Mac and/or Linux, there won't be an error. On Windows -this pragma adds ``__declspec(dllexport)`` to the function declaration. +``--app:lib`` command line option. -- cgit 1.4.1-2-gfad0