Why is this an issue?

Function return value should have an explicit storage type.

This rule applies on synthesizable code only.

How to fix it

Code examples

Noncompliant code example

function automatic fly(); // Noncompliant: No return type
endfunction

function automatic signed [2:0] dream(); // Noncompliant: Implicit return type
endfunction

Compliant solution

function automatic logic fly(); // Compliant
endfunction

function automatic logic [2:0] dream(); // Compliant
endfunction

Resources

Articles & blog posts