VERILOG2103: Constant functions should not invoke tasks

Summary

Count: 1

ReliabilitySecurityMaintainabilityCode attributeEffort to fixTags
HIGH--Intentionality | Logical5minsynthesis, vscode, simulation, linter

Description

Noncompliant code example

localparam string foo = func();
function string func;
  automatic string s;
  $swrite(s, "asdf %d", 3); // Noncompliant
  return s;
endfunction

A constant function contains a system task invocation which will be skipped during constant evaluation. This could yield unintuitive results.

Parameters

No parameters.