diff options
author | Greg McGary <gkm@gnu.org> | 1999-12-03 19:02:20 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 1999-12-03 19:02:20 +0000 |
commit | 3c12fcc27809a223032e1b0ad2beba1f6844a5c6 (patch) | |
tree | 7d5534785288859eef23b404bed24959cca1f313 /gcc/flags.h | |
parent | 7337695dc2c8f106fbad8b59ad2b4a2c9d413710 (diff) | |
download | gcc-3c12fcc27809a223032e1b0ad2beba1f6844a5c6.zip gcc-3c12fcc27809a223032e1b0ad2beba1f6844a5c6.tar.gz gcc-3c12fcc27809a223032e1b0ad2beba1f6844a5c6.tar.bz2 |
flags.h (warn_padded, [...]): Add global var decls.
* flags.h (warn_padded, warn_packed): Add global var decls.
* toplev.c (warn_padded, warn_packed): Add global var defns.
(W_options): Add warnings `-Wpacked' and `-Wpadded'.
* stor-layout.c (layout_record): Add local variable `type'
to hold often-used TREE_TYPE (field). Add local variable
`unpacked_align' to hold alignment that would be in force
if no `packed' attribute were present. Warn if `packed' attribute
is unnecessary, or even harmful. Warn when gcc inserts padding
to satisfy alignment requirements of members. Use NULL_TREE
when checking whether var_size is set.
* invoke.texi: Document new flags.
Co-Authored-By: Geoff Keating <geoffk@cygnus.com>
From-SVN: r30770
Diffstat (limited to 'gcc/flags.h')
-rw-r--r-- | gcc/flags.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/flags.h b/gcc/flags.h index 1cca481..c93784c 100644 --- a/gcc/flags.h +++ b/gcc/flags.h @@ -141,6 +141,14 @@ extern unsigned larger_than_size; extern int warn_aggregate_return; +/* Warn if packed attribute on struct is unnecessary and inefficient. */ + +extern int warn_packed; + +/* Warn when gcc pads a structure to an alignment boundary. */ + +extern int warn_padded; + /* Nonzero if generating code to do profiling. */ extern int profile_flag; |