From caa88a9b36d9e1dfae40ecb31aee05bc2891fa17 Mon Sep 17 00:00:00 2001 From: _ov4 Date: Tue, 27 Oct 2026 14:07:24 +0000 Subject: docs(preprocessor): document switches and library regions Add manuals and aliases for all five PP directives, replace the retired #LIB page, and update compiler and shared-editor architecture notes. Co-Authored-By: Claude Opus 5.5 --- doc/language/keyword/cpsc-keyword-lib.7.md | 31 ------------------------------ 1 file changed, 31 deletions(-) delete mode 100644 doc/language/keyword/cpsc-keyword-lib.7.md (limited to 'doc/language/keyword/cpsc-keyword-lib.7.md') diff --git a/doc/language/keyword/cpsc-keyword-lib.7.md b/doc/language/keyword/cpsc-keyword-lib.7.md deleted file mode 100644 index 46af0a4..0000000 --- a/doc/language/keyword/cpsc-keyword-lib.7.md +++ /dev/null @@ -1,31 +0,0 @@ -% CPSC-KEYWORD-LIB(7) - -# NAME - -cpsc-keyword-lib - mark a library compilation unit - -# SYNOPSIS - -```text -#LIB -``` - -# DESCRIPTION - -A line-leading `#` (optionally preceded by whitespace) begins a compiler directive. Only `#LIB` is supported. It marks the entire source file as library code. Compile-time diagnostics retain library locations; runtime checks use the line of the first call from user code into library code, including methods, operators, automatic constructors/destructors and EXTERN calls. Library-to-library calls preserve that line. Directives are not comments. - -C++ library objects may read `extern "C" int __cps_user_line`, print `[Fatal] line N: reason` to stderr and throw an anonymous integer exception for pseudocode TRY/CATCH. The global is shared by the program and is not thread-local. - -# EXAMPLE - -```text -#LIB -PROCEDURE Check() - DECLARE A : ARRAY[1:1] OF INTEGER - OUTPUT A[2] -ENDPROCEDURE -``` - -# SEE ALSO - -[cpsc-keyword-include(7)](cpsc-keyword-include.7.md), [cpsc-keyword-try(7)](cpsc-keyword-try.7.md). -- cgit v1.3.1-4-g156e