[git] GPG-ERROR - branch, master, updated. libgpg-error-1.32-7-gb2aba1b

by NIIBE Yutaka cvs at cvs.gnupg.org
Thu Sep 6 08:03:39 CEST 2018


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Error codes used by GnuPG et al.".

The branch, master has been updated
       via  b2aba1bec151d6e6cbf66359a30ba2ff458fc138 (commit)
      from  2148e19fbefa9c5d5cdc4982cd2043136c31fb64 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b2aba1bec151d6e6cbf66359a30ba2ff458fc138
Author: NIIBE Yutaka <gniibe at fsij.org>
Date:   Thu Sep 6 15:02:11 2018 +0900

    gpgscm: Suppress warnings for GCC > 6.
    
    * tests/gpgscm/scheme.c (CASE): Use unused attribute for GCC > 6.
    (FALLTHROUGH): New for fallthrough.
    (Eval_Cycle): Use FALLTHROUGH.  Remove not-needed comment of
    fallthrough.
    
    --
    
    Since GCC combines C preprocessor macro expansion, the fallthrough
    comment doesn't work well to suppress warnings for
    -Wimplicit-fallthrough, near the macro CASE.  To handle this
    problem, we use GCC's extension of unused label and fallthrough
    attributes.
    
    Signed-off-by: NIIBE Yutaka <gniibe at fsij.org>
    
    Cherry-picked from gnupg master commit of:
    	99c17b970bc0ca7e0cff7fe031c6f9feb05af3ff

diff --git a/gpgscm/scheme.c b/gpgscm/scheme.c
index 5102769..906e563 100644
--- a/gpgscm/scheme.c
+++ b/gpgscm/scheme.c
@@ -2992,13 +2992,23 @@ _Error_1(scheme *sc, const char *s, pointer a) {
 /* Define a label OP and emit a case statement for OP.  For use in the
  * dispatch function.  The slightly peculiar goto that is never
  * executed avoids warnings about unused labels.  */
+#if __GNUC__ > 6
+#define CASE(OP)	OP: __attribute__((unused)); case OP
+#else
 #define CASE(OP)	case OP: if (0) goto OP; OP
+#endif
 
 #else	/* USE_THREADED_CODE */
 #define s_thread_to(sc, a)	s_goto(sc, a)
 #define CASE(OP)		case OP
 #endif	/* USE_THREADED_CODE */
 
+#if __GNUC__ > 6
+#define FALLTHROUGH __attribute__ ((fallthrough))
+#else
+#define FALLTHROUGH /* fallthrough */
+#endif
+
 /* Return to the previous frame on the dump stack, setting the current
  * value to A.  */
 #define s_return(sc, a)	s_goto(sc, _s_return(sc, a, 0))
@@ -3559,7 +3569,7 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
          putstr(sc,"\nEval: ");
          s_thread_to(sc,OP_P0LIST);
        }
-       /* fall through */
+       FALLTHROUGH;
      CASE(OP_REAL_EVAL):
 #endif
           if (is_symbol(sc->code)) {    /* symbol */
@@ -3637,7 +3647,7 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
 	  free_cons(sc, sc->args, &callsite, &sc->args);
 	  sc->code = car(sc->args);
 	  sc->args = cdr(sc->args);
-	  /* Fallthrough.  */
+	  FALLTHROUGH;
 
      CASE(OP_APPLY):      /* apply 'code' to 'args' */
 #if USE_TRACING
@@ -3648,7 +3658,7 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
          putstr(sc,"\nApply to: ");
          s_thread_to(sc,OP_P0LIST);
        }
-       /* fall through */
+       FALLTHROUGH;
      CASE(OP_REAL_APPLY):
 #endif
 #if USE_HISTORY
@@ -3729,12 +3739,11 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
                     s_thread_to(sc,OP_APPLY);
                }
           }
-	  /* Fallthrough. */
 #else
      CASE(OP_LAMBDA):     /* lambda */
 	  sc->value = sc->code;
-	  /* Fallthrough. */
 #endif
+	  FALLTHROUGH;
 
      CASE(OP_LAMBDA1):
 	  gc_disable(sc, 1);
@@ -4657,13 +4666,9 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
      CASE(OP_NULLP):       /* null? */
           s_retbool(car(sc->args) == sc->NIL);
      CASE(OP_NUMEQ):      /* = */
-	  /* Fallthrough.  */
      CASE(OP_LESS):       /* < */
-	  /* Fallthrough.  */
      CASE(OP_GRE):        /* > */
-	  /* Fallthrough.  */
      CASE(OP_LEQ):        /* <= */
-	  /* Fallthrough.  */
      CASE(OP_GEQ):        /* >= */
           switch(op) {
                case OP_NUMEQ: comp_func=num_eq; break;
@@ -4752,9 +4757,7 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
           s_return(sc,sc->value);
 
      CASE(OP_WRITE):      /* write */
-	  /* Fallthrough.  */
      CASE(OP_DISPLAY):    /* display */
-	  /* Fallthrough.  */
      CASE(OP_WRITE_CHAR): /* write-char */
           if(is_pair(cdr(sc->args))) {
                if(cadr(sc->args)!=sc->outport) {
@@ -4902,9 +4905,7 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
           s_return(sc,sc->outport);
 
      CASE(OP_OPEN_INFILE): /* open-input-file */
-	  /* Fallthrough.  */
      CASE(OP_OPEN_OUTFILE): /* open-output-file */
-	  /* Fallthrough.  */
      CASE(OP_OPEN_INOUTFILE): /* open-input-output-file */ {
           int prop=0;
           pointer p;
@@ -4924,7 +4925,6 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
 
 #if USE_STRING_PORTS
      CASE(OP_OPEN_INSTRING): /* open-input-string */
-	  /* Fallthrough.  */
      CASE(OP_OPEN_INOUTSTRING): /* open-input-output-string */ {
           int prop=0;
           pointer p;
@@ -5005,7 +5005,6 @@ Eval_Cycle(scheme *sc, enum scheme_opcodes op) {
           s_thread_to(sc,OP_READ_INTERNAL);
 
      CASE(OP_READ_CHAR): /* read-char */
-	  /* Fallthrough.  */
      CASE(OP_PEEK_CHAR): /* peek-char */ {
           int c;
           if(is_pair(sc->args)) {

-----------------------------------------------------------------------

Summary of changes:
 gpgscm/scheme.c | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)


hooks/post-receive
-- 
Error codes used by GnuPG et al.
http://git.gnupg.org




More information about the Gnupg-commits mailing list