cbindgen/tests/expectations/opaque.compat.c
Emilio Cobos Álvarez d652d29ae2 ir: Be less strict when instantiating opaque types.
There are two situations where we can legitimately end up with a
different number of template params.

Fixes #532.
Fixes #527.
2020-08-15 13:40:54 +02:00

37 lines
725 B
C

#ifdef __cplusplus
// These could be added as opaque types I guess.
template <typename T>
struct BuildHasherDefault;
struct DefaultHasher;
#endif
#include <stdarg.h>
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
typedef struct HashMap_i32__i32__BuildHasherDefault_DefaultHasher HashMap_i32__i32__BuildHasherDefault_DefaultHasher;
typedef struct Result_Foo Result_Foo;
/**
* Fast hash map used internally.
*/
typedef HashMap_i32__i32__BuildHasherDefault_DefaultHasher FastHashMap_i32__i32;
typedef FastHashMap_i32__i32 Foo;
typedef Result_Foo Bar;
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
void root(const Foo *a, const Bar *b);
#ifdef __cplusplus
} // extern "C"
#endif // __cplusplus