This is an automated email from Gerrit.

Freddie Chopin ([email protected]) just uploaded a new patch set to 
Gerrit, which you can find at http://openocd.zylin.com/4174

-- gerrit

commit c39dce0bb808f2607272085849227f38b5a6b6e3
Author: Freddie Chopin <[email protected]>
Date:   Thu Jun 29 23:48:19 2017 +0200

    Fix GCC7 warnings about switch-case fallthroughs
    
    GCC7 with -Wextra warns about switch-case blocks which fallthrough with
    "this statement may fall through [-Werror=implicit-fallthrough=]". This
    can be fixed by adding "special" comments: "/* fallthrough */".
    
    See https://gcc.gnu.org/gcc-7/changes.html
    
    Change-Id: Iba0be791dbdd86984489b2d9a0592bb59828da1e
    Signed-off-by: Freddie Chopin <[email protected]>

diff --git a/src/flash/mflash.c b/src/flash/mflash.c
index b699955..4c95d21 100644
--- a/src/flash/mflash.c
+++ b/src/flash/mflash.c
@@ -259,11 +259,11 @@ static int mg_dsk_wait(mg_io_type_wait wait_local, 
uint32_t time_var)
                                case mg_io_wait_rdy:
                                        if (status & mg_io_rbit_status_ready)
                                                return ERROR_OK;
-
+                                       /* fallthrough */
                                case mg_io_wait_drq:
                                        if (status & mg_io_rbit_status_data_req)
                                                return ERROR_OK;
-
+                                       /* fallthrough */
                                default:
                                        break;
                        }
diff --git a/src/flash/nand/mx3.c b/src/flash/nand/mx3.c
index b61e475..1b48550 100644
--- a/src/flash/nand/mx3.c
+++ b/src/flash/nand/mx3.c
@@ -281,6 +281,7 @@ static int imx31_command(struct nand_device *nand, uint8_t 
command)
                         * offset == one half of page size
                         */
                        in_sram_address = MX3_NF_MAIN_BUFFER0 + 
(nand->page_size >> 1);
+                       /* fallthrough */
                default:
                        in_sram_address = MX3_NF_MAIN_BUFFER0;
        }
diff --git a/src/flash/nor/kinetis.c b/src/flash/nor/kinetis.c
index 12efefb..30d8ee0 100644
--- a/src/flash/nor/kinetis.c
+++ b/src/flash/nor/kinetis.c
@@ -2126,6 +2126,7 @@ static int kinetis_probe_chip(struct kinetis_chip *k_chip)
                        case KINETIS_SDID_FAMILYID_K6X | 
KINETIS_SDID_SUBFAMID_KX1:     /* errata 7534 - should be K63 */
                        case KINETIS_SDID_FAMILYID_K6X | 
KINETIS_SDID_SUBFAMID_KX2:     /* errata 7534 - should be K64 */
                                subfamid += 2; /* errata 7534 fix */
+                               /* fallthrough */
                        case KINETIS_SDID_FAMILYID_K6X | 
KINETIS_SDID_SUBFAMID_KX3:
                                /* K63FN1M0 */
                        case KINETIS_SDID_FAMILYID_K6X | 
KINETIS_SDID_SUBFAMID_KX4:
diff --git a/src/helper/command.c b/src/helper/command.c
index 5deaee8..40e8b05 100644
--- a/src/helper/command.c
+++ b/src/helper/command.c
@@ -1456,8 +1456,8 @@ COMMAND_HELPER(handle_command_parse_bool, bool *out, 
const char *label)
                                LOG_ERROR("%s: argument '%s' is not valid", 
CMD_NAME, in);
                                return ERROR_COMMAND_SYNTAX_ERROR;
                        }
-                       /* fall through */
                }
+                       /* fallthrough */
                case 0:
                        LOG_INFO("%s is %s", label, *out ? "enabled" : 
"disabled");
                        break;
diff --git a/src/jtag/drivers/ftdi.c b/src/jtag/drivers/ftdi.c
index 00fe37f..18dc4b5 100644
--- a/src/jtag/drivers/ftdi.c
+++ b/src/jtag/drivers/ftdi.c
@@ -855,6 +855,7 @@ COMMAND_HANDLER(ftdi_handle_set_signal_command)
                        ftdi_set_signal(sig, *CMD_ARGV[1]);
                        break;
                }
+               /* fallthrough */
        default:
                LOG_ERROR("unknown signal level '%s', use 0, 1 or z", 
CMD_ARGV[1]);
                return ERROR_COMMAND_SYNTAX_ERROR;
diff --git a/src/jtag/drivers/kitprog.c b/src/jtag/drivers/kitprog.c
index c689848..398ca6e 100644
--- a/src/jtag/drivers/kitprog.c
+++ b/src/jtag/drivers/kitprog.c
@@ -655,8 +655,8 @@ static int kitprog_swd_switch_seq(enum swd_special_seq seq)
                                break;
                        } else {
                                LOG_DEBUG("JTAG to SWD not supported");
-                               /* Fall through to fix target reset issue */
                        }
