Skip to content

synth: cannot handle IIR_KIND_CONCURRENT_PROCEDURE_CALL_STATEMENT on T80 code #969

@Fatsie

Description

@Fatsie

Description
ghdl --synth fails on T80 VHDL code.

How to reproduce?
I am running on Ubuntu 18.04.3 LTS with freshly compiled ghdl using gnat-8 package. Following steps should reproduce the problem:

eda@eda:/tmp$ git clone https://gitlab.com/Chips4Makers/t80.git
Cloning into 't80'...
remote: Enumerating objects: 25, done.
remote: Counting objects: 100% (25/25), done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 492 (delta 6), reused 0 (delta 0)
Receiving objects: 100% (492/492), 124.50 KiB | 394.00 KiB/s, done.
Resolving deltas: 100% (245/245), done.
eda@eda:/tmp$ cd t80/rtl/vhdl/
eda@eda:/tmp/t80/rtl/vhdl$ export GHDL_OPTS="--std=08 --ieee=synopsys"
eda@eda:/tmp/t80/rtl/vhdl$ ghdl -a $GHDL_OPTS T80_Pack.vhd T80_ALU.vhd T80_Reg.vhd T80_MCode.vhd T80.vhd T80se.vhd Z80.vhd 
T80_MCode.vhd:156:16:warning: declaration of "f" hides port "f" [-Whide]
eda@eda:/tmp/t80/rtl/vhdl$ ghdl -e $GHDL_OPTS Z80
eda@eda:/tmp/t80/rtl/vhdl$ ghdl --synth $GHDL_OPTS Z80
annotate_concurrent_statements_list: cannot handle IIR_KIND_CONCURRENT_PROCEDURE_CALL_STATEMENT (T80_ALU.vhd:143:8)

******************** GHDL Bug occurred ***************************
Please report this bug on https://github.com/ghdl/ghdl/issues
GHDL release: 0.37-dev (v0.36-928-g950f6b8c) [Dunoon edition]
Compiled with GNAT Version: 8.3.0
Target: x86_64-linux-gnu
/tmp/t80/rtl/vhdl/
Command line:
ghdl --synth --std=08 --ieee=synopsys Z80
Exception TYPES.INTERNAL_ERROR raised
Exception information:
raised TYPES.INTERNAL_ERROR : vhdl-errors.adb:32
Call stack traceback locations:
0x560ad244f878 0x560ad2484569 0x560ad2484758 0x560ad2484ff2 0x560ad258ad29 0x560ad258b2ea 0x560ad24edbd7 0x560ad263559d 0x560ad22d5261 0x7f454c10db95 0x560ad22d3bd8 0xfffffffffffffffe
******************************************************************

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugFeaReq: SynthesisRequested feature addition related to synthesis.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions