diff options
author | Mark Harris <mark.hsj@gmail.com> | 2015-08-07 11:25:35 +0300 |
---|---|---|
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2015-08-07 20:25:33 +0300 |
commit | 8adff0bb31989deb616ca72d16fc3e791ed91b10 (patch) | |
tree | f2731dcf2a4eb4723455d8a3e64579ec53b84c6d | |
parent | 4feb0dff995205031891036b0686e75fcac2562d (diff) |
Fix const struct to work with C++ compilation
This allows the libopus source files to be compiled with a C++ compiler,
by ensuring that the "extern const MLP net" declaration is visible at
the point of the "const MLP net" in src/mlp_data.c. Otherwise it will
default to static linkage in C++, resulting in an undefined symbol.
Note that if compiled with a C++ compiler the symbols will be mangled,
so don't do that if you want to be able to call it from C code or run
the tests (which still require a C compiler).
-rw-r--r-- | src/analysis.c | 2 | ||||
-rw-r--r-- | src/mlp.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/analysis.c b/src/analysis.c index 2ee85337..401a43e4 100644 --- a/src/analysis.c +++ b/src/analysis.c @@ -39,8 +39,6 @@ #include "mlp.h" #include "stack_alloc.h" -extern const MLP net; - #ifndef M_PI #define M_PI 3.141592653 #endif @@ -36,6 +36,8 @@ typedef struct { const float *weights; } MLP; +extern const MLP net; + void mlp_process(const MLP *m, const float *in, float *out); #endif /* _MLP_H_ */ |