[tor-commits] [tor/master] prop250: Don't use {0} to init static struct -- causes warning on clang.

nickm at torproject.org nickm at torproject.org
Fri Jul 1 19:35:16 UTC 2016


commit 899d2b890b35b9772f33054b9ff627dd8186deac
Author: George Kadianakis <desnacked at riseup.net>
Date:   Wed May 25 12:28:40 2016 +0300

    prop250: Don't use {0} to init static struct -- causes warning on clang.
    
    See ticket #19132 for the clang/llvm warning.
    
    Since voting_schedule is a global static struct, it will be initialized
    to zero even without explicitly initializing it with {0}.
    
    This is what the C spec says:
    
    	If an object that has automatic storage duration is not initialized
    	explicitly, its value is indeterminate. If an object that has static
    	storage duration is not initialized explicitly, then:
    
    	— if it has pointer type, it is initialized to a null pointer;
    	— if it has arithmetic type, it is initialized to (positive or unsigned) zero;
    	— if it is an aggregate, every member is initialized (recursively) according to these rules;
    	— if it is a union, the first named member is initialized (recursively) according to these rules.
---
 src/or/dirvote.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/or/dirvote.c b/src/or/dirvote.c
index 4eccdd0..5071331 100644
--- a/src/or/dirvote.c
+++ b/src/or/dirvote.c
@@ -2545,7 +2545,7 @@ get_next_valid_after_time(time_t now)
   return next_valid_after_time;
 }
 
-static voting_schedule_t voting_schedule = {0};
+static voting_schedule_t voting_schedule;
 
 /** Set voting_schedule to hold the timing for the next vote we should be
  * doing. */





More information about the tor-commits mailing list