diff options
author | Trevor Saunders <tbsaunde@gcc.gnu.org> | 2015-05-02 04:11:07 +0000 |
---|---|---|
committer | Trevor Saunders <tbsaunde@gcc.gnu.org> | 2015-05-02 04:11:07 +0000 |
commit | 539280a8e89d4e63c6ccb9573b755bd17793e33a (patch) | |
tree | fee646565688a42fe976a306924b04532245ff8c /config/bitfields.m4 | |
parent | 90eb63a3a045dd9ac0774860e03163da82cb0a1c (diff) | |
download | gcc-539280a8e89d4e63c6ccb9573b755bd17793e33a.zip gcc-539280a8e89d4e63c6ccb9573b755bd17793e33a.tar.gz gcc-539280a8e89d4e63c6ccb9573b755bd17793e33a.tar.bz2 |
fixup libobjc usage of PCC_BITFIELD_TYPE_MATTERS
libobjc/ChangeLog:
2015-05-01 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* acinclude.m4: Include bitfields.m4.
* config.h.in: Regenerate.
* configure: Likewise.
* configure.ac: Invoke gt_BITFIELD_TYPE_MATTERS.
* encoding.c: Check HAVE_BITFIELD_TYPE_MATTERS.
config/ChangeLog:
2015-05-01 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* bitfields.m4: New file.
From-SVN: r222715
Diffstat (limited to 'config/bitfields.m4')
-rw-r--r-- | config/bitfields.m4 | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/config/bitfields.m4 b/config/bitfields.m4 new file mode 100644 index 0000000..ee8f3b5 --- /dev/null +++ b/config/bitfields.m4 @@ -0,0 +1,26 @@ +dnl Copyright (C) 2015 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +# Define HAVE_BITFIELD_TYPE_MATTERS if the type of bitfields effects their +# alignment. + +AC_DEFUN([gt_BITFIELD_TYPE_MATTERS], +[ + AC_CACHE_CHECK([if the type of bitfields matters], gt_cv_bitfield_type_matters, + [ + AC_TRY_COMPILE( + [struct foo1 { char x; char :0; char y; }; +struct foo2 { char x; int :0; char y; }; +int foo1test[ sizeof (struct foo1) == 2 ? 1 : -1 ]; +int foo2test[ sizeof (struct foo2) == 5 ? 1 : -1]; ], + [], gt_cv_bitfield_type_matters=yes, gt_cv_bitfield_type_matters=no) + ]) + if test $gt_cv_bitfield_type_matters = yes; then + AC_DEFINE(HAVE_BITFIELD_TYPE_MATTERS, 1, + [Define if the type of bitfields effects alignment.]) + fi +]) |