Add 'extern C' if simulator is written in C++
Commit Message
Add 'extern C' if simulator is written in C++
sim/common/Changelog:
2018-12-31 Pavel I. Kryukov <kryukov@frtk.ru>
* sim-base.h: Add 'extern C' if header is compiled with C++
/* typedef <target-dependant> sim_cia; */
@@ -224,4 +228,8 @@ typedef struct {
SIM_DESC sim_state_alloc (SIM_OPEN_KIND kind, host_callback *callback);
void sim_state_free (SIM_DESC);
+#ifdef __cplusplus
+}
+#endif
+
#endif /* SIM_BASE_H */
Comments
On 2018-12-31 06:53, Павел Крюков wrote:
> Add 'extern C' if simulator is written in C++
That looks good to me, but can you just precise what's your use case so
I understand better? I suppose you have a sim port in a private fork of
binutils-gdb?
Simon
Yes, we're integrating GDB into our cycle-accurate simulator:
https://github.com/MIPT-ILab/mipt-sim-gdb
чт, 3 янв. 2019 г. в 06:31, Simon Marchi <simon.marchi@polymtl.ca>:
> On 2018-12-31 06:53, Павел Крюков wrote:
> > Add 'extern C' if simulator is written in C++
>
> That looks good to me, but can you just precise what's your use case so
> I understand better? I suppose you have a sim port in a private fork of
> binutils-gdb?
>
> Simon
>
On 2019-01-03 00:39, Павел Крюков wrote:
> Yes, we're integrating GDB into our cycle-accurate simulator:
> https://github.com/MIPT-ILab/mipt-sim-gdb
Ok, thanks. Well it seems reasonable to me, and doesn't hurt in-tree
simulators to have that, so I've merged it.
Simon
@@ -55,6 +55,10 @@ along with this program. If not, see <
http://www.gnu.org/licenses/>. */
#ifndef SIM_BASE_H
#define SIM_BASE_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* Pre-declare certain types. */