It's unfortunate that clang's and gcc's -Wunused differ here. Just checked in a 
fix that works on my ubuntu image.

> Am 03.01.2018 um 10:03 schrieb Luca Toscano <toscano.l...@gmail.com>:
> 
> Hi Stefan,
> 
> 2018-01-02 16:57 GMT+01:00 <ic...@apache.org>:
> Author: icing
> Date: Tue Jan  2 15:57:39 2018
> New Revision: 1819854
> 
> URL: http://svn.apache.org/viewvc?rev=1819854&view=rev
> 
> 
> Modified: httpd/httpd/trunk/modules/md/md.h
> URL: 
> http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/md/md.h?rev=1819854&r1=1819853&r2=1819854&view=diff
> ==============================================================================
> --- httpd/httpd/trunk/modules/md/md.h (original)
> +++ httpd/httpd/trunk/modules/md/md.h Tue Jan  2 15:57:39 2018
> @@ -119,6 +119,7 @@ struct md_t {
>  #define MD_KEY_CONTACT          "contact"
>  #define MD_KEY_CONTACTS         "contacts"
>  #define MD_KEY_CSR              "csr"
> +#define MD_KEY_DETAIL           "detail"
>  #define MD_KEY_DISABLED         "disabled"
>  #define MD_KEY_DIR              "dir"
>  #define MD_KEY_DOMAIN           "domain"
> @@ -275,4 +276,14 @@ struct md_creds_t {
>      int expired;
>  };
> 
> +/* TODO: not sure this is a good idea, testing some readability and 
> debuggabiltiy of
> + * cascaded apr_status_t checks. */
> +#define MD_CHK_VARS                 const char *md_chk_
> +#define MD_LAST_CHK                 md_chk_
> +#define MD_CHK_STEP(c, status, s)   (md_chk_ = s, status == (rv = (c)))
> +#define MD_CHK(c, status)           MD_CHK_STEP(c, status, #c)
> +#define MD_IS_ERR(c, err)           (md_chk_ = #c, APR_STATUS_IS_##err((rv = 
> (c))))
> +#define MD_CHK_SUCCESS(c)           MD_CHK(c, APR_SUCCESS)
> +#define MD_OK(c)                    MD_CHK_SUCCESS(c)
> +
>  #endif /* mod_md_md_h */
> 
> 
> I am probably missing something but while trying to build trunk in maintainer 
> mode I get the following:
> 
> In file included from md_acme_authz.c:44:0:
> md_acme_authz.c: In function ‘md_acme_authz_update’:
> md.h:281:49: error: variable ‘md_chk_’ set but not used 
> [-Werror=unused-but-set-variable]
>  #define MD_CHK_VARS                 const char *md_chk_
>                                                  ^
> md_acme_authz.c:213:5: note: in expansion of macro ‘MD_CHK_VARS’
>      MD_CHK_VARS;
>      ^~~~~~~~~~~
> md_acme_authz.c: In function ‘setup_key_authz’:
> md.h:281:49: error: variable ‘md_chk_’ set but not used 
> [-Werror=unused-but-set-variable]
>  #define MD_CHK_VARS                 const char *md_chk_
>                                                  ^
> md_acme_authz.c:311:5: note: in expansion of macro ‘MD_CHK_VARS’
>      MD_CHK_VARS;
>      ^~~~~~~~~~~
> md_acme_authz.c: In function ‘cha_http_01_setup’:
> md.h:281:49: error: variable ‘md_chk_’ set but not used 
> [-Werror=unused-but-set-variable]
>  #define MD_CHK_VARS                 const char *md_chk_
>                                                  ^
> md_acme_authz.c:341:5: note: in expansion of macro ‘MD_CHK_VARS’
>      MD_CHK_VARS;
>      ^~~~~~~~~~~
> md_acme_authz.c: In function ‘cha_tls_sni_01_setup’:
> md.h:281:49: error: variable ‘md_chk_’ set but not used 
> [-Werror=unused-but-set-variable]
>  #define MD_CHK_VARS                 const char *md_chk_
>                                                  ^
> md_acme_authz.c:402:5: note: in expansion of macro ‘MD_CHK_VARS’
>      MD_CHK_VARS;
>      ^~~~~~~~~~~
> cc1: all warnings being treated as errors 
> 
> 
> Luca
> 

Reply via email to