Microsoft KB Archive/40593

= INFO: Misspelling &quot;Default&quot; Gives No Error =

Article ID: 40593

Article Last Modified on 7/5/2005

-

APPLIES TO


 * Microsoft Visual C++ 1.0 Professional Edition
 * Microsoft Visual C++ 1.5 Professional Edition
 * Microsoft Visual C++ 1.51
 * Microsoft Visual C++ 1.52 Professional Edition
 * Microsoft Visual C++ 1.0 Professional Edition
 * Microsoft Visual C++ 2.0 Professional Edition
 * Microsoft Visual C++ 2.1
 * Microsoft Visual C++ 4.0 Standard Edition
 * Microsoft Visual C++ 5.0 Standard Edition
 * Microsoft Visual C++ 6.0 Service Pack 5

-



This article was previously published under Q40593



It has been reported that when the keyword &quot;default&quot; is misspelled, the C/C++ compiler does not generate an error and the executable code does not execute the &quot;defualt&quot; branch in any case.

This is not a problem with the C/C++ compiler. In C and C++ any name followed by a colon is a label. In a switch statement the case and default keywords are special types of label which are used by the switch statement. When the keyword &quot;default&quot; is spelled incorrectly, it is treated as a label. You could use a goto statement to reference the label. The switch statement, however, does not recognize it. Since a &quot;default:&quot; label is not required by the switch statement, no error is (or can be) generated.

NOTE: It is not good programming practice to jump to a label that is within a switch statement from outside the switch statement.

Additional query words: 8.00 9.00 9.10

Keywords: kbinfo kbcompiler KB40593

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.