diff options
author | Vincent Ambo <mail@tazj.in> | 2022-08-24T13·31+0300 |
---|---|---|
committer | tazjin <tazjin@tvl.su> | 2022-09-02T12·59+0000 |
commit | 07fcaf034b17df80de2f37de008562209a76987c (patch) | |
tree | 493c8aa0467c90ae128df0bcf1649e2e6cf58305 | |
parent | b41960c55efd8e9e95ac67681ea21c1b22bbcd99 (diff) |
feat(tvix/eval): emit warnings when globals are being shadowed r/4591
Change-Id: I7dae6978c2a4548382d7fa059b20ccdf35d2cf7f Reviewed-on: https://cl.tvl.fyi/c/depot/+/6257 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
-rw-r--r-- | tvix/eval/src/compiler.rs | 1 | ||||
-rw-r--r-- | tvix/eval/src/warnings.rs | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/tvix/eval/src/compiler.rs b/tvix/eval/src/compiler.rs index cb97b61c989e..a2ab6273c102 100644 --- a/tvix/eval/src/compiler.rs +++ b/tvix/eval/src/compiler.rs @@ -900,6 +900,7 @@ impl Compiler { }; if let Some(global_ident) = key { + self.emit_warning(node.clone(), WarningKind::ShadowedGlobal(global_ident)); self.scope_mut().poison(global_ident, depth); } diff --git a/tvix/eval/src/warnings.rs b/tvix/eval/src/warnings.rs index 20aa9677466e..5bc8ed971aea 100644 --- a/tvix/eval/src/warnings.rs +++ b/tvix/eval/src/warnings.rs @@ -6,6 +6,7 @@ pub enum WarningKind { DeprecatedLiteralURL, UselessInherit, UnusedBinding, + ShadowedGlobal(&'static str), } #[derive(Debug)] |