* file.c (statfs_fsid): use union to suppress strict-aliasing
  warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45669 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2014-04-22 14:01:51 +00:00
Родитель 026b0b9469
Коммит c143b9a0ab
1 изменённых файлов: 6 добавлений и 2 удалений

8
file.c
Просмотреть файл

@ -5529,8 +5529,12 @@ statfs_ffree(VALUE self)
static VALUE
statfs_fsid(VALUE self)
{
fsid_t n = get_statfs(self)->f_fsid;
return LL2NUM(*(LONG_LONG*)&n);
union {
uint64_t v;
fsid_t f;
} n = {0};
n.f = get_statfs(self)->f_fsid;
return LL2NUM(n.v);
}
#ifdef HAVE_STRUCT_STATFS_F_FSTYPENAME