Bugzilla – Attachment 123 Details for
Bug 162
rmac does not compile with GCC 10
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Better fix the code than add magic command lines methinks!
0001-Fix-gcc10-clang-link-errors-by-adding-extern-to-expo.patch (text/plain), 5.00 KB, created by
ggn
on 2020-06-07 11:32:59 CDT
(
hide
)
Description:
Better fix the code than add magic command lines methinks!
Filename:
MIME Type:
Creator:
ggn
Created:
2020-06-07 11:32:59 CDT
Size:
5.00 KB
patch
obsolete
>From 19e4198d0862a9c7843a2f744c5b9b820a6a8592 Mon Sep 17 00:00:00 2001 >From: ggn <ggn.dbug@gmail.com> >Date: Sun, 7 Jun 2020 19:24:13 +0300 >Subject: [PATCH] Fix gcc10/clang link errors by adding "extern" to exported > variables and defining a couple in headers (issue #162) > >--- > dsp56k_amode.c | 5 +++- > dsp56k_amode.h | 70 +++++++++++++++++++++++++------------------------- > 2 files changed, 39 insertions(+), 36 deletions(-) > >diff --git a/dsp56k_amode.c b/dsp56k_amode.c >index 347886f..7937b10 100644 >--- a/dsp56k_amode.c >+++ b/dsp56k_amode.c >@@ -21,7 +21,7 @@ > #include "mntab.h" > > // Address-mode information >-int nmodes; // Number of addr'ing modes found >+//int nmodes; // Number of addr'ing modes found > int dsp_am0; // Addressing mode > int dsp_a0reg; // Register > TOKEN dsp_a0expr[EXPRSIZE]; // Expression >@@ -62,6 +62,9 @@ uint64_t dspaaEXVAL; // Expression's value > WORD dspaaEXATTR; // Expression's attribute > SYM * dspaaESYM; // External symbol involved in expr > >+LONG dsp_a0perspace; // Peripheral space (X, Y - used in movep) >+LONG dsp_a1perspace; // Peripheral space (X, Y - used in movep) >+ > int dsp_k; // Multiplications sign > > static inline LONG checkea(const uint32_t termchar, const int strings); >diff --git a/dsp56k_amode.h b/dsp56k_amode.h >index 8b78d2d..d93f190 100644 >--- a/dsp56k_amode.h >+++ b/dsp56k_amode.h >@@ -95,41 +95,41 @@ MNTABDSP { > }; > > // Addressing mode variables, output of dsp_amode() >-int dsp_am0; // Addressing mode >-int dsp_a0reg; // Register >-int dsp_am1; // Addressing mode >-int dsp_a1reg; // Register >-int dsp_am2; // Addressing mode >-int dsp_a2reg; // Register >-int dsp_am3; // Addressing mode >-int dsp_a3reg; // Register >- >-TOKEN dsp_a0expr[EXPRSIZE]; // Expression >-uint64_t dsp_a0exval; // Expression's value >-WORD dsp_a0exattr; // Expression's attribute >-SYM * dsp_a0esym; // External symbol involved in expr >-LONG dsp_a0memspace; // Addressing mode's memory space (P, X, Y) >-LONG dsp_a0perspace; // Peripheral space (X, Y - used in movep) >-TOKEN dsp_a1expr[EXPRSIZE]; // Expression >-uint64_t dsp_a1exval; // Expression's value >-WORD dsp_a1exattr; // Expression's attribute >-SYM * dsp_a1esym; // External symbol involved in expr >-LONG dsp_a1memspace; // Addressing mode's memory space (P, X, Y) >-LONG dsp_a1perspace; // Peripheral space (X, Y - used in movep) >-TOKEN dsp_a2expr[EXPRSIZE]; // Expression >-uint64_t dsp_a2exval; // Expression's value >-WORD dsp_a2exattr; // Expression's attribute >-SYM * dsp_a2esym; // External symbol involved in expr >-TOKEN dsp_a3expr[EXPRSIZE]; // Expression >-uint64_t dsp_a3exval; // Expression's value >-WORD dsp_a3exattr; // Expression's attribute >-SYM * dsp_a3esym; // External symbol involved in expr >-int dsp_k; // Multiplications sign >-TOKEN dspImmedEXPR[EXPRSIZE]; // Expression >-uint64_t dspImmedEXVAL; // Expression's value >-WORD dspImmedEXATTR; // Expression's attribute >-SYM * dspImmedESYM; // External symbol involved in expr >-int deposit_extra_ea; // Optional effective address extension >+extern int dsp_am0; // Addressing mode >+extern int dsp_a0reg; // Register >+extern int dsp_am1; // Addressing mode >+extern int dsp_a1reg; // Register >+extern int dsp_am2; // Addressing mode >+extern int dsp_a2reg; // Register >+extern int dsp_am3; // Addressing mode >+extern int dsp_a3reg; // Register >+ >+extern TOKEN dsp_a0expr[EXPRSIZE]; // Expression >+extern uint64_t dsp_a0exval; // Expression's value >+extern WORD dsp_a0exattr; // Expression's attribute >+extern SYM * dsp_a0esym; // External symbol involved in expr >+extern LONG dsp_a0memspace; // Addressing mode's memory space (P, X, Y) >+extern LONG dsp_a0perspace; // Peripheral space (X, Y - used in movep) >+extern TOKEN dsp_a1expr[EXPRSIZE]; // Expression >+extern uint64_t dsp_a1exval; // Expression's value >+extern WORD dsp_a1exattr; // Expression's attribute >+extern SYM * dsp_a1esym; // External symbol involved in expr >+extern LONG dsp_a1memspace; // Addressing mode's memory space (P, X, Y) >+extern LONG dsp_a1perspace; // Peripheral space (X, Y - used in movep) >+extern TOKEN dsp_a2expr[EXPRSIZE]; // Expression >+extern uint64_t dsp_a2exval; // Expression's value >+extern WORD dsp_a2exattr; // Expression's attribute >+extern SYM * dsp_a2esym; // External symbol involved in expr >+extern TOKEN dsp_a3expr[EXPRSIZE]; // Expression >+extern uint64_t dsp_a3exval; // Expression's value >+extern WORD dsp_a3exattr; // Expression's attribute >+extern SYM * dsp_a3esym; // External symbol involved in expr >+extern int dsp_k; // Multiplications sign >+extern TOKEN dspImmedEXPR[EXPRSIZE]; // Expression >+extern uint64_t dspImmedEXVAL; // Expression's value >+extern WORD dspImmedEXATTR; // Expression's attribute >+extern SYM * dspImmedESYM; // External symbol involved in expr >+extern int deposit_extra_ea; // Optional effective address extension > > > // Extra ea deposit modes >-- >2.22.0.windows.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 162
:
122
| 123