ID:10405 VHDL error at <location>: can't determine type of object at or near identifier "<name>" -- found <number> possible types
CAUSE: In a VHDL Design File (.vhd) at the specified location, you used an object at or near
the specified identifier. Quartus Prime Integrated Synthesis cannot determine the type of the object
because it found the specified number of different possible types for the object, or it found
no possible object type. For example, Quartus Prime Integrated Synthesis cannot determine the type of
object
i
or object o
because two Type Declarations declare two different types named color
:PACKAGE p1 IS
TYPE color IS (red, green, blue);
END p1;
PACKAGE p2 IS
TYPE color IS (black, white);
END p2;
USE work.p1.all;
USE work.p2.all;
ENTITY my_entity IS
PORT
(
i : IN color;
o : OUT color;
);
END my_entity;
ARCHITECTURE a OF my_entity IS
BEGIN
o <= i;
END a;
ACTION: Make sure the design clearly specifies the type of the object. For example, you can
explicitly specify a type for an object using a qualified expression, or you can make
sure an Entity Declaration or Architecture Body uses an unambiguous Type
Declaration. For the previous example, you can change the color
type to two separate
types named color1
and color2
.