Some packages are widely spread but were never standardized by IEEE. Different vendors have shipped different versions, with incompatible implementations. These packages should not be used and are flagged as Deprecated IEEE packages.
use ieee.std_logic_arith.all
use ieee.std_logic_signed.all
use ieee.std_logic_unsigned.allInstead, use the standard ieee.numeric_std package.
use ieee.numeric_std.allThe package ieee.std_logic_misc has the same problem of not being standardized by IEEE. Contrary to the packages above, there is no consensus on how to replace this package. Sigasi flags this package as Non-standard package.
use ieee.std_logic_misc.allRead more on IEEE packages in Deprecated IEEE Libraries.
Rule configuration
These rules can be disabled for your project, or their severity and parameters can be modified in the project linting settings. Alternatively, they can be manually configured using one of the following templates, depending on the type of project you use.
For Modular Projects, add these entries to your project's
.sigasi/settings.jsonsettings file. To scope the settings to a specific folder or file instead of the whole project, place them inside an@overrideblock; to scope them to a specific target, place them inside a@targetsblock.JSONC{ // For deprecated IEEE packages "vhdl.rules.8.severity": "{ERROR|WARNING|INFO|IGNORE}", // For Non-standard packages "vhdl.rules.37.severity": "{ERROR|WARNING|INFO|IGNORE}" }For Classic Projects, add the VHDL lines to
.settings/com.sigasi.hdt.vhdl.linting.prefsand the Verilog/SystemVerilog lines to.settings/com.sigasi.hdt.verilog.linting.prefs:PREFS# For deprecated IEEE packages 8/severity/${path}={error|warning|info|ignore} # For Non-standard packages 37/severity/${path}={error|warning|info|ignore}