inline-proc.rs icon indicating copy to clipboard operation
inline-proc.rs copied to clipboard

Cargo is Blocking itself :/

Open jeff-hykin opened this issue 2 years ago • 4 comments

(I love this crate BTW, I would not be learning proc macros if I had to create an entire seperate crate for one)

Screen Shot 2022-06-21 at 7 00 15 PM

Blocks forever, even after cargo clean and all the other stackoverflow suggestions.

It could be related to my build structure

Cargo.toml # workspace 
src-tauri/
      Cargo.toml # the real cargo file
      src/
           main.rs

The outer cargo toml

[workspace]
members = ["src-tauri", ]
exclude = []
resolver = "2"

The inner one

[package]
name = "tauri"
version = "0.1.0"
description = "A Tauri App"
default-run = "tauri"
edition = "2018"
build = "src/build.rs"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[build-dependencies]
tauri-build = { version = "1.0.0-rc.5", features = [] }

[dependencies]
# serde_json = "1.0"
# serde = { version = "1.0", features = ["derive"] }
# tauri = { version = "= 1.0.0-rc.6", features = ["api-all"] }
# tauri-utils = "= 1.0.0-rc.4"
# tauri-codegen = "= 1.0.0-rc.4"
# tauri-macros = "= 1.0.0-rc.4"
# tauri-runtime = "= 0.3.4"
# tauri-runtime-wry = "= 0.3.5"
# deno_core = "0.139.0"
# lazy_static = "1.4.0"
# unsafe_fn = "0.1.2"
# serde_v8 = "0.50.0"
# once_cell = "1.12.0"
# deno_console = "0.57.0"
# deno_crypto = "0.71.0"
# deno_fetch = "0.80.0"
# deno_bench_util = "0.51.0"
# deno = "1.23.0"
# deno_broadcast_channel = "0.51.0"
# deno_ffi = "0.44.0"
# deno_http = "0.51.0"
# deno_net = "0.49.0"
# deno_tls = "0.44.0"
# deno_url = "0.57.0"
# deno_web = "0.88.0"
# deno_webgpu = "0.58.0"
# deno_webidl = "0.57.0"
# deno_websocket = "0.62.0"
# deno_webstorage = "0.52.0"
# deno_ops = "0.17.0"
# deno_runtime = "0.65.0"
inline-proc = { version = "0.1.1", features = ["ron"] } 

[features]
default = [ "custom-protocol" ]
custom-protocol = [ "tauri/custom-protocol" ]

jeff-hykin avatar Jun 22 '22 00:06 jeff-hykin

Hmm — I can’t seem to reproduce, even with that exact setup. Does running cargo check --manifest-path /tmp/inline-proc-crates/tauri-0.1-example/Cargo.toml hang?

SabrinaJewson avatar Jun 22 '22 16:06 SabrinaJewson

Oh interesting. And that check command hangs while cargo build is running, but if I kill the build it executes fine. I also made a shim, intercept the check command and tried a few things, like changing the cwd up or down a directory, or just doing exit(0) to fake the check passing.

Unless cargo/rust version matters, I can work on debugging it as it sounds like it might be unique to my system. What cargo version worked for you?

jeff-hykin avatar Jun 22 '22 17:06 jeff-hykin

I tried with both the latest stable and latest nightly: cargo 1.61.0 (a028ae4 2022-04-29) and cargo 1.63.0-nightly (8d42b0e87 2022-06-17).

SabrinaJewson avatar Jun 22 '22 17:06 SabrinaJewson

