diff -r 642247a536d5 Tools/clinic/clinic.py --- a/Tools/clinic/clinic.py Sat Mar 14 20:17:38 2015 -0700 +++ b/Tools/clinic/clinic.py Sat Mar 14 21:18:36 2015 -0700 @@ -820,7 +820,8 @@ cpp_if = "#if " + conditional cpp_endif = "#endif /* " + conditional + " */" - if methoddef_define: + if methoddef_define and f.name not in clinic.ifndef_symbols: + clinic.ifndef_symbols.add(f.name) methoddef_ifndef = normalize_snippet(""" #ifndef {methoddef_name} #define {methoddef_name} @@ -1574,6 +1575,7 @@ )) self.field_destinations_stack = [] + self.ifndef_symbols = set() self.presets = {} preset = None