PipelineC icon indicating copy to clipboard operation
PipelineC copied to clipboard

Function, type, variable, etc names must not conflict with C and VHDL reserved words

Open JulianKemmerer opened this issue 3 years ago • 2 comments

For C this makes sense and folks know C keywords well...

But here are the VHDL keywords to watch out for

abs
configuration
impure
null
rem
type
access
constant
in
of
report
unaffected
after
disconnect
inertial
on
return
units
alias
downto
inout
open
rol
until
all
else
is
or
ror
use
and
elsif
label
others
select
variable
architecture
end
library
out
severity
wait
array
entity
linkage
package
signal
when
assert
exit
literal
port
shared
while
attribute
file
loop
postponed
sla
with
begin
for
map
procedure
sll
xnor
block
function
mod
process
sra
xor
body
generate
nand
pure
srl

buffer
generic
new
range
subtype

bus
group
next
record
then

case
guarded
nor
register
to

component
if
not
reject
transport

JulianKemmerer avatar Oct 21 '22 23:10 JulianKemmerer

I think a workaround for this could simply be adding some sort of modifier to the names when lowering, like if ever user defined name had "pc_" on the front there would be no conflicts.

ghost avatar Jan 18 '23 15:01 ghost

Yeah some kind of mangling seems required, right on 👍

JulianKemmerer avatar Jan 18 '23 15:01 JulianKemmerer