Special Operator multiple-value-prog1

Syntax:

multiple-value-prog1 first-form {form}* first-form-results

Arguments and Values:

first-form—a form; evaluated as described below.

form—a form; evaluated as described below.

7.9.2 17first-form-results—the values resulting from the evaluation of first-form.

Description:

7.9.1 12multiple-value-prog1 evaluates first-form and saves all the values produced by that form. It then evaluates each form from left to right, discarding their values.

Examples:

 (setq temp '(1 2 3)) → (1 2 3)
 (multiple-value-prog1
    (values-list temp)
    (setq temp nil)
    (values-list temp)) → 1, 2, 3

Side Effects:

None.

Affected By:

None.

Exceptional Situations:

None.

See Also:

prog1

Notes:

None.