+                       /* fallthrough */
                case LINE_RESET:
                        LOG_DEBUG("SWD line reset");
                        if (kitprog_swd_seq(SEQUENCE_LINE_RESET) != ERROR_OK)
diff --git a/src/svf/svf.c b/src/svf/svf.c
index e7e815c..1d686ba 100644
--- a/src/svf/svf.c
+++ b/src/svf/svf.c
@@ -661,11 +661,13 @@ static int svf_read_command_from_file(FILE *fd)
                                if (svf_getline(&svf_read_line, 
&svf_read_line_size, svf_fd) <= 0)
                                        return ERROR_FAIL;
                                i = -1;
+                               /* fallthrough */
                        case '\r':
                                slash = 0;
                                /* Don't save '\r' and '\n' if no data is 
parsed */
                                if (!cmd_pos)
                                        break;
+                               /* fallthrough */
                        default:
                                /* The parsing code currently expects a space
                                 * before parentheses -- "TDI (123)".  Also a
diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c
index eafc2dd..8849119 100644
--- a/src/target/arm_adi_v5.c
+++ b/src/target/arm_adi_v5.c
@@ -346,8 +346,10 @@ static int mem_ap_write(struct adiv5_ap *ap, const uint8_t 
*buffer, uint32_t siz
                        case 4:
                                outvalue |= (uint32_t)*buffer++ << 8 * 
(address++ & 3);
                                outvalue |= (uint32_t)*buffer++ << 8 * 
(address++ & 3);
+                               /* fallthrough */
                        case 2:
                                outvalue |= (uint32_t)*buffer++ << 8 * 
(address++ & 3);
+                               /* fallthrough */
                        case 1:
                                outvalue |= (uint32_t)*buffer++ << 8 * 
(address++ & 3);
                        }
@@ -509,8 +511,10 @@ static int mem_ap_read(struct adiv5_ap *ap, uint8_t 
*buffer, uint32_t size, uint
                        case 4:
                                *buffer++ = *read_ptr >> 8 * (3 - (address++ & 
3));
                                *buffer++ = *read_ptr >> 8 * (3 - (address++ & 
3));
+                               /* fallthrough */
                        case 2:
                                *buffer++ = *read_ptr >> 8 * (3 - (address++ & 
3));
+                               /* fallthrough */
                        case 1:
                                *buffer++ = *read_ptr >> 8 * (3 - (address++ & 
3));
                        }
@@ -519,8 +523,10 @@ static int mem_ap_read(struct adiv5_ap *ap, uint8_t 
*buffer, uint32_t size, uint
                        case 4:
                                *buffer++ = *read_ptr >> 8 * (address++ & 3);
                                *buffer++ = *read_ptr >> 8 * (address++ & 3);
+                               /* fallthrough */
                        case 2:
                                *buffer++ = *read_ptr >> 8 * (address++ & 3);
+                               /* fallthrough */
                        case 1:
                                *buffer++ = *read_ptr >> 8 * (address++ & 3);
                        }
diff --git a/src/target/arm_disassembler.c b/src/target/arm_disassembler.c
index 5277b94..3f1daca 100644
--- a/src/target/arm_disassembler.c
+++ b/src/target/arm_disassembler.c
@@ -3299,6 +3299,7 @@ static int t2ev_data_immed(uint32_t opcode, uint32_t 
address,
                case 0x10:
                case 0x12:
                        is_signed = true;
+                       /* fallthrough */
                case 0x18:
                case 0x1a:
                        /* signed/unsigned saturated add */
diff --git a/src/target/armv7a.c b/src/target/armv7a.c
index 6021def..ae2616c 100644
--- a/src/target/armv7a.c
+++ b/src/target/armv7a.c
@@ -355,7 +355,7 @@ int armv7a_mmu_translate_va_pa(struct target *target, 
uint32_t va,
                                break;
                        case 7:
                                LOG_INFO("inner: Write-Back, no 
Write-Allocate");
-
+                               /* fallthrough */
                        default:
                                LOG_INFO("inner: %" PRIx32 " ???", INNER);
                }
diff --git a/src/target/target.c b/src/target/target.c
index e04ecc4..1c0d7b8 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -3684,7 +3684,7 @@ COMMAND_HANDLER(handle_bp_command)
                                addr = 0;
                                return handle_bp_command_set(CMD_CTX, addr, 
asid, length, hw);
                        }
-
+                       /* fallthrough */
                case 4:
                        hw = BKPT_HARD;
                        COMMAND_PARSE_ADDRESS(CMD_ARGV[0], addr);

-- 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to