Nathan Scott 11cd983d58
Annotate module API functions in redismodule.h for use with -fno-common (#6900)
In order to keep the redismodule.h self-contained but still usable with
gcc v10 and later, annotate each API function tentative definition with
the __common__ attribute.  This avoids the 'multiple definition' errors
modules will otherwise see for all API functions at link time.

Further details at gcc.gnu.org/gcc-10/porting_to.html

Turn the existing __attribute__ ((unused)), ((__common__)) and ((print))
annotations into conditional macros for any compilers not accepting this
syntax.  These macros only expand to API annotations under gcc.

Provide a pre- and post- macro for every API function, so that they can
be defined differently by the file that includes redismodule.h.

Removing REDISMODULE_API_FUNC in the interest of keeping the function
declarations readable.

Co-authored-by: Yossi Gottlieb <yossigo@gmail.com>
Co-authored-by: Oran Agra <oran@redislabs.com>
2020-08-14 14:45:34 +03:00
..
2020-08-12 11:16:41 +08:00
2016-06-07 16:46:00 -04:00
2020-07-21 08:13:05 +03:00
2019-11-20 20:39:04 -05:00
2019-07-17 16:40:24 +03:00
2020-05-05 10:20:48 +02:00
2020-04-24 17:00:03 -07:00
2020-04-24 17:11:21 -07:00
2020-04-24 17:11:21 -07:00
2020-08-06 16:47:27 +03:00
2020-07-21 08:13:05 +03:00
2018-07-03 18:19:46 +02:00
2016-07-27 11:34:25 +02:00
2019-02-24 21:38:15 +01:00
2020-06-12 12:16:19 +02:00
2019-10-24 14:24:55 +03:00
2020-06-16 17:50:38 +08:00
2020-05-05 23:35:08 -04:00
2019-11-19 17:23:47 +08:00
2020-04-02 23:43:47 +08:00
2020-04-09 12:10:10 +02:00
2018-07-03 18:19:46 +02:00
2019-10-02 11:30:20 +02:00
2020-07-24 14:40:19 +08:00
2020-04-06 19:27:06 +08:00
2020-08-08 00:19:18 +03:00
2020-02-22 11:38:51 -05:00
2020-08-08 12:28:44 -07:00
2020-05-12 21:21:22 +01:00
2018-11-11 18:49:55 +00:00
2020-07-21 08:13:05 +03:00