Semantic Checks

ID

Message

Packages & Types

DUPLICATE_NAME

Name ‘#’ in package ‘#’ was previously defined at line # in #

EXTEND_BEFORE_DEFINITION

Cannot extend type ‘#::#’ before declaration at line # in #

MULTIPLE_PACKAGES

Type name ‘#’ exists in multiple packages (‘#’, ‘#’, and possibly others)

NOT_A_STRUCT

‘#’ is not a struct

NOT_AN_ENUM_TYPE

‘#’ is not an enum type

PREDEFINED_NAME

Type name ‘#’ is a reserved type name. Use a different name

REQUESTED_TYPE

‘#::#’ it is not a (struct/scalar/method) type

TYPE_ACCESS

Cannot access type ‘#’ of package ‘#’

UNDEFINED_PACKAGE

No package called ‘#’

UNDEFINED_TYPE

No type called ‘#’

Template Types

MISSING_PARAMETER

Template ‘#::#’ given # parameters instead of #

UNDEFINED_TEMPLATE

No template called ‘#::#’

When Sub-Types Qualifiers

AMBIGUOUS_QUALIFIER

‘#’ when qualifier for struct ‘#’ is ambiguous, use full qualifier (e.g. ‘#’ or ‘#’)

CONFLICTING_QUALIFIER

‘#’ and ‘#’ when qualifiers for ‘#’ are conflicting and may not be used together

NOT_A_SUBTYPE

‘#’ is not a subtype of ‘#’

REDUNDANT_QUALIFIER

‘#’ when qualifier for ‘#’ is redundant

RESERVED_NAME

‘#’ is a reserved name, cannot be used as a when qualifier name

WRONG_FIELD_TYPE

Field ‘#’ cannot be a when qualifier, it is neither an enum nor a boolean

When & Like Inheritance

CIRCULAR_INHERITANCE

‘#::#’ extends itself

LIKE_INHERITANCE

Cannot derive a like-subtype of ‘#’ (it already has when-subtypes)

WHEN_INHERITANCE

Cannot derive a when-subtype of ‘#’ (it already has like-subtypes)

Fields & Variables

DUPLICATE_NAME

Name ‘#’ already used in the current scope at line # in #

IS_INSTANCE

Cannot declare an instance of ‘#’ in ‘#’ which is not a unit

REDEFINED_FIELD

Field ‘#.#’ was previously defined at line # in #

UNDEFINED_IDENTIFIER

Identifier ‘#’ is not defined

UNDEFINED_IDENTIFIER

Identifier ‘#’ is not a member of ‘#’

UNRESOLVED_IDENTIFIER

Cannot resolve identifier ‘#’ (unresolved preceding expression)

UNDEFINED_VARIABLE

No field or local variable called ‘#’

Events

EVENT_ACCESS

Cannot access event ‘#.#’ of package ‘#’

REDEFINED_EVENT

Event ‘#.#’ was previously defined (must use ‘is only’) at line # in #

UNDEFINED_EVENT

Event ‘#.#’ was not defined previously

Methods

EXTEND_FINAL

Cannot extend ‘#.#()’, it was previously defined final at line # in #

METHOD_ACCESS

Cannot access method ‘#.#()’ of package ‘#’

METHOD_RETURN_TYPE

Cannot resolve ‘#’ method return type (unresolved argument expression)

REDEFINED_FINAL

Cannot declare ‘#.#()’ as final, it was previously defined at line # in #

REDEFINED_METHOD

Method ‘#.#()’ was previously defined (must use ‘is also’, ‘is first’ or ‘is only’) at line # in #

UNDEFINED_METHOD

Method ‘#.#()’ was not defined previously (cannot use ‘is also’, ‘is first’ or ‘is only’)

UNDEFINED_METHOD

CVL method ‘#.#()’ was not defined previously

UNDEFINED_METHOD

Method ‘#’ is not defined

UNDEFINED_METHOD

Method ‘#’ is not a member of ‘#’

UNIMPLEMENTED_METHOD

In method port ‘#.#()’ is not implemented

UNRESOLVED_METHOD

Cannot resolve method ‘#’ (unresolved preceding expression)

Method Arguments

ARGUMENT_DEFAULT

Arguments following an argument with default value must also have default values

ARGUMENT_DEFAULT

Argument default value differs from previous declaration at line # in #

ARGUMENT_COUNT

Argument number differs from previous declaration at line # in #

METHOD_CALL_ARGUMENTS

Expecting ‘#’ argument[s] when calling ‘#’, found ‘#’

METHOD_CALL_ARGUMENTS

Expecting minimum ‘#’ argument[s] when calling ‘#’, found ‘#’

METHOD_CALL_ARGUMENTS

Expecting maximum ‘#’ argument[s] when calling ‘#’, found ‘#’

Atributes

UNEXPECTED_ATTRIBUTE_NAME

Unexpected attribute name ‘#’, must be one of ‘deep_copy’, ‘deep_compare’, ‘deep_compare_physical’ or ‘deep_all’

UNEXPECTED_ATTRIBUTE_VALUE

Unexpected attribute value ‘#’, must be one of ‘normal’, ‘reference’ or ‘ignore’

Cover

UNDEFINED_COVER

Cover group ‘#.#’ was not defined previously (cannot use ‘is also’)

UNDEFINED_COVER_ITEM

Cover item # is not defined

Constraint

REDEFINED_CONSTRAINT

Constraint ‘#.#’ was previously defined (must use ‘is only’) at line # in #

UNDEFINED_CONSTRAINT

Constraint ‘#.#’ was not defined previously

Enum

DUPLICATE_ENUM

Enum name ‘#’ was previously defined at line # in #

MISSING_ENUM_NAME

‘#’ is not a value of enum type ‘#’

UNDEFINED_IDENTIFIER

Identifier ‘#’ is not a value of enumerated type ‘#’

Expect

REDEFINED_EXPECT

Expect ‘#.#’ was previously defined at line # in #

UNDEFINED_EXPECT

Expect ‘#.#’ was not defined previously

Bind Arguments

BIND_ARG_COUNT

Wrong number of arguments for ‘bind()/do_bind()’, must be exactly 2

BIND_ARG_PORT_TYPE

Argument # of ‘#()’ must be a port

BIND_ARGS_PORT_KIND

Different kinds of ports cannot be bound to each other

BIND_ARGS_PORT_ELEM

Ports with associated element types that do not agree cannot be bound

UNRESOLVED_BIND_ARG

Argument # of ‘#()’ cannot be resolved

Access

ILLEGAL_ACCESS

Cannot access # # ‘#.#’

Select

SELECT_IN_NON_LIST

Cannot use select, element ‘#’ is not a list

Assignment & Math Operation

UNEXPECTED_TYPE

‘#’ is of type ‘#’, while expecting numeric type

UNEXPECTED_TYPE

‘#’ is of type ‘#’, while expecting type ‘#’

UNEXPECTED_TYPE

‘#’ is of type ‘#’, while expecting some type

UNEXPECTED_TYPE

‘#’ is of type ‘#’, while expecting type ‘#’ or ‘#’

NON STANDARD

NON_STANDARD_MACRO

‘#’

NON_STANDARD_METHOD

‘#::#()’

NON_STANDARD_TYPE

‘#::#’