Skip to content

Tactics in terms in notations break binders / open term #7903

@JasonGross

Description

@JasonGross

Version

8.8.0

Description of the problem

Notation foo x f := (fun x : nat => f).
Notation bar x f := (let z := ltac:(exact 1) in (fun x : nat => f)).
Check foo x (x + x). (* success *)
Check bar x (x + x). (* Error: The reference x was not found in the current environment. *)

See also #5696, #3304, #3468

cc @herbelin , @ppedrot , @andres-erbsen

Metadata

Metadata

Assignees

No one assigned

    Labels

    part: elaborationThe elaboration engine, also known as the pretyper.part: ltacIssues and PRs related to the Ltac tactic language.part: notationsThe notation system.
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions