pascalkuthe / OpenVAF

An innovative Verilog-A compiler
https://openvaf.semimod.de/
GNU General Public License v3.0
113 stars 15 forks source link

thread main panicked #32

Closed dwarning closed 1 year ago

dwarning commented 1 year ago

The attached simple switch.va got panick with v 22.12.0.

dietmar@modsys:~/Projects$ RUST_BACKTRACE=1 openvaf -I .. switch.va thread 'main' panicked at 'the parser seems stuck', openvaf/parser/src/parser.rs:51:9 stack backtrace: 0: rust_begin_unwind at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:584:5 1: core::panicking::panic_fmt at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/panicking.rs:142:14 2: parser::parser::Parser::nth at /io/openvaf/parser/src/parser.rs:51:9 3: parser::parser::Parser::current at /io/openvaf/parser/src/parser.rs:42:9 4: parser::parser::Parser::at_ts at /io/openvaf/parser/src/parser.rs:80:24 5: parser::grammar::stmts::event_stmt at /io/openvaf/parser/src/grammar/stmts.rs:68:16 6: parser::grammar::stmts::stmt at /io/openvaf/parser/src/grammar/stmts.rs:23:18 note: Some details are omitted, run withRUST_BACKTRACE=fullfor a verbose backtrace. Abgebrochen (Speicherabzug geschrieben) switch.va.txt

pascalkuthe commented 1 year ago

I will look into the parser crash, thanks for the report. However this file will not work with OpenVAF regardless. It uses many Verilog-A features that are currently not supported and very hard to support in a simulator independent manner.

Currently events other than @(intial_step) and @(final_step) are not supported because those only work during transient (during AC simulations and HB isimulations these don't make sense).

Same for the transition filter used here. That filter can fundemental not work with AC and HB simulations. Because of the way OSDI is structured OpenVAF can't really support that right now.

If there is enough interest/funding in the future we might look into extending OpenVAF/OSDI to support that but currently there are no plans as we are focused on compact models which should never use these language features anyways.

dwarning commented 1 year ago

Thank you - no problem with the limited Verilog-A support. Want only point to the crash problem.

Am 26.01.23 um 17:53 schrieb Pascal Kuthe:

I will look into the parser crash, thanks for the report. However this file will not work with |OpenVAF| regardless. It uses many Verilog-A features that are currently not supported and very hard to support in a simulator independent manner.

Currently events other than |@(intial_step)| and |@(final_step)| are not supported because those only work during transient (during AC simulations and HB isimulations these don't make sense).

Same for the |transition| filter used here. That filter can fundemental not work with AC and HB simulations. Because of the way OSDI is structured OpenVAF can't really support that right now.

If there is enough interest/funding in the future we might look into extending OpenVAF/OSDI to support that but currently there are no plans as we are focused on compact models which should never use these language features anyways.

— Reply to this email directly, view it on GitHub https://github.com/pascalkuthe/OpenVAF/issues/32#issuecomment-1405303274, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEMWNTCXVKDKVZURYRACCMDWUKTXRANCNFSM6AAAAAAUHTTMGY. You are receiving this because you authored the thread.Message ID: @.***>