[glib: 24/30] tests: Add comment to volatile atomic tests
- From: Philip Withnall <pwithnall src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib: 24/30] tests: Add comment to volatile atomic tests
- Date: Fri, 20 Nov 2020 14:55:06 +0000 (UTC)
commit 2d03f99ae4de394cac0690717d96c2d884ccdae2
Author: Philip Withnall <pwithnall endlessos org>
Date: Mon Nov 16 14:47:47 2020 +0000
tests: Add comment to volatile atomic tests
`volatile` should not be used to indicate atomic variables, and we
shouldn’t encourage its use. Keep the tests, since they check that we
don’t emit warnings when built against incorrect old code which uses
`volatile`. But add a comment to stop copy/paste use of `volatile`
in the future.
Signed-off-by: Philip Withnall <pwithnall endlessos org>
Helps: #600
glib/tests/atomic.c | 6 ++++++
1 file changed, 6 insertions(+)
---
diff --git a/glib/tests/atomic.c b/glib/tests/atomic.c
index 7d2459f3a..14e6e454e 100644
--- a/glib/tests/atomic.c
+++ b/glib/tests/atomic.c
@@ -94,6 +94,9 @@ test_types (void)
res = g_atomic_pointer_compare_and_exchange (&vp_str, NULL, str);
g_assert_true (res);
+ /* Note that atomic variables should almost certainly not be marked as
+ * `volatile` — see http://isvolatileusefulwiththreads.in/c/. This test exists
+ * to make sure that we don’t warn when built against older third party code. */
g_atomic_pointer_set (&vp_str_vol, NULL);
res = g_atomic_pointer_compare_and_exchange (&vp_str_vol, NULL, str);
g_assert_true (res);
@@ -210,6 +213,9 @@ G_GNUC_END_IGNORE_DEPRECATIONS
res = g_atomic_pointer_compare_and_exchange (&vp_str, NULL, (char *) str);
g_assert_true (res);
+ /* Note that atomic variables should almost certainly not be marked as
+ * `volatile` — see http://isvolatileusefulwiththreads.in/c/. This test exists
+ * to make sure that we don’t warn when built against older third party code. */
g_atomic_pointer_set (&vp_str_vol, NULL);
res = g_atomic_pointer_compare_and_exchange (&vp_str_vol, NULL, (char *) str);
g_assert_true (res);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]