about summary refs log tree commit diff
path: root/compiler/rustc_macros/src/symbols.rs
diff options
context:
space:
mode:
authorDavid Tolnay <dtolnay@gmail.com>2023-10-25 14:45:31 -0700
committerDavid Tolnay <dtolnay@gmail.com>2023-10-26 02:02:22 -0700
commitc1552dfddd7a98f37e3269002a5624409d8f3481 (patch)
tree6aebbbf6c43236693d6b129562a1b6807cb1a556 /compiler/rustc_macros/src/symbols.rs
parentac4fa3f2456c0f131982c871d2dffcb7b33daf92 (diff)
downloadrust-c1552dfddd7a98f37e3269002a5624409d8f3481.tar.gz
rust-c1552dfddd7a98f37e3269002a5624409d8f3481.zip
Fix symbols::tests::test_symbols
    ---- symbols::tests::test_symbols stdout ----
    thread 'symbols::tests::test_symbols' panicked at library/proc_macro/src/bridge/client.rs:311:17:
    procedural macro API is used outside of a procedural macro
Diffstat (limited to 'compiler/rustc_macros/src/symbols.rs')
-rw-r--r--compiler/rustc_macros/src/symbols.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/rustc_macros/src/symbols.rs b/compiler/rustc_macros/src/symbols.rs
index e63bb06eb3f..4129712a6b2 100644
--- a/compiler/rustc_macros/src/symbols.rs
+++ b/compiler/rustc_macros/src/symbols.rs
@@ -257,6 +257,14 @@ fn symbols_with_errors(input: TokenStream) -> (TokenStream, Vec<syn::Error>) {
             Value::SameAsName | Value::String(_) | Value::Unsupported(_) => continue,
         };
 
+        if !proc_macro::is_available() {
+            errors.error(
+                Span::call_site(),
+                "proc_macro::tracked_env is not available in unit test".to_owned(),
+            );
+            break;
+        }
+
         let value = match proc_macro::tracked_env::var(env_var.value()) {
             Ok(value) => value,
             Err(err) => {