diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-05-13 20:32:12 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-05-13 20:32:12 +0200 |
commit | 6eadb1587d4bddaf13e4f52c6aff3ed99c9f4e37 (patch) | |
tree | b3f2e27861a32ace6d3c3eec02b4bb2a87c86021 /src/synth | |
parent | 1c2f3c01628d1ba6f07588d3157a3fac3be23643 (diff) | |
download | ghdl-6eadb1587d4bddaf13e4f52c6aff3ed99c9f4e37.tar.gz ghdl-6eadb1587d4bddaf13e4f52c6aff3ed99c9f4e37.tar.bz2 ghdl-6eadb1587d4bddaf13e4f52c6aff3ed99c9f4e37.zip |
synth-objtypes: tentatively try to fix warnings. For #1308
Diffstat (limited to 'src/synth')
-rw-r--r-- | src/synth/synth-objtypes.adb | 80 |
1 files changed, 48 insertions, 32 deletions
diff --git a/src/synth/synth-objtypes.adb b/src/synth/synth-objtypes.adb index 69fb76e50..77c88ee8e 100644 --- a/src/synth/synth-objtypes.adb +++ b/src/synth/synth-objtypes.adb @@ -621,60 +621,76 @@ package body Synth.Objtypes is return Read_U8 (Mt.Mem); end Read_U8; - type Ghdl_I32_Ptr is access all Ghdl_I32; - function To_I32_Ptr is - new Ada.Unchecked_Conversion (Address, Ghdl_I32_Ptr); - - procedure Write_I32 (Mem : Memory_Ptr; Val : Ghdl_I32) is + procedure Write_I32 (Mem : Memory_Ptr; Val : Ghdl_I32) + is + V : Ghdl_I32; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - To_I32_Ptr (To_Address (Mem)).all := Val; + V := Val; end Write_I32; - function Read_I32 (Mem : Memory_Ptr) return Ghdl_I32 is + function Read_I32 (Mem : Memory_Ptr) return Ghdl_I32 + is + V : Ghdl_I32; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - return To_I32_Ptr (To_Address (Mem)).all; + return V; end Read_I32; - type Ghdl_U32_Ptr is access all Ghdl_U32; - function To_U32_Ptr is - new Ada.Unchecked_Conversion (Address, Ghdl_U32_Ptr); - - procedure Write_U32 (Mem : Memory_Ptr; Val : Ghdl_U32) is + procedure Write_U32 (Mem : Memory_Ptr; Val : Ghdl_U32) + is + V : Ghdl_U32; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - To_U32_Ptr (To_Address (Mem)).all := Val; + V := Val; end Write_U32; - function Read_U32 (Mem : Memory_Ptr) return Ghdl_U32 is + function Read_U32 (Mem : Memory_Ptr) return Ghdl_U32 + is + V : Ghdl_U32; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - return To_U32_Ptr (To_Address (Mem)).all; + return V; end Read_U32; - type Ghdl_I64_Ptr is access all Ghdl_I64; - function To_I64_Ptr is - new Ada.Unchecked_Conversion (Address, Ghdl_I64_Ptr); - - procedure Write_I64 (Mem : Memory_Ptr; Val : Ghdl_I64) is + procedure Write_I64 (Mem : Memory_Ptr; Val : Ghdl_I64) + is + V : Ghdl_I64; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - To_I64_Ptr (To_Address (Mem)).all := Val; + V := Val; end Write_I64; - function Read_I64 (Mem : Memory_Ptr) return Ghdl_I64 is + function Read_I64 (Mem : Memory_Ptr) return Ghdl_I64 + is + V : Ghdl_I64; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - return To_I64_Ptr (To_Address (Mem)).all; + return V; end Read_I64; - type Fp64_Ptr is access all Fp64; - function To_Fp64_Ptr is - new Ada.Unchecked_Conversion (Address, Fp64_Ptr); - - procedure Write_Fp64 (Mem : Memory_Ptr; Val : Fp64) is + procedure Write_Fp64 (Mem : Memory_Ptr; Val : Fp64) + is + V : Fp64; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - To_Fp64_Ptr (To_Address (Mem)).all := Val; + V := Val; end Write_Fp64; - function Read_Fp64 (Mem : Memory_Ptr) return Fp64 is + function Read_Fp64 (Mem : Memory_Ptr) return Fp64 + is + V : Fp64; + for V'Address use To_Address (Mem); + pragma Import (Ada, V); begin - return To_Fp64_Ptr (To_Address (Mem)).all; + return V; end Read_Fp64; function Read_Fp64 (Mt : Memtyp) return Fp64 is |