Xavier Denis
Xavier Denis
``` use rustc_hir::def_id::DefId; use rustc_lint::{LateContext, LateLintPass, LintContext}; use rustc_session::{declare_tool_lint, impl_lint_pass}; use rustc_span::{ExpnData, ExpnId, Span}; use crate::util; declare_tool_lint! { /// Blah Blah pub creusot::PEARLITE, Forbid, "checks for valid usages of the...
Today, we don't forbid the actual macro, but any call to a logical symbol will raise an error. I'm going to close this for now.
Fixed through the addition of opacity and the `#[open(..)]` annotation.
I just had an idea: we can use a lint to check this !
Fixed.
We now provide an error message when logical symbols are used outside of `pearlite!` contexts.
We've settled on only allowing whitelisted macros for now (`proof_assert`).
> The problem being that arbitrary macros could allow writing non-pearlite code in pearlite context. I don't really consider this a problem we need to defend against. They wouldn't be...
Should be supported now that we have a `PartialEq` derive.