Why is register depricated?? 184.108.40.206 07:03, 7 November 2012 (PST)
- It is deprecated in the current C++ standard, per paragraphs
§D.2[depr.register]. As for why, it's likely because most (all?) existing C++ compilers completely ignore this keyword, and have been for many years. Or, to quote Herb Sutter, It's exactly as meaningful as whitespace. (note that it's not so in the C programming language, where
registerchanges the program semantics) --Cubbi 07:37, 7 November 2012 (PST)
In "external linkage", at the bullet "variables and functions, not listed above (that is, not declared static, and const-qualified but not extern)" the text in the parentheses looks a bit ambiguous. Maybe I'm wrong, but was it meant to be "(that is, not declared static, and non const-qualified)" or something along these lines? --Blastofftek (talk) 02:54, 26 December 2014 (PST)
- attempted rewording, better? --Cubbi (talk) 06:18, 26 December 2014 (PST)
- Yes, it's perfectly clear now. Thanks --Blastofftek (talk) 06:08, 30 December 2014 (PST)
 extern declares
Maybe it might also be explicitly stated in Explanation/4) that
extern only declares the name, but does not define it (unless an initializer is given).
I don't know if this might clutter the explanation, but I think it is important to point out when someone searches for the effects of using the
extern keyword. PapaNappa (talk) 07:10, 2 October 2015 (PDT)
- it is made more obvious in cpp/language/definition (the first bullet point there), but I agree that someone trying to understand the meaning of a line of code that begins with "extern" would end up here. It's also true that this page is already more cluttered than it needs to be. I added a brief note, but will think about restructuring this.. or at least inserting micro-examples to explain the points. --Cubbi (talk) 07:36, 2 October 2015 (PDT)
 name that denotes a value
In context of the first sentence from the "Linkage" section:
"A name that denotes object, reference, function, type, template, namespace, or value, may have linkage."
...what are the names that denote values? I'm thinking about the enumerators, but I'm not sure. Please help.
 initialization of local variables with thread local storage"
This implies that local variables with thread storage are initialized like the non-local ones whereas they actually are initialized at the first time the control passes through them just as it is for static storage duration, as is mentioned in the standard §6.7[stmt.dcl]/4.