Ciro Santilli OurBigBook.com  Sponsor 中国独裁统治 China Dictatorship 新疆改造中心、六四事件、法轮功、郝海东、709大抓捕、2015巴拿马文件 邓家贵、低端人口、西藏骚乱
vhdl/integer_types_tb.vhdl
entity integer_types_tb is
end integer_types_tb;

architecture behav of integer_types_tb is
    -- All integers have a fixed range.
    type int_0_2_t is range 0 to 2;
    type int_0_3_t is range 0 to 3;
    type int_1_3_t is range 1 to 3;
begin
    process is
        variable int_0_2 : int_0_2_t;
        variable int_0_3 : int_0_3_t;
        variable int_1_3 : int_1_3_t;
    begin
        -- # Integer overflow

            -- Runtime error:
            -- http://stackoverflow.com/questions/13446580/is-integer-overflow-defined-in-vhdl
            --int_0_2 := 3;

            -- Overflow seems to be well defined for signed and unsigned however.

        -- # signed

        -- # unsigned

            -- TODO how are those defined? Looks like oveflow is well 2-complement defined for those.
        wait;
    end process;
end behav;