aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--include/ruby/st.h9
2 files changed, 13 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9947f00af3..b36d01df65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Feb 2 00:30:43 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
+
+ * include/ruby/st.h (st_table): Added comment why we need __extension__.
+
Tue Feb 1 20:45:44 2011 Tanaka Akira <akr@fsij.org>
* enc/encdb.c: parenthesize macro arguments.
diff --git a/include/ruby/st.h b/include/ruby/st.h
index 5627124e39..960b1bde6a 100644
--- a/include/ruby/st.h
+++ b/include/ruby/st.h
@@ -79,6 +79,15 @@ struct st_table {
st_index_t num_bins;
unsigned int entries_packed : 1;
#ifdef __GNUC__
+ /*
+ * C spec says,
+ * A bit-field shall have a type that is a qualified or unqualified
+ * version of _Bool, signed int, unsigned int, or some other
+ * implementation-defined type. It is implementation-defined whether
+ * atomic types are permitted.
+ * In short, long and long long bit-field are implementation-defined
+ * feature. Therefore we want to supress a warning explicitly.
+ */
__extension__
#endif
st_index_t num_entries : ST_INDEX_BITS - 1;