IGNORE(3cl)

Common Lisp Reference

IGNORE(3cl)

 

NAME

ignore, ignorable – specify for-value references will not or might not occur within scope of declaration (declaration)    

SYNOPSIS

 

( ignore { var | ( function fn ) }* )  

( ignorable { var | ( function fn ) }* )  
 

ARGUMENTS and VALUES

var —a variable name.   

fn—a function name.      

VALID CONTEXT

declaration   

BINDING TYPES AFFECTED

variable, function

DESCRIPTION

The ignore and ignorable declarations refer to for-value references to variable bindings for the vars and to function bindings for the fns.   

An ignore declaration specifies that for-value references to the indicated bindings will not occur within the scope of the declaration. Within the scope of such a declaration, it is desirable for a compiler to issue a warning about the presence of either a for-value reference to any var or fn, or a special declaration for any var.    

An ignorable declaration specifies that for-value references to the indicated bindings might or might not occur within the scope of the declaration. Within the scope of such a declaration, it is not desirable for a compiler to issue a warning about the presence or absence of either a for-value reference to any var or fn, or a special declaration for any var.

When not within the scope of a ignore or ignorable declaration, it is desirable for a compiler to issue a warning about any var for which there is neither a for-value reference nor a special declaration, or about any fn for which there is no for-value reference.

Any warning about a “used” or “unused” binding must be of type style-warning, and may not affect program semantics.

The stream variables established by with-open-file, with-open-stream, with-input-from-string, and with-output-to-string, and all iteration variables are, by definition, always “used”. Using (declare (ignore v)), for such a variable v has unspecified consequences.   

AFFECTED BY

(none)    

EXCEPTIONAL SITUATIONS

(none)     

NOTES

(none)     

EXAMPLES

(none)    

SEE ALSO

declare(3cl)     

AUTHOR and COPYRIGHT

Substantial portions of this page are taken from draft proposed American National Standard for Information Systems—Programming Language—Common Lisp, X3J13/94-101R, Version 15.17R, Fri 12-Aug-1994 6:35pm EDT; no copyright indicated.

Additional clarification and comments by Michael Marking <marking@tatanka.com>, http://www.tatanka.com/software/cl-manpages/; alternatively, https://github.com/wakinyantanka/cl-manpages/. Copyright 2017 Michael Marking as both an original and a derivative work.

Licensed under Creative Commons Attribution-NoDerivatives 4.0 International (CC BY-ND 4.0).

This page last revised Sunday 26 February 2017.