.ds lang COBOL
.ds gcobol GCC\ \*[lang]\ Front-end
.Dd \& March 2026
.Dt CBL_CLOSE_FILE 3\& "\&GNU Compatibility Library"
.Os Linux
.Sh NAME
.Nm CBL_CLOSE_FILE
.Nd Close an open file
.Sh LIBRARY
libgcobol_compat_gnu
.
.Sh SYNOPSIS
.Ic call Dq CBL_CLOSE_FILE
using  
.Ar file-handle
.
.Sh DESCRIPTION
Parameters:
.Pp
.Bl -tag -compact -width file-handle
.It Ar file-handle
.Sy "PIC X(4) COMP-5" ,
was opened with
.Ic CBL_CREATE_FILE
or
.Ic CBL_OPEN_FILE .
.El
.
.Sh RETURN STATUS
.Nm
returns
.Sy "PIC X(2) COMP-5" .
The return status is 0 on success, else nonzero.
.Sh SEE ALSO
.Xr CBL_CHECK_FILE_EXIST
.\" CBL_CLOSE_FILE
.Xr CBL_CREATE_FILE
.Xr CBL_DELETE_FILE
.Xr CBL_OPEN_FILE
.Xr CBL_READ_FILE
.Xr CBL_WRITE_FILE
.
.Sh COPYRIGHT
.Bd -unfilled -indent
Copyright (c) 2021-2026 Symas Corporation

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Symas Corporation nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.Ed
