X-Git-Url: https://sigrok.org/gitweb/?p=libsigrokdecode.git;a=blobdiff_plain;f=libsigrokdecode-internal.h;h=af245f6ad197f5b75ab8a2782a0399bb43b2a95c;hp=329a10ab9462f7661c7e5a4f3a5390e4fd38fb19;hb=HEAD;hpb=114adb4997b71e93267e3816710c8b019ae927c0 diff --git a/libsigrokdecode-internal.h b/libsigrokdecode-internal.h index 329a10a..0e3cb64 100644 --- a/libsigrokdecode-internal.h +++ b/libsigrokdecode-internal.h @@ -27,6 +27,17 @@ #include /* First, so we avoid a _POSIX_C_SOURCE warning. */ #include "libsigrokdecode.h" +/* + * Static definition of tables ending with an all-zero sentinel entry + * may raise warnings when compiling with -Wmissing-field-initializers. + * GCC suppresses the warning only with { 0 }, clang wants { } instead. + */ +#ifdef __clang__ +# define ALL_ZERO { } +#else +# define ALL_ZERO { 0 } +#endif + enum { SRD_TERM_ALWAYS_FALSE, SRD_TERM_HIGH, @@ -83,6 +94,7 @@ SRD_PRIV int srd_inst_decode(struct srd_decoder_inst *di, const uint8_t *inbuf, uint64_t inbuflen, uint64_t unitsize); SRD_PRIV int process_samples_until_condition_match(struct srd_decoder_inst *di, gboolean *found_match); SRD_PRIV int srd_inst_flush(struct srd_decoder_inst *di); +SRD_PRIV int srd_inst_send_eof(struct srd_decoder_inst *di); SRD_PRIV int srd_inst_terminate_reset(struct srd_decoder_inst *di); SRD_PRIV void srd_inst_free(struct srd_decoder_inst *di); SRD_PRIV void srd_inst_free_all(struct srd_session *sess);