Coder Social home page Coder Social logo

Comments (9)

martinwhitaker avatar martinwhitaker commented on July 22, 2024 1

Steve's never announced 10.2 as an official release. I did ask about this on the iverilog-devel mailing list a while back, but didn't get a reply. SourceForge is even more behind - it still shows 10.0 as the latest.

from iverilog.

caryr avatar caryr commented on July 22, 2024

If this was added it would only be as a specific warning type (.e.g. -Wfloating-nets) since you can have wires that look like they are dangling, but are actually driven by the VPI or possibly a force statement. It seems like this type of check is more appropriate in a linting tool not a simulation tool.

Would you want the same check for a register that is never assigned a value?

To properly do any of this would require a fairly complicated analysis of the full Verilog code and the VPI cannot be checked. To me this is probably more work than it is worth since we still have functionality specified in the standard to implement. This should really be added to the SourceForge feature request tracker since it is not a bug.

from iverilog.

dword1511 avatar dword1511 commented on July 22, 2024

Sounds reasonable. Anyway, what I am thinking about is that this could help avoid mistakes and oversights to some extend. It is also OK to have a standalone tool to check this kind of error, but I have no knowledge about such tools.

from iverilog.

gdraps avatar gdraps commented on July 22, 2024

For linting, check out --lint-only on verilator [1], which provides the following feedback on bug2.v, and is configurable.

$ verilator --lint-only -Wall bug2.v 
%Warning-UNUSED: bug2.v:2: Signal is not used: a
%Warning-UNUSED: Use "/* verilator lint_off UNUSED */" and lint_on around source to disable this message.
%Warning-UNUSED: bug2.v:2: Signal is not used: b
%Warning-UNDRIVEN: bug2.v:3: Signal is not driven: e
%Error: Exiting due to 3 warning(s)
%Error: Command Failed /usr/bin/verilator_bin --lint-only -Wall bug2.v

[1] http://www.veripool.org/wiki/verilator

from iverilog.

steveicarus avatar steveicarus commented on July 22, 2024

I actually have an idea how to tackle this, so I'll take a crack at it.

from iverilog.

steveicarus avatar steveicarus commented on July 22, 2024

I've pushed into git master support for the -Wfloating-nets flag, which does pretty much exactly what is requested here.

from iverilog.

ahogen avatar ahogen commented on July 22, 2024

This support was added in commit 8f095f1. This feature never made it to v10.2 (I haven't looked at older versions)

See: https://github.com/steveicarus/iverilog/blob/v10_2/driver/main.c#L495-L586

Can I ask what happened to this feature? Seems useful and (was) listed on the Wiki, so it appeared to be a feature available in the latest release.

from iverilog.

martinwhitaker avatar martinwhitaker commented on July 22, 2024

The latest release is v10.1. If/when there is a v10.2 release, it will be a maintenance release based on the v10 branch. Normally new features aren't backported to the stable branch, so as the Wiki says, this feature will become available in v11. If you want to use it now, you need to checkout and build from the master branch.

from iverilog.

ahogen avatar ahogen commented on July 22, 2024

Ah okay. That makes more sense. Apologies for my failure to read the Wiki correctly/thoroughly.

Not that it matters, but it sure seems like there is a 10.2 release. I see it both here on Github and in the FTP server. Maybe this is an "unreleased" release?

Thanks again for your clarification on the -Wfloating-nets option. I'll try it out in master.

from iverilog.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.