Good news; I confirmed the first error is limited to a nixpkgs environment and not anything to do with the cargo.toml setup (meaning I'll eventually be able to track down the difference/cause).

However, I hit a regular issue outside of nixpkgs that is blocking me from doing that.

I setup a hello world project, and using the README.md example fails with procedural macro API is used outside of a procedural macro. I looked into the error, tried some variations, but wasn't able to find a way forward. Here's the details for reproducing:


main.rs

use inline_proc::inline_proc;

#[inline_proc]
mod example {
    metadata::ron!(
        edition: "2021",
        clippy: true,
        dependencies: {
            "quote": "1",
        },
        exports: (
            bang_macros: {
                "def_func": "define_function",
            },
        ),
    );

    pub fn define_function(_: proc_macro::TokenStream) -> proc_macro::TokenStream {
        quote::quote!(
            fn main() {
                println!("Hello from a proc macro!");
            }
        ).into()
    }
}

def_func!();

cargo.toml

[package]
name = "fornix"
version = "0.1.0"
authors = [""]
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[lib]
path = "main/library.rs"

[[bin]]
name = "main"
path = "main/main.rs"

[dependencies]
inline-proc = { version = "0.1.1", features = ["ron"] }
➜ cargo run
   Compiling fornix v0.1.0 (/Users/jeffhykin/repos/fornix)
    Checking inline-proc-macro v0.0.0 (/var/folders/8s/m2d8vp4532z38nnc8sxhpy8m0000gn/T/inline-proc-crates/fornix-0.1-example)
    Finished dev [unoptimized + debuginfo] target(s) in 2.16s
thread '<unnamed>' panicked at 'procedural macro API is used outside of a procedural macro', library/proc_macro/src/bridge/client.rs:332:17
stack backtrace:
   0:        0x1149bf034 - std::backtrace_rs::backtrace::libunwind::trace::hfe3e012778808b1e
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   1:        0x1149bf034 - std::backtrace_rs::backtrace::trace_unsynchronized::he291b891ca08dc0b
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:        0x1149bf034 - std::sys_common::backtrace::_print_fmt::h5b7bf1772918b86d
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/sys_common/backtrace.rs:66:5
   3:        0x1149bf034 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h92ef75eedc9c8b0e
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/sys_common/backtrace.rs:45:22
   4:        0x114a1752b - core::fmt::write::h946dba3b76f817c9
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/fmt/mod.rs:1198:17
   5:        0x1149b13ac - std::io::Write::write_fmt::h88fabe1e5b1e37a9
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/io/mod.rs:1672:15
   6:        0x1149c22b7 - std::sys_common::backtrace::_print::h17d1a9faa8da636d
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/sys_common/backtrace.rs:48:5
   7:        0x1149c22b7 - std::sys_common::backtrace::print::h368be27cf25ec140
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/sys_common/backtrace.rs:35:9
   8:        0x1149c22b7 - std::panicking::default_hook::{{closure}}::h08ea2a57762dc370
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:295:22
   9:        0x1149c1fc0 - std::panicking::default_hook::h39d8408e280de71d
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:314:9
  10:        0x1149c29a1 - std::panicking::rust_panic_with_hook::h7cf02cf11b730bb4
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:698:17
  11:        0x1149c28aa - std::panicking::begin_panic_handler::{{closure}}::h13781907b4d276d3
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:586:13
  12:        0x1149bf4e7 - std::sys_common::backtrace::__rust_end_short_backtrace::he8861d0662b6f44c
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/sys_common/backtrace.rs:138:18
  13:        0x1149c25bd - rust_begin_unwind
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:584:5
  14:        0x114a13d63 - core::panicking::panic_fmt::ha1ec5f1b1f8652c3
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/panicking.rs:142:14
  15:        0x1149550df - proc_macro::bridge::client::Bridge::with::{{closure}}::h43e0766047cba511
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:332:17
  16:        0x1149550df - proc_macro::bridge::client::BridgeState::with::{{closure}}::{{closure}}::hebf0758b37bb7869
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:322:17
  17:        0x1149550df - proc_macro::bridge::scoped_cell::ScopedCell<T>::replace::h6f8460351fafd0b7
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/scoped_cell.rs:74:9
  18:        0x1149550df - proc_macro::bridge::client::BridgeState::with::{{closure}}::h9c24b29fb0219a3e
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:320:13
  19:        0x1149550df - std::thread::local::LocalKey<T>::try_with::h871a04e0740abe5b
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/thread/local.rs:445:16
  20:        0x1149550df - std::thread::local::LocalKey<T>::with::hdcc530f04afd7016
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/thread/local.rs:421:9
  21:        0x1149550df - proc_macro::bridge::client::BridgeState::with::hadfcb94c0bfc5109
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:319:9
  22:        0x1149550df - proc_macro::bridge::client::Bridge::with::h32561f7304f907f1
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:330:9
  23:        0x1149550df - proc_macro::bridge::client::TokenStream::from_str::h5656e14f3384c79f
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:251:17
  24:        0x1149550df - <proc_macro::TokenStream as core::str::traits::FromStr>::from_str::h20816fdacc9d66e1
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/lib.rs:170:29
  25:        0x11492c8a5 - core::str::<impl str>::parse::h07d836f87c95736c
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/str/mod.rs:2337:9
  26:        0x11492ef5a - proc_macro2::imp::<impl core::convert::From<proc_macro2::imp::TokenStream> for proc_macro::TokenStream>::from::h6a933592af486fa3
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.40/src/wrapper.rs:141:45
  27:        0x114946662 - <T as core::convert::Into<U>>::into::h2cdaedec18035e2b
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/convert/mod.rs:550:9
  28:        0x11492eff2 - proc_macro2::<impl core::convert::From<proc_macro2::TokenStream> for proc_macro::TokenStream>::from::h83344db67f7acc16
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.40/src/lib.rs:232:9
  29:        0x114915372 - <T as core::convert::Into<U>>::into::h5c0baa7bf689e8df
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/convert/mod.rs:550:9
  30:        0x1149152f6 - inline_proc_macro::define_function::had4ad5ce3f9c9731
                               at /private/var/folders/8s/m2d8vp4532z38nnc8sxhpy8m0000gn/T/inline-proc-crates/fornix-0.1-example/lib.rs:1:88
  31:        0x114915340 - __exported_macro_bang_def_func
                               at /private/var/folders/8s/m2d8vp4532z38nnc8sxhpy8m0000gn/T/inline-proc-crates/fornix-0.1-example/lib.rs:1:328
  32:        0x113787e21 - inline_proc::invoke::invoke_inline_macro::h9ee026b8fdedad81
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/inline-proc-0.1.1/src/invoke.rs:21:13
  33:        0x1137b72c0 - inline_proc::invoke_inline_macro::{{closure}}::hbcad9bc17d83d047
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/inline-proc-0.1.1/src/lib.rs:356:5
  34:        0x1137fa0c0 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8d18a4e6a9d7f42b
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/panic/unwind_safe.rs:271:9
  35:        0x1137ae897 - std::panicking::try::do_call::hcc1f61c14bd65073
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:492:40
  36:        0x1137b7a8d - ___rust_try
  37:        0x1137adfba - std::panicking::try::h0324c273e74122b3
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:456:19
  38:        0x1137bdc47 - std::panic::catch_unwind::h0ac3c3f6ac6a4167
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panic.rs:137:14
  39:        0x11380f091 - proc_macro_error::entry_point::h963cca6c435939aa
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro-error-1.0.4/src/lib.rs:432:18
  40:        0x1137b729e - inline_proc::invoke_inline_macro::h1db9f772fc9ad067
                               at /Users/jeffhykin/.cargo/registry/src/github.com-1ecc6299db9ec823/inline-proc-0.1.1/src/lib.rs:352:1
  41:        0x1137aecf7 - core::ops::function::Fn::call::h6723e0904981573a
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/ops/function.rs:77:5
  42:        0x1137ba0c6 - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}::h4f89942cf1b4ccb6
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:449:44
  43:        0x1137b9570 - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}::h140987741ac6ca5e
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:417:30
  44:        0x11378c71c - proc_macro::bridge::scoped_cell::ScopedCell<T>::set::{{closure}}::haa60b291211145ba
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/scoped_cell.rs:79:33
  45:        0x11378d03d - proc_macro::bridge::scoped_cell::ScopedCell<T>::replace::h889287fd8a0eb2d2
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/scoped_cell.rs:74:9
  46:        0x11378c581 - proc_macro::bridge::scoped_cell::ScopedCell<T>::set::h1dcaa9a369c89094
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/scoped_cell.rs:79:9
  47:        0x1137b94e6 - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::hc9799198dc8149fa
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:416:13
  48:        0x1137fb37f - std::thread::local::LocalKey<T>::try_with::hac31b19ff7835e05
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/thread/local.rs:445:16
  49:        0x1137fa57e - std::thread::local::LocalKey<T>::with::h95eaab9fa6b57274
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/thread/local.rs:421:9
  50:        0x1137b8762 - proc_macro::bridge::client::run_client::{{closure}}::h1045e6bd6f3d9512
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:415:9
  51:        0x1137fa072 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h035ba655b7fdfde2
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/core/src/panic/unwind_safe.rs:271:9
  52:        0x1137ae724 - std::panicking::try::do_call::h206f24aa1d5a7d7e
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:492:40
  53:        0x1137b7a8d - ___rust_try
  54:        0x1137ae2d9 - std::panicking::try::h924dee385ca6a98c
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panicking.rs:456:19
  55:        0x1137bdcf2 - std::panic::catch_unwind::hab18a26c8d36ac63
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/std/src/panic.rs:137:14
  56:        0x1137b8044 - proc_macro::bridge::client::run_client::h1e32a39f9c6819e1
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:405:5
  57:        0x1137ba08a - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::h7bbb7d07db7d7bec
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/client.rs:449:17
  58:        0x1137b7e28 - proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper::h58f798acb3332bb2
                               at /rustc/f2d93935ffba3ab9d7ccb5300771a2d29b4c8bf3/library/proc_macro/src/bridge/selfless_reify.rs:64:17
  59:        0x108b75481 - proc_macro[19fd62b9f9196a19]::bridge::server::run_server::<rustc_expand[a8dd2ecf219972d8]::proc_macro_server::Rustc, proc_macro[19fd62b9f9196a19]::bridge::Marked<rustc_ast[f96c8890c1e8e469]::tokenstream::TokenStream, proc_macro[19fd62b9f9196a19]::bridge::client::TokenStream>, core[d90353dba101d350]::option::Option<proc_macro[19fd62b9f9196a19]::bridge::Marked<rustc_ast[f96c8890c1e8e469]::tokenstream::TokenStream, proc_macro[19fd62b9f9196a19]::bridge::client::TokenStream>>, proc_macro[19fd62b9f9196a19]::bridge::server::SameThread>
  60:        0x108b5d7a2 - <proc_macro[19fd62b9f9196a19]::bridge::client::Client<proc_macro[19fd62b9f9196a19]::TokenStream, proc_macro[19fd62b9f9196a19]::TokenStream>>::run::<rustc_expand[a8dd2ecf219972d8]::proc_macro_server::Rustc, proc_macro[19fd62b9f9196a19]::bridge::server::SameThread>
  61:        0x108b722c5 - <rustc_expand[a8dd2ecf219972d8]::proc_macro::BangProcMacro as rustc_expand[a8dd2ecf219972d8]::base::BangProcMacro>::expand
  62:        0x108beca14 - <rustc_expand[a8dd2ecf219972d8]::expand::MacroExpander>::fully_expand_fragment
  63:        0x108beb096 - <rustc_expand[a8dd2ecf219972d8]::expand::MacroExpander>::expand_crate
  64:        0x104e4a0d3 - <rustc_session[4c3bddfc6e7a7597]::session::Session>::time::<core[d90353dba101d350]::result::Result<rustc_ast[f96c8890c1e8e469]::ast::Crate, rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_interface[fd7d0a79b5c0ac27]::passes::configure_and_expand::{closure#1}>
  65:        0x104e18158 - rustc_interface[fd7d0a79b5c0ac27]::passes::configure_and_expand
  66:        0x104e3afd3 - <rustc_interface[fd7d0a79b5c0ac27]::queries::Queries>::expansion
  67:        0x104d123e1 - <rustc_interface[fd7d0a79b5c0ac27]::interface::Compiler>::enter::<rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}::{closure#2}, core[d90353dba101d350]::result::Result<core[d90353dba101d350]::option::Option<rustc_interface[fd7d0a79b5c0ac27]::queries::Linker>, rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>
  68:        0x104d08978 - rustc_span[79882abe47421af6]::with_source_map::<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_interface[fd7d0a79b5c0ac27]::interface::create_compiler_and_run<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}>::{closure#1}>
  69:        0x104d2f1b0 - rustc_interface[fd7d0a79b5c0ac27]::interface::create_compiler_and_run::<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}>
  70:        0x104d05405 - <scoped_tls[cc05c84221e8743e]::ScopedKey<rustc_span[79882abe47421af6]::SessionGlobals>>::set::<rustc_interface[fd7d0a79b5c0ac27]::interface::run_compiler<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}>::{closure#0}, core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>
  71:        0x104d0f139 - std[dd719e7de5d01d6d]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[fd7d0a79b5c0ac27]::util::run_in_thread_pool_with_globals<rustc_interface[fd7d0a79b5c0ac27]::interface::run_compiler<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}>::{closure#0}, core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>::{closure#0}, core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>
  72:        0x104d44b11 - <<std[dd719e7de5d01d6d]::thread::Builder>::spawn_unchecked_<rustc_interface[fd7d0a79b5c0ac27]::util::run_in_thread_pool_with_globals<rustc_interface[fd7d0a79b5c0ac27]::interface::run_compiler<core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>, rustc_driver[d22de3469ea294b0]::run_compiler::{closure#1}>::{closure#0}, core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>::{closure#0}, core[d90353dba101d350]::result::Result<(), rustc_errors[ac4db29aae6f44aa]::ErrorGuaranteed>>::{closure#1} as core[d90353dba101d350]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  73:        0x1022499b7 - std::sys::unix::thread::Thread::new::thread_start::h82f1ad8d199b7174
  74:     0x7fff6a696661 - __pthread_body
  75:     0x7fff6a69650d - __pthread_start
error: proc macro panicked
  --> main/main.rs:3:1
   |
3  | #[inline_proc]
   | ^^^^^^^^^^^^^^
...
27 | def_func!();
   | ----------- in this macro invocation
   |
   = help: message: procedural macro API is used outside of a procedural macro
   = note: this error originates in the macro `def_func` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0601]: `main` function not found in crate `main`
  --> main/main.rs:27:13
   |
27 | def_func!();
   |             ^ consider adding a `main` function to `main/main.rs`

For more information about this error, try `rustc --explain E0601`.
error: could not compile `fornix` due to 2 previous errors

fornix on  rust [$!] is 📦 v0.1.0 via 🦀 v1.64.0 took 7s 

Online answers mention "crossing dynamic library boundaries" which I don't think is something this hello world would be doing on its own.

jeff-hykin avatar Jul 03 '22 22:07 jeff-hykin