-
Notifications
You must be signed in to change notification settings - Fork 431
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uploading wasm file appear function non-existent error #364
Comments
Can you please insert your |
yes,I use |
I don't know why it is there but I inspected your
To me it looks like a Rust (or C++) mangled name and probably has something to do with panicking since "panic" is mangled in its name. |
I don't understand the meaning of this expression |
This is rust name mangeling. Something inserted a call to It is an experimental API where a It would be interesting which function calls |
@athei I used |
This imported call to panic is only there when I use I added this to your
And then ran
Which should be exactly what I am not sure what is happening there in I then looked at the broken wasm file produced by
I guess these are implementations of core::ops::AddAssign. Just by which concrete type? |
After some discussion with my coworkers we found out that this problem is triggered when we stop passing |
Oh, I see. Thank you for your reply to this issue. Since this problem is triggered when we stop passing |
☝️ Quickly added an option to disable manifest modifications for troubleshooting. However this (with |
Usage of this command is generally not recommended for use cases other than debugging. |
Yes to be clear I was not suggesting that this was a fix for the actual problem, rather an option to allow troubleshooting using |
Well, I understand what you said, thanks again. |
Removing I bet that the bug also vanishes when you keep |
Does the issue still exist? |
I could still reproduce it when writing the last commit. And I could confirm my hunch that the reason is lto and not the rlib. Basically a link time optimization bug. |
Then it might be connected to the bug that has been worked around by the newest |
@athei can you try again with |
No dice. With both version this bad boy is still there:
It is like with lto it does not find the |
Triage: Can anyone (@jeremymj ) please confirm that this bug still persists with the current ink! 3.0-rc1 and recent |
I can reproduce the error with this repo and cargo-contract 0.7.1: The only known workaround when you encounter this bug is adding this to your
|
I was able to strip down this issue to its cause: rust-lang/rust#78744 |
Marked with |
I just tried to reproduce this bug with our latest versions of ink!, |
I have heard that you work on automated regression tests. Maybe this could be a candidate for it. So we can detect when it reappears on a newer nightly. |
@athei Yes, for contract size regressions: paritytech/ink-waterfall#4. It's a good idea to add a contract which provoked this bug to the waterfall and see if it still deploys fine in the future, I'll add it. |
😱It appears that this is back. What a tragedy. My minimal reproducer does not trigger it anymore. This is why it passed our regression test in rustc I assume. In order to reproduce:
Please note that the error does not appear in |
Updated the reproducer and opened a new bug report: rust-lang/rust#91158 |
Also filed an issue with cargo that could resolve our problems when implemented: rust-lang/cargo#10118 |
I want to use the signature verification method in my contract,and add dependency in
cargo.toml
as fellow:schnorrkel = { version = "0.9.1",features = ["preaudit_deprecated", "u64_backend"], default-features = false}
using
cargo contract build
command can generate wasm file normally and uploading the wasm file to node, got some error message:using
cargo-contract
version is 0.5.0 ;node of substrate version is:
version 2.0.0-alpha.4-0b3020796-x86_64-linux-gnu
more about reproduce code, please go to my repository example
The text was updated successfully, but these errors were encountered: