Hi mballance,
First of all, thank you for creating an invaluable systemverilog plugin for eclipse. it really is excellent.
I was wondering if there was any chance of a bit of support to get SVEditor to recognise pre-defined macros?
My issue seem to be the same or similar to this one in the bugs list :
https://sourceforge.net/tracker/index.php?func=detail&aid=2990295&group_id=230781&atid=1081015
I have a ".f" file which holds the compiler (incisive) commands any top level defines (+DEFINE+ blah) and the incdirs (+INCDIR+ blah/classes/)
In a second (systemverilog) file I include all of my library classes :
`ifndef __FILES_INCLUDED
`define __FILES_INCLUDED
`include "./pkg_a.sv"
`include "./pkg_b.sv"
`include "./class_c.sv"
`endif
In some of these packages there are macros defined. But I can't seem to get SVEditor to recognise these macros.
I have added both files to the argument filelist.
in the console I see the following errors :
[SVDBArgFileIndex] net.sf.sveditor.core.db.index.SVDBArgFileIndex: failed to open "`ifndef"
[SVDBArgFileIndex] Failed to find file "`ifndef"
And locally in each file where I try to use the macro I get a "macro undefined" error.
I was wondering if there was anything I could try to get these macros to be recognised?
Also, the "open declaration" does work on these macros.
Thanks for any help you can give,
Pedro
Hi Pedro,
Sorry for the delay in responding to this. I think it got lost in all the holiday activity...
I'm pretty sure we can get these macros to be recognized. The argument file supplied to SVEditor is intended to contain all switches and file paths that would be passed to the SystemVerilog compiler. In your case, I would expect the argument file to contain both the +define+/+incdir+ switches and a path to the library file (the one including the package files).
I have two questions:
- Does Incisive capitalize the +define+/+incdir+ switches? Currently, SVEditor only recognizes these in lower case.
- In your compilation methodology, do you supply the .f file and library file to ncvlog?
For example: ncvlog -f arguments.f library.sv
If this is the case, then it might be useful to extend the information the user specifies to SVEditor.
Best Regards,
Matthew