+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add noreturn attributes and remove unreachable code.
+
+ * grub-core/bus/cs5536.c (grub_cs5536_smbus_wait): Remove unreachable
+ code.
+ * grub-core/commands/halt.c (grub_cmd_halt): Remove unreachable
+ code. Mark as noreturn.
+ * grub-core/commands/minicmd.c (grub_mini_cmd_exit): Likewise.
+ * grub-core/commands/reboot.c (grub_cmd_reboot): Likewise.
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Remove
+ unreachable code.
+ * grub-core/kern/main.c (grub_main): Mark as noreturn.
+ * grub-core/kern/rescue_reader.c (grub_rescue_run): Likewise.
+ * grub-core/lib/posix_wrap/stdlib.h (abort): Likewise.
+ * grub-core/normal/menu.c (run_menu): Remove unreachable code.
+ * include/grub/kernel.h (grub_main): Mark as noreturn.
+ * include/grub/reader.h (grub_rescue_run): Likewise.
+
2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/i386/qemu/memory.h (grub_machine_mmap_init): Remove
if (grub_get_time_ms () > start + 40)
return grub_error (GRUB_ERR_IO, "SM stalled");
}
-
- return GRUB_ERR_NONE;
}
grub_err_t
GRUB_MOD_LICENSE ("GPLv3+");
-static grub_err_t
+static grub_err_t __attribute__ ((noreturn))
grub_cmd_halt (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
grub_halt ();
- return 0;
}
static grub_command_t cmd;
}
/* exit */
-static grub_err_t
+static grub_err_t __attribute__ ((noreturn))
grub_mini_cmd_exit (struct grub_command *cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char *argv[] __attribute__ ((unused)))
{
grub_exit ();
- return 0;
+ /* Not reached. */
}
static grub_command_t cmd_cat, cmd_help;
GRUB_MOD_LICENSE ("GPLv3+");
-static grub_err_t
+static grub_err_t __attribute__ ((noreturn))
grub_cmd_reboot (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),
char **args __attribute__ ((unused)))
{
grub_reboot ();
- return 0;
}
static grub_command_t cmd;
grub_disk_close (parent);
return device_name;
}
-
- return 0;
}
}
/* The main routine. */
-void
+void __attribute__ ((noreturn))
grub_main (void)
{
/* First of all, initialize the machine. */
return 0;
}
-void
+void __attribute__ ((noreturn))
grub_rescue_run (void)
{
grub_printf ("Entering rescue mode...\n");
return grub_realloc (ptr, size);
}
-static inline void
+static inline void __attribute__ ((noreturn))
abort (void)
{
grub_abort ();
}
/* Never reach here. */
- return -1;
}
/* Callback invoked immediately before a menu entry is executed. */
grub_addr_t grub_modules_get_end (void);
/* The start point of the C code. */
-void grub_main (void);
+void grub_main (void) __attribute__ ((noreturn));
/* The machine-specific initialization. This must initialize memory. */
void grub_machine_init (void);
typedef grub_err_t (*grub_reader_getline_t) (char **, int);
-void grub_rescue_run (void);
+void grub_rescue_run (void) __attribute__ ((noreturn));
#endif /* ! GRUB_READER_HEADER */