core/com.nokia.carbide.cpp.codescanner/html/pref_codescanner_03.htm
author fturovic <frank.turovich@nokia.com>
Tue, 07 Apr 2009 13:55:47 -0500
branchRCL_2_0
changeset 69 cab50ba61335
parent 2 d760517a8095
child 93 4f14af134d0e
permissions -rw-r--r--
added info on IAD custom rules
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
cawthron
parents:
diff changeset
     1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head>
cawthron
parents:
diff changeset
     2
<title>CodeScanner Rules preferences </title>
cawthron
parents:
diff changeset
     3
<link rel="StyleSheet" href="../book.css" type="text/css"/>
cawthron
parents:
diff changeset
     4
<script language="JavaScript" src="PLUGINS_ROOT/org.eclipse.help/livehelp.js"></script>
cawthron
parents:
diff changeset
     5
</head>
cawthron
parents:
diff changeset
     6
   <body>
cawthron
parents:
diff changeset
     7
   <div class="Head1">
cawthron
parents:
diff changeset
     8
<h2>CodeScanner Rules preferences </h2>
cawthron
parents:
diff changeset
     9
</div>
cawthron
parents:
diff changeset
    10
   <p>Use the <img src="images/command_link.png" width="16" height="12" border="0" alt="" /> <a class="command-link" href='javascript:executeCommand("org.eclipse.ui.window.preferences(preferencePageId=com.nokia.carbide.cpp.codescanner.ui.CSPreferencePage)")'>
cawthron
parents:
diff changeset
    11
   CodeScanner</a> <b>Rules</b> page in the <b>Preferences</b> window  or the project's <a href="#cs_Projects">properties</a> window to enable or disable the rules used to validate Symbian OS project files. Rules are divided by  category and have a severity assigned to them by CodeScanner, but you can use the Edit control to change those settings to better suit your  work environment. You can also sort the rules by clicking a column title.  </p>
cawthron
parents:
diff changeset
    12
   <p align="center"><img src="images/pref_cs_rules.png" width="705" height="603" alt="" /></p>
cawthron
parents:
diff changeset
    13
   <p class="figure">Figure 1. Rules global settings </p>
cawthron
parents:
diff changeset
    14
   <table width="700"
cawthron
parents:
diff changeset
    15
border="0" cellpadding="2" cellspacing="0">
cawthron
parents:
diff changeset
    16
	 <tr valign="top"><th width="221" class="Cell">Name</th><th width="558" class="Cell">Function</th></tr>
cawthron
parents:
diff changeset
    17
         <tr valign="top">
cawthron
parents:
diff changeset
    18
           <td class="Cell"><b>Configure Project Specific Settings... </b></td>
cawthron
parents:
diff changeset
    19
           <td class="Cell"><p>Click to open the project  <b>Properties</b> window and configure CodeScanner for that specific project. </p>
cawthron
parents:
diff changeset
    20
           <p class="note"><b>NOTE</b> Only visible in the global CodeScanner preference panels. This also applies to the File Filters and General pages</p></td>
cawthron
parents:
diff changeset
    21
         </tr>
cawthron
parents:
diff changeset
    22
         <tr valign="top">
cawthron
parents:
diff changeset
    23
           <td class="Cell"><b>CodeScanner rules </b></td>
cawthron
parents:
diff changeset
    24
           <td class="Cell"><p>The list of all CodeScanner rules and their active state. </p>           </td>
cawthron
parents:
diff changeset
    25
        </tr>
cawthron
parents:
diff changeset
    26
         <tr valign="top">
cawthron
parents:
diff changeset
    27
           <td class="Cell"><b>Edit...</b></td>
cawthron
parents:
diff changeset
    28
           <td class="Cell">Opens the currently selected rule in the edit rule dialog where you can set the categroy and severity of the rule. </td>
cawthron
parents:
diff changeset
    29
         </tr>
cawthron
parents:
diff changeset
    30
         <tr valign="top">
cawthron
parents:
diff changeset
    31
           <td class="Cell"><b>Enable All </b></td>
cawthron
parents:
diff changeset
    32
           <td class="Cell">Activates all the rules in the CodeScanner rules list. </td>
cawthron
parents:
diff changeset
    33
         </tr>
cawthron
parents:
diff changeset
    34
         <tr valign="top">
cawthron
parents:
diff changeset
    35
           <td class="Cell"><b>Disable All </b></td>
cawthron
parents:
diff changeset
    36
           <td class="Cell">Deactivates all the rules in the CodeScanner rules list. </td>
cawthron
parents:
diff changeset
    37
         </tr>
cawthron
parents:
diff changeset
    38
         <tr valign="top">
cawthron
parents:
diff changeset
    39
           <td class="Cell"><b>Details</b></td>
cawthron
parents:
diff changeset
    40
           <td class="Cell">Displays helpful advice to help you avoid triggering the selected rule in your source code and projects. </td>
cawthron
parents:
diff changeset
    41
         </tr>
cawthron
parents:
diff changeset
    42
   </table>
cawthron
parents:
diff changeset
    43
	 <p>&nbsp;</p>
cawthron
parents:
diff changeset
    44
	 <p>The following table indicates an example of  rules listed in the Rules tab and associated error messages that would be generated in the Problems view.</p>
cawthron
parents:
diff changeset
    45
	 <table border="0" cellspacing="0" cellpadding="2">
cawthron
parents:
diff changeset
    46
	 <tr valign="top"><th width="294" class="Cell">Name</th>
cawthron
parents:
diff changeset
    47
	   <th width="585" class="Cell">Description</th>
cawthron
parents:
diff changeset
    48
	 </tr>
cawthron
parents:
diff changeset
    49
cawthron
parents:
diff changeset
    50
       <tr>
cawthron
parents:
diff changeset
    51
         <td width="294" valign="top" class="code"><p>accessArrayElementWithoutCheck</p></td>
cawthron
parents:
diff changeset
    52
         <td width="585" valign="top"><p>Array element accessed by At()    function without checking index is within array range</p></td>
cawthron
parents:
diff changeset
    53
       </tr>
cawthron
parents:
diff changeset
    54
       <tr>
cawthron
parents:
diff changeset
    55
         <td width="294" valign="top" class="code"><p>accessArrayElementWithoutCheck2</p></td>
cawthron
parents:
diff changeset
    56
         <td width="585" valign="top"><p>Array element accessed by []    without checking range</p></td>
cawthron
parents:
diff changeset
    57
       </tr>
cawthron
parents:
diff changeset
    58
       <tr>
cawthron
parents:
diff changeset
    59
         <td width="294" valign="top" class="code"><p>activestart</p></td>
cawthron
parents:
diff changeset
    60
         <td width="585" valign="top"><p>Using CActiveScheduler::Start</p></td>
cawthron
parents:
diff changeset
    61
       </tr>
cawthron
parents:
diff changeset
    62
       <tr>
cawthron
parents:
diff changeset
    63
         <td width="294" valign="top" class="code"><p>activestop</p></td>
cawthron
parents:
diff changeset
    64
         <td width="585" valign="top"><p>Using CActiveScheduler::Stop</p></td>
cawthron
parents:
diff changeset
    65
       </tr>
cawthron
parents:
diff changeset
    66
       <tr>
cawthron
parents:
diff changeset
    67
         <td width="294" valign="top" class="code"><p>arraypassing</p></td>
cawthron
parents:
diff changeset
    68
         <td width="585" valign="top"><p>Passing arrays by value rather    than reference</p></td>
cawthron
parents:
diff changeset
    69
       </tr>
cawthron
parents:
diff changeset
    70
       <tr>
cawthron
parents:
diff changeset
    71
         <td width="294" valign="top" class="code"><p>arrayptrcleanup</p></td>
cawthron
parents:
diff changeset
    72
         <td width="585" valign="top"><p>Using local CArrayPtr classes    without cleanup items</p></td>
cawthron
parents:
diff changeset
    73
       </tr>
cawthron
parents:
diff changeset
    74
       <tr>
cawthron
parents:
diff changeset
    75
         <td width="294" valign="top" class="code"><p>assertdebuginvariant</p></td>
cawthron
parents:
diff changeset
    76
         <td width="585" valign="top"><p>__ASSERT_DEBUG with    User::Invariant</p></td>
cawthron
parents:
diff changeset
    77
       </tr>
cawthron
parents:
diff changeset
    78
       <tr>
cawthron
parents:
diff changeset
    79
         <td width="294" valign="top" class="code"><p>baddefines</p></td>
cawthron
parents:
diff changeset
    80
         <td width="585" valign="top"><p>Lowercase definition names</p></td>
cawthron
parents:
diff changeset
    81
       </tr>
cawthron
parents:
diff changeset
    82
       <tr>
cawthron
parents:
diff changeset
    83
         <td width="294" valign="top" class="code"><p>baseconstruct</p></td>
cawthron
parents:
diff changeset
    84
         <td width="585" valign="top"><p>Leaving function called before    BaseConstructL()</p></td>
cawthron
parents:
diff changeset
    85
       </tr>
cawthron
parents:
diff changeset
    86
       <tr>
cawthron
parents:
diff changeset
    87
         <td width="294" valign="top" class="code"><p>callActiveObjectWithoutCheckingOrStopping</p></td>
cawthron
parents:
diff changeset
    88
         <td width="585" valign="top"><p>Active object called without checking whether it is active or canceling it first</p></td>
cawthron
parents:
diff changeset
    89
       </tr>
cawthron
parents:
diff changeset
    90
       <tr>
cawthron
parents:
diff changeset
    91
         <td width="294" valign="top" class="code"><p>changenotification</p></td>
cawthron
parents:
diff changeset
    92
         <td width="585" valign="top"><p>Using RSAVarChangeNotify to see System Agent changes</p></td>
cawthron
parents:
diff changeset
    93
       </tr>
cawthron
parents:
diff changeset
    94
       <tr>
cawthron
parents:
diff changeset
    95
         <td width="294" valign="top" class="code"><p>cleanup</p></td>
cawthron
parents:
diff changeset
    96
         <td width="585" valign="top"><p>CleanupStack::Pop(AndDestroy) parameters</p></td>
cawthron
parents:
diff changeset
    97
       </tr>
cawthron
parents:
diff changeset
    98
       <tr>
cawthron
parents:
diff changeset
    99
         <td width="294" valign="top" class="code"><p>commentcode</p></td>
cawthron
parents:
diff changeset
   100
         <td width="585" valign="top"><p>Commented-out code</p></td>
cawthron
parents:
diff changeset
   101
       </tr>
cawthron
parents:
diff changeset
   102
       <tr>
cawthron
parents:
diff changeset
   103
         <td width="294" valign="top" class="code"><p>connect</p></td>
cawthron
parents:
diff changeset
   104
         <td width="585" valign="top"><p>Ignoring Connect() return value</p></td>
cawthron
parents:
diff changeset
   105
       </tr>
cawthron
parents:
diff changeset
   106
       <tr>
cawthron
parents:
diff changeset
   107
         <td width="294" valign="top" class="code"><p>ConnectAndDontCloseMemberVariable</p></td>
cawthron
parents:
diff changeset
   108
         <td width="585" valign="top"><p>Calling Connect() or Open() on a member variable without calling Close() in the destructor</p></td>
cawthron
parents:
diff changeset
   109
       </tr>
cawthron
parents:
diff changeset
   110
       <tr>
cawthron
parents:
diff changeset
   111
         <td width="294" valign="top" class="code"><p>constnames</p></td>
cawthron
parents:
diff changeset
   112
         <td width="585" valign="top"><p>Badly-named constants</p></td>
cawthron
parents:
diff changeset
   113
       </tr>
cawthron
parents:
diff changeset
   114
       <tr>
cawthron
parents:
diff changeset
   115
         <td width="294" valign="top" class="code"><p>consttdescptr</p></td>
cawthron
parents:
diff changeset
   116
         <td width="585" valign="top"><p>Const descriptor pointer as argument</p></td>
cawthron
parents:
diff changeset
   117
       </tr>
cawthron
parents:
diff changeset
   118
       <tr>
cawthron
parents:
diff changeset
   119
         <td width="294" valign="top" class="code"><p>controlornull</p></td>
cawthron
parents:
diff changeset
   120
         <td width="585" valign="top"><p>Accessing return value of ControlOrNull()</p></td>
cawthron
parents:
diff changeset
   121
       </tr>
cawthron
parents:
diff changeset
   122
       <tr>
cawthron
parents:
diff changeset
   123
         <td width="294" valign="top" class="code"><p>ctltargettype</p></td>
cawthron
parents:
diff changeset
   124
         <td width="585" valign="top"><p>Use of targettype ctl</p></td>
cawthron
parents:
diff changeset
   125
       </tr>
cawthron
parents:
diff changeset
   126
       <tr>
cawthron
parents:
diff changeset
   127
         <td width="294" valign="top" class="code"><p>debugrom</p></td>
cawthron
parents:
diff changeset
   128
         <td width="585" valign="top"><p>Debug components in ROM</p></td>
cawthron
parents:
diff changeset
   129
       </tr>
cawthron
parents:
diff changeset
   130
       <tr>
cawthron
parents:
diff changeset
   131
         <td width="294" valign="top" class="code"><p>declarename</p></td>
cawthron
parents:
diff changeset
   132
         <td width="585" valign="top"><p>Use of __DECLARE_NAME</p></td>
cawthron
parents:
diff changeset
   133
       </tr>
cawthron
parents:
diff changeset
   134
       <tr>
cawthron
parents:
diff changeset
   135
         <td width="294" valign="top" class="code"><p>deleteMemberVariable</p></td>
cawthron
parents:
diff changeset
   136
         <td width="585" valign="top"><p>Member variable deleted incorrectly</p></td>
cawthron
parents:
diff changeset
   137
       </tr>
cawthron
parents:
diff changeset
   138
       <tr>
cawthron
parents:
diff changeset
   139
         <td width="294" valign="top" class="code"><p>destructor</p></td>
cawthron
parents:
diff changeset
   140
         <td width="585" valign="top"><p>Pointer access in destructors</p></td>
cawthron
parents:
diff changeset
   141
       </tr>
cawthron
parents:
diff changeset
   142
       <tr>
cawthron
parents:
diff changeset
   143
         <td width="294" valign="top" class="code"><p>doubleSemiColon</p></td>
cawthron
parents:
diff changeset
   144
         <td width="585" valign="top"><p>Use of double semicolon</p></td>
cawthron
parents:
diff changeset
   145
       </tr>
cawthron
parents:
diff changeset
   146
       <tr>
cawthron
parents:
diff changeset
   147
         <td width="294" valign="top" class="code"><p>driveletters</p></td>
cawthron
parents:
diff changeset
   148
         <td width="585" valign="top"><p>Hard-coded drive letters</p></td>
cawthron
parents:
diff changeset
   149
       </tr>
cawthron
parents:
diff changeset
   150
       <tr>
cawthron
parents:
diff changeset
   151
         <td width="294" valign="top" class="code"><p>eikbuttons</p></td>
cawthron
parents:
diff changeset
   152
         <td width="585" valign="top"><p>Checks that the R_EIK_BUTTONS_* resources are not being used</p></td>
cawthron
parents:
diff changeset
   153
       </tr>
cawthron
parents:
diff changeset
   154
       <tr>
cawthron
parents:
diff changeset
   155
         <td width="294" valign="top" class="code"><p>eikonenvstatic</p></td>
cawthron
parents:
diff changeset
   156
         <td width="585" valign="top"><p>Using CEikonEnv::Static</p></td>
cawthron
parents:
diff changeset
   157
       </tr>
cawthron
parents:
diff changeset
   158
       <tr>
cawthron
parents:
diff changeset
   159
         <td width="294" valign="top" class="code"><p>enummembers</p></td>
cawthron
parents:
diff changeset
   160
         <td width="585" valign="top"><p>Enums with badly-named members</p></td>
cawthron
parents:
diff changeset
   161
       </tr>
cawthron
parents:
diff changeset
   162
       <tr>
cawthron
parents:
diff changeset
   163
         <td width="294" valign="top" class="code"><p>enumnames</p></td>
cawthron
parents:
diff changeset
   164
         <td width="585" valign="top"><p>Badly-named enums</p></td>
cawthron
parents:
diff changeset
   165
       </tr>
cawthron
parents:
diff changeset
   166
       <tr>
cawthron
parents:
diff changeset
   167
         <td width="294" valign="top" class="code"><p>exportinline</p></td>
cawthron
parents:
diff changeset
   168
         <td width="585" valign="top"><p>Exporting inline functions</p></td>
cawthron
parents:
diff changeset
   169
       </tr>
cawthron
parents:
diff changeset
   170
       <tr>
cawthron
parents:
diff changeset
   171
         <td width="294" valign="top" class="code"><p>exportpurevirtual</p></td>
cawthron
parents:
diff changeset
   172
         <td width="585" valign="top"><p>Exporting pure virtual functions</p></td>
cawthron
parents:
diff changeset
   173
       </tr>
cawthron
parents:
diff changeset
   174
       <tr>
cawthron
parents:
diff changeset
   175
         <td width="294" valign="top" class="code"><p>externaldriveletters</p></td>
cawthron
parents:
diff changeset
   176
         <td width="585" valign="top"><p>Hard-coded external drive letters</p></td>
cawthron
parents:
diff changeset
   177
       </tr>
cawthron
parents:
diff changeset
   178
       <tr>
cawthron
parents:
diff changeset
   179
         <td width="294" valign="top" class="code"><p>foff</p></td>
cawthron
parents:
diff changeset
   180
         <td width="585" valign="top"><p>Use of _FOFF</p></td>
cawthron
parents:
diff changeset
   181
       </tr>
cawthron
parents:
diff changeset
   182
       <tr>
cawthron
parents:
diff changeset
   183
         <td width="294" valign="top" class="code"><p>forbiddenwords</p></td>
cawthron
parents:
diff changeset
   184
         <td width="585" valign="top"><p>Use of forbidden words in header files</p></td>
cawthron
parents:
diff changeset
   185
       </tr>
cawthron
parents:
diff changeset
   186
       <tr>
cawthron
parents:
diff changeset
   187
         <td width="294" valign="top" class="code"><p>forgottoputptroncleanupstack</p></td>
cawthron
parents:
diff changeset
   188
         <td width="585" valign="top"><p>Neglected to put variable on cleanup stack</p></td>
cawthron
parents:
diff changeset
   189
       </tr>
cawthron
parents:
diff changeset
   190
       <tr>
cawthron
parents:
diff changeset
   191
         <td width="294" valign="top" class="code"><p>friend</p></td>
cawthron
parents:
diff changeset
   192
         <td width="585" valign="top"><p>Use of friends</p></td>
cawthron
parents:
diff changeset
   193
       </tr>
cawthron
parents:
diff changeset
   194
       <tr>
cawthron
parents:
diff changeset
   195
         <td width="294" valign="top" class="code"><p>goto</p></td>
cawthron
parents:
diff changeset
   196
         <td width="585" valign="top"><p>Use of goto</p></td>
cawthron
parents:
diff changeset
   197
       </tr>
cawthron
parents:
diff changeset
   198
       <tr>
cawthron
parents:
diff changeset
   199
         <td width="294" valign="top" class="code"><p>ifassignments</p></td>
cawthron
parents:
diff changeset
   200
         <td width="585" valign="top"><p>Assignment in an If statement</p></td>
cawthron
parents:
diff changeset
   201
       </tr>
cawthron
parents:
diff changeset
   202
       <tr>
cawthron
parents:
diff changeset
   203
         <td width="294" valign="top" class="code"><p>ifpreprocessor</p></td>
cawthron
parents:
diff changeset
   204
         <td width="585" valign="top"><p>Use of #if in .h files</p></td>
cawthron
parents:
diff changeset
   205
       </tr>
cawthron
parents:
diff changeset
   206
       <tr>
cawthron
parents:
diff changeset
   207
         <td width="294" valign="top" class="code"><p>inheritanceorder</p></td>
cawthron
parents:
diff changeset
   208
         <td width="585" valign="top"><p>Incorrect inheritance order of M and C classes</p></td>
cawthron
parents:
diff changeset
   209
       </tr>
cawthron
parents:
diff changeset
   210
       <tr>
cawthron
parents:
diff changeset
   211
         <td width="294" valign="top" class="code"><p>intleaves</p></td>
cawthron
parents:
diff changeset
   212
         <td width="585" valign="top"><p>Methods that leave AND return a TInt error</p></td>
cawthron
parents:
diff changeset
   213
       </tr>
cawthron
parents:
diff changeset
   214
       <tr>
cawthron
parents:
diff changeset
   215
         <td width="294" valign="top" class="code"><p>jmp</p></td>
cawthron
parents:
diff changeset
   216
         <td width="585" valign="top"><p>Use of setjmp and/or longjmp</p></td>
cawthron
parents:
diff changeset
   217
       </tr>
cawthron
parents:
diff changeset
   218
       <tr>
cawthron
parents:
diff changeset
   219
         <td width="294" valign="top" class="code"><p>leave</p></td>
cawthron
parents:
diff changeset
   220
         <td width="585" valign="top"><p>Leaving functions called in non-leaving functions</p></td>
cawthron
parents:
diff changeset
   221
       </tr>
cawthron
parents:
diff changeset
   222
       <tr>
cawthron
parents:
diff changeset
   223
         <td width="294" valign="top" class="code"><p>LeaveNoError</p></td>
cawthron
parents:
diff changeset
   224
         <td width="585" valign="top"><p>Leaving with KErrNone</p></td>
cawthron
parents:
diff changeset
   225
       </tr>
cawthron
parents:
diff changeset
   226
       <tr>
cawthron
parents:
diff changeset
   227
         <td width="294" valign="top" class="code"><p>leavingoperators</p></td>
cawthron
parents:
diff changeset
   228
         <td width="585" valign="top"><p>Leaving functions called in operator functions</p></td>
cawthron
parents:
diff changeset
   229
       </tr>
cawthron
parents:
diff changeset
   230
       <tr>
cawthron
parents:
diff changeset
   231
         <td width="294" valign="top" class="code"><p>LFunctionCantLeave</p></td>
cawthron
parents:
diff changeset
   232
         <td width="585" valign="top"><p>L-functions that cannot leave</p></td>
cawthron
parents:
diff changeset
   233
       </tr>
cawthron
parents:
diff changeset
   234
       <tr>
cawthron
parents:
diff changeset
   235
         <td width="294" valign="top" class="code"><p>longlines</p></td>
cawthron
parents:
diff changeset
   236
         <td width="585" valign="top"><p>Overly long lines of code</p></td>
cawthron
parents:
diff changeset
   237
       </tr>
cawthron
parents:
diff changeset
   238
       <tr>
cawthron
parents:
diff changeset
   239
         <td width="294" valign="top" class="code"><p>magicnumbers</p></td>
cawthron
parents:
diff changeset
   240
         <td width="585" valign="top"><p>Use of magic numbers</p></td>
cawthron
parents:
diff changeset
   241
       </tr>
cawthron
parents:
diff changeset
   242
       <tr>
cawthron
parents:
diff changeset
   243
         <td width="294" valign="top" class="code"><p>mclassdestructor</p></td>
cawthron
parents:
diff changeset
   244
         <td width="585" valign="top"><p>M class has destructor</p></td>
cawthron
parents:
diff changeset
   245
       </tr>
cawthron
parents:
diff changeset
   246
       <tr>
cawthron
parents:
diff changeset
   247
         <td width="294" valign="top" class="code"><p>memberlc</p></td>
cawthron
parents:
diff changeset
   248
         <td width="585" valign="top"><p>Assigning LC methods to member variables</p></td>
cawthron
parents:
diff changeset
   249
       </tr>
cawthron
parents:
diff changeset
   250
       <tr>
cawthron
parents:
diff changeset
   251
         <td width="294" valign="top" class="code"><p>membervariablecallld</p></td>
cawthron
parents:
diff changeset
   252
         <td width="585" valign="top"><p>Calling LD function on member variable</p></td>
cawthron
parents:
diff changeset
   253
       </tr>
cawthron
parents:
diff changeset
   254
       <tr>
cawthron
parents:
diff changeset
   255
         <td width="294" valign="top" class="code"><p>missingcancel</p></td>
cawthron
parents:
diff changeset
   256
         <td width="585" valign="top"><p>Cancel() not called in active object's destructor</p></td>
cawthron
parents:
diff changeset
   257
       </tr>
cawthron
parents:
diff changeset
   258
       <tr>
cawthron
parents:
diff changeset
   259
         <td width="294" valign="top" class="code"><p>missingcclass</p></td>
cawthron
parents:
diff changeset
   260
         <td width="585" valign="top"><p>C class not inheriting from another C class</p></td>
cawthron
parents:
diff changeset
   261
       </tr>
cawthron
parents:
diff changeset
   262
       <tr>
cawthron
parents:
diff changeset
   263
         <td width="294" valign="top" class="code"><p>mmpsourcepath</p></td>
cawthron
parents:
diff changeset
   264
         <td width="585" valign="top"><p>Use of absolute path names in MMP files</p></td>
cawthron
parents:
diff changeset
   265
       </tr>
cawthron
parents:
diff changeset
   266
       <tr>
cawthron
parents:
diff changeset
   267
         <td width="294" valign="top" class="code"><p>multilangrsc</p></td>
cawthron
parents:
diff changeset
   268
         <td width="585" valign="top"><p>Not using    BaflUtils::NearestLanguageFile() when loading a resource file</p></td>
cawthron
parents:
diff changeset
   269
       </tr>
cawthron
parents:
diff changeset
   270
       <tr>
cawthron
parents:
diff changeset
   271
         <td width="294" valign="top" class="code"><p>multipledeclarations</p></td>
cawthron
parents:
diff changeset
   272
         <td width="585" valign="top"><p>Multiple declarations on one line</p></td>
cawthron
parents:
diff changeset
   273
       </tr>
cawthron
parents:
diff changeset
   274
       <tr>
cawthron
parents:
diff changeset
   275
         <td width="294" valign="top" class="code"><p>multipleinheritance</p></td>
cawthron
parents:
diff changeset
   276
         <td width="585" valign="top"><p>Non M-class multiple inheritance</p></td>
cawthron
parents:
diff changeset
   277
       </tr>
cawthron
parents:
diff changeset
   278
       <tr>
cawthron
parents:
diff changeset
   279
         <td width="294" valign="top" class="code"><p>mydocs</p></td>
cawthron
parents:
diff changeset
   280
         <td width="585" valign="top"><p>Hard-coded mydocs directory strings</p></td>
cawthron
parents:
diff changeset
   281
       </tr>
cawthron
parents:
diff changeset
   282
       <tr>
cawthron
parents:
diff changeset
   283
         <td width="294" valign="top" class="code"><p>namespace</p></td>
cawthron
parents:
diff changeset
   284
         <td width="585" valign="top"><p>Use of namespace</p></td>
cawthron
parents:
diff changeset
   285
       </tr>
cawthron
parents:
diff changeset
   286
       <tr>
cawthron
parents:
diff changeset
   287
         <td width="294" valign="top" class="code"><p>newlreferences</p></td>
cawthron
parents:
diff changeset
   288
         <td width="585" valign="top"><p>NewL() returning a reference</p></td>
cawthron
parents:
diff changeset
   289
       </tr>
cawthron
parents:
diff changeset
   290
       <tr>
cawthron
parents:
diff changeset
   291
         <td width="294" valign="top" class="code"><p>noleavetrap</p></td>
cawthron
parents:
diff changeset
   292
         <td width="585" valign="top"><p>TRAP used with no leaving functions</p></td>
cawthron
parents:
diff changeset
   293
       </tr>
cawthron
parents:
diff changeset
   294
       <tr>
cawthron
parents:
diff changeset
   295
         <td width="294" valign="top" class="code"><p>nonconsthbufc</p></td>
cawthron
parents:
diff changeset
   296
         <td width="585" valign="top"><p>Non-const HBufC* parameter passing</p></td>
cawthron
parents:
diff changeset
   297
       </tr>
cawthron
parents:
diff changeset
   298
       <tr>
cawthron
parents:
diff changeset
   299
         <td width="294" valign="top" class="code"><p>nonconsttdesc</p></td>
cawthron
parents:
diff changeset
   300
         <td width="585" valign="top"><p>Non-const TDesC&amp; parameter passing</p></td>
cawthron
parents:
diff changeset
   301
       </tr>
cawthron
parents:
diff changeset
   302
       <tr>
cawthron
parents:
diff changeset
   303
         <td width="294" valign="top" class="code"><p>nonleavenew</p></td>
cawthron
parents:
diff changeset
   304
         <td width="585" valign="top"><p>Use of new without (ELeave)</p></td>
cawthron
parents:
diff changeset
   305
       </tr>
cawthron
parents:
diff changeset
   306
       <tr>
cawthron
parents:
diff changeset
   307
         <td width="294" valign="top" class="code"><p>nonunicodeskins</p></td>
cawthron
parents:
diff changeset
   308
         <td width="585" valign="top"><p>Non-Unicode skins</p></td>
cawthron
parents:
diff changeset
   309
       </tr>
cawthron
parents:
diff changeset
   310
       <tr>
cawthron
parents:
diff changeset
   311
         <td width="294" valign="top" class="code"><p>null</p></td>
cawthron
parents:
diff changeset
   312
         <td width="585" valign="top"><p>NULL equality check</p></td>
cawthron
parents:
diff changeset
   313
       </tr>
cawthron
parents:
diff changeset
   314
       <tr>
cawthron
parents:
diff changeset
   315
         <td width="294" valign="top" class="code"><p>open</p></td>
cawthron
parents:
diff changeset
   316
         <td width="585" valign="top"><p>Ignoring Open() return value</p></td>
cawthron
parents:
diff changeset
   317
       </tr>
cawthron
parents:
diff changeset
   318
       <tr>
cawthron
parents:
diff changeset
   319
         <td width="294" valign="top" class="code"><p>pointertoarrays</p></td>
cawthron
parents:
diff changeset
   320
         <td width="585" valign="top"><p>Pointer to arrays as members of a C class</p></td>
cawthron
parents:
diff changeset
   321
       </tr>
cawthron
parents:
diff changeset
   322
       <tr>
cawthron
parents:
diff changeset
   323
         <td width="294" valign="top" class="code"><p>pragmadisable</p></td>
cawthron
parents:
diff changeset
   324
         <td width="585" valign="top"><p>Use of #pragma warning</p></td>
cawthron
parents:
diff changeset
   325
       </tr>
cawthron
parents:
diff changeset
   326
       <tr>
cawthron
parents:
diff changeset
   327
         <td width="294" valign="top" class="code"><p>pragmamessage</p></td>
cawthron
parents:
diff changeset
   328
         <td width="585" valign="top"><p>Use of #pragma message</p></td>
cawthron
parents:
diff changeset
   329
       </tr>
cawthron
parents:
diff changeset
   330
       <tr>
cawthron
parents:
diff changeset
   331
         <td width="294" valign="top" class="code"><p>pragmaother</p></td>
cawthron
parents:
diff changeset
   332
         <td width="585" valign="top"><p>Use of #pragma other than warning and message</p></td>
cawthron
parents:
diff changeset
   333
       </tr>
cawthron
parents:
diff changeset
   334
       <tr>
cawthron
parents:
diff changeset
   335
         <td width="294" valign="top" class="code"><p>privateinheritance</p></td>
cawthron
parents:
diff changeset
   336
         <td width="585" valign="top"><p>Use of private inheritance</p></td>
cawthron
parents:
diff changeset
   337
       </tr>
cawthron
parents:
diff changeset
   338
       <tr>
cawthron
parents:
diff changeset
   339
         <td width="294" valign="top" class="code"><p>pushaddrvar</p></td>
cawthron
parents:
diff changeset
   340
         <td width="585" valign="top"><p>Pushing address of a variable onto the cleanup stack</p></td>
cawthron
parents:
diff changeset
   341
       </tr>
cawthron
parents:
diff changeset
   342
       <tr>
cawthron
parents:
diff changeset
   343
         <td width="294" valign="top" class="code"><p>pushmember</p></td>
cawthron
parents:
diff changeset
   344
         <td width="585" valign="top"><p>Pushing data members onto the cleanup stack</p></td>
cawthron
parents:
diff changeset
   345
       </tr>
cawthron
parents:
diff changeset
   346
       <tr>
cawthron
parents:
diff changeset
   347
         <td width="294" valign="top" class="code"><p>readresource</p></td>
cawthron
parents:
diff changeset
   348
         <td width="585" valign="top"><p>Using ReadResource() instead of ReadResourceL()</p></td>
cawthron
parents:
diff changeset
   349
       </tr>
cawthron
parents:
diff changeset
   350
       <tr>
cawthron
parents:
diff changeset
   351
         <td width="294" valign="top" class="code"><p>resourcenotoncleanupstack</p></td>
cawthron
parents:
diff changeset
   352
         <td width="585" valign="top"><p>Neglected to put resource objects on cleanup stack</p></td>
cawthron
parents:
diff changeset
   353
       </tr>
cawthron
parents:
diff changeset
   354
       <tr>
cawthron
parents:
diff changeset
   355
         <td width="294" valign="top" class="code"><p>resourcesonheap</p></td>
cawthron
parents:
diff changeset
   356
         <td width="585" valign="top"><p>Resource objects on the heap</p></td>
cawthron
parents:
diff changeset
   357
       </tr>
cawthron
parents:
diff changeset
   358
       <tr>
cawthron
parents:
diff changeset
   359
         <td width="294" valign="top" class="code"><p>returndescriptoroutofscope</p></td>
cawthron
parents:
diff changeset
   360
         <td width="585" valign="top"><p>Return descriptor out of scope</p></td>
cawthron
parents:
diff changeset
   361
       </tr>
cawthron
parents:
diff changeset
   362
       <tr>
cawthron
parents:
diff changeset
   363
         <td width="294" valign="top" class="code"><p>rfs</p></td>
cawthron
parents:
diff changeset
   364
         <td width="585" valign="top"><p>Use of non-pointer/reference RFs</p></td>
cawthron
parents:
diff changeset
   365
       </tr>
cawthron
parents:
diff changeset
   366
       <tr>
cawthron
parents:
diff changeset
   367
         <td width="294" valign="top" class="code"><p>rssnames</p></td>
cawthron
parents:
diff changeset
   368
         <td width="585" valign="top"><p>Duplicate RSS names</p></td>
cawthron
parents:
diff changeset
   369
       </tr>
cawthron
parents:
diff changeset
   370
       <tr>
cawthron
parents:
diff changeset
   371
         <td width="294" valign="top" class="code"><p>stringliterals</p></td>
cawthron
parents:
diff changeset
   372
         <td width="585" valign="top"><p>Use of _L string literals</p></td>
cawthron
parents:
diff changeset
   373
       </tr>
cawthron
parents:
diff changeset
   374
       <tr>
cawthron
parents:
diff changeset
   375
         <td width="294" valign="top" class="code"><p>stringsinresourcefiles</p></td>
cawthron
parents:
diff changeset
   376
         <td width="585" valign="top"><p>Strings in RSS or RA files</p></td>
cawthron
parents:
diff changeset
   377
       </tr>
cawthron
parents:
diff changeset
   378
       <tr>
cawthron
parents:
diff changeset
   379
         <td width="294" valign="top" class="code"><p>struct</p></td>
cawthron
parents:
diff changeset
   380
         <td width="585" valign="top"><p>Use of struct</p></td>
cawthron
parents:
diff changeset
   381
       </tr>
cawthron
parents:
diff changeset
   382
       <tr>
cawthron
parents:
diff changeset
   383
         <td width="294" valign="top" class="code"><p>tcclasses</p></td>
cawthron
parents:
diff changeset
   384
         <td width="585" valign="top"><p>T classes inheriting from C classes</p></td>
cawthron
parents:
diff changeset
   385
       </tr>
cawthron
parents:
diff changeset
   386
       <tr>
cawthron
parents:
diff changeset
   387
         <td width="294" valign="top" class="code"><p>tclassdestructor</p></td>
cawthron
parents:
diff changeset
   388
         <td width="585" valign="top"><p>T class has destructor</p></td>
cawthron
parents:
diff changeset
   389
       </tr>
cawthron
parents:
diff changeset
   390
       <tr>
cawthron
parents:
diff changeset
   391
         <td width="294" valign="top" class="code"><p>todocomments</p></td>
cawthron
parents:
diff changeset
   392
         <td width="585" valign="top"><p>&quot;To do&rdquo; comments</p></td>
cawthron
parents:
diff changeset
   393
       </tr>
cawthron
parents:
diff changeset
   394
       <tr>
cawthron
parents:
diff changeset
   395
         <td width="294" valign="top" class="code"><p>trapcleanup</p></td>
cawthron
parents:
diff changeset
   396
         <td width="585" valign="top"><p>Use of LC function in TRAPs</p></td>
cawthron
parents:
diff changeset
   397
       </tr>
cawthron
parents:
diff changeset
   398
       <tr>
cawthron
parents:
diff changeset
   399
         <td width="294" valign="top" class="code"><p>trapeleave</p></td>
cawthron
parents:
diff changeset
   400
         <td width="585" valign="top"><p>Trapping new(ELeave)</p></td>
cawthron
parents:
diff changeset
   401
       </tr>
cawthron
parents:
diff changeset
   402
       <tr>
cawthron
parents:
diff changeset
   403
         <td width="294" valign="top" class="code"><p>traprunl</p></td>
cawthron
parents:
diff changeset
   404
         <td width="585" valign="top"><p>Trapping of (Do)RunL() rather than using RunError()</p></td>
cawthron
parents:
diff changeset
   405
       </tr>
cawthron
parents:
diff changeset
   406
       <tr>
cawthron
parents:
diff changeset
   407
         <td width="294" valign="top" class="code"><p>trspassing</p></td>
cawthron
parents:
diff changeset
   408
         <td width="585" valign="top"><p>Passing TRequestStatus parameters by value</p></td>
cawthron
parents:
diff changeset
   409
       </tr>
cawthron
parents:
diff changeset
   410
       <tr>
cawthron
parents:
diff changeset
   411
         <td width="294" valign="top" class="code"><p>uids</p></td>
cawthron
parents:
diff changeset
   412
         <td width="585" valign="top"><p>Duplicate UIDs</p></td>
cawthron
parents:
diff changeset
   413
       </tr>
cawthron
parents:
diff changeset
   414
       <tr>
cawthron
parents:
diff changeset
   415
         <td width="294" valign="top" class="code"><p>uncompressedaif</p></td>
cawthron
parents:
diff changeset
   416
         <td width="585" valign="top"><p>Uncompressed AIFs in ROM</p></td>
cawthron
parents:
diff changeset
   417
       </tr>
cawthron
parents:
diff changeset
   418
       <tr>
cawthron
parents:
diff changeset
   419
         <td width="294" valign="top" class="code"><p>uncompressedbmp</p></td>
cawthron
parents:
diff changeset
   420
         <td width="585" valign="top"><p>Uncompressed bitmaps in ROM</p></td>
cawthron
parents:
diff changeset
   421
       </tr>
cawthron
parents:
diff changeset
   422
       <tr>
cawthron
parents:
diff changeset
   423
         <td width="294" valign="top" class="code"><p>unicodesource</p></td>
cawthron
parents:
diff changeset
   424
         <td width="585" valign="top"><p>Unicode source files</p></td>
cawthron
parents:
diff changeset
   425
       </tr>
cawthron
parents:
diff changeset
   426
       <tr>
cawthron
parents:
diff changeset
   427
         <td width="294" valign="top" class="code"><p>userafter</p></td>
cawthron
parents:
diff changeset
   428
         <td width="585" valign="top"><p>Use of User::After</p></td>
cawthron
parents:
diff changeset
   429
       </tr>
cawthron
parents:
diff changeset
   430
       <tr>
cawthron
parents:
diff changeset
   431
         <td width="294" valign="top" class="code"><p>userfree</p></td>
cawthron
parents:
diff changeset
   432
         <td width="585" valign="top"><p>Using User::Free directly</p></td>
cawthron
parents:
diff changeset
   433
       </tr>
cawthron
parents:
diff changeset
   434
       <tr>
cawthron
parents:
diff changeset
   435
         <td width="294" valign="top" class="code"><p>userWaitForRequest</p></td>
cawthron
parents:
diff changeset
   436
         <td width="585" valign="top"><p>Use of User::WaitForRequest</p></td>
cawthron
parents:
diff changeset
   437
       </tr>
cawthron
parents:
diff changeset
   438
       <tr>
cawthron
parents:
diff changeset
   439
         <td width="294" valign="top" class="code"><p>variablenames</p></td>
cawthron
parents:
diff changeset
   440
         <td width="585" valign="top"><p>Local variables with member/argument names</p></td>
cawthron
parents:
diff changeset
   441
       </tr>
cawthron
parents:
diff changeset
   442
       <tr>
cawthron
parents:
diff changeset
   443
         <td width="294" valign="top" class="code"><p>voidparameter</p></td>
cawthron
parents:
diff changeset
   444
         <td width="585" valign="top"><p>Void parameter explicitly declared</p></td>
cawthron
parents:
diff changeset
   445
       </tr>
cawthron
parents:
diff changeset
   446
       <tr>
cawthron
parents:
diff changeset
   447
         <td width="294" valign="top" class="code"><p>worryingcomments</p></td>
cawthron
parents:
diff changeset
   448
         <td width="585" valign="top"><p>Worrying comments</p></td>
cawthron
parents:
diff changeset
   449
       </tr>
cawthron
parents:
diff changeset
   450
     </table>
cawthron
parents:
diff changeset
   451
   <p>&nbsp;</p>
cawthron
parents:
diff changeset
   452
	 <h3><a name="cs_Projects" id="cs_Projects"></a>CodeScanner for projects </h3>
cawthron
parents:
diff changeset
   453
	 <p>CodeScanner options can also be set at the project level in the <a href="pref_codescanner_01.htm#cs_Projects">Properties</a> window. Right-click the project and choose <strong>Properties</strong>, then select the <strong>Carbide.c++ &gt; Carbide CodeScanner</strong> element in the properties  list. Click a tab to view the appropriate page and set its options. </p>
cawthron
parents:
diff changeset
   454
	 <p align="left">CodeScanner options specific to the project:</p>
cawthron
parents:
diff changeset
   455
	 <table width="700"
cawthron
parents:
diff changeset
   456
border="0" cellpadding="2" cellspacing="0">
cawthron
parents:
diff changeset
   457
       <tr valign="top">
cawthron
parents:
diff changeset
   458
         <th width="203" class="Cell">Name</th>
cawthron
parents:
diff changeset
   459
         <th width="487" class="Cell">Description</th>
cawthron
parents:
diff changeset
   460
       </tr>
cawthron
parents:
diff changeset
   461
       <tr valign="top">
cawthron
parents:
diff changeset
   462
         <td class="Cell"><strong>Enable Project Specific Settings </strong></td>
cawthron
parents:
diff changeset
   463
         <td class="Cell">Activate to set project specific CodeScanner settings. By default a project in the workspace uses the global CodeScanner settings unless this option is activated. </td>
cawthron
parents:
diff changeset
   464
       </tr>
cawthron
parents:
diff changeset
   465
       <tr valign="top">
cawthron
parents:
diff changeset
   466
         <td class="Cell"><b>Configure Workspace Settings... </b></td>
cawthron
parents:
diff changeset
   467
         <td class="Cell"><p>Click to open the <b>Preferences</b> window and configure CodeScanner for the workspace. </p>
cawthron
parents:
diff changeset
   468
             <p class="note"><b>NOTE</b> Only visible in the project CodeScanner property panels. </p></td>
cawthron
parents:
diff changeset
   469
       </tr>
cawthron
parents:
diff changeset
   470
     </table>
cawthron
parents:
diff changeset
   471
	 <p>&nbsp;</p>
cawthron
parents:
diff changeset
   472
	 <h5>Other references</h5>
cawthron
parents:
diff changeset
   473
	 <ul>
cawthron
parents:
diff changeset
   474
	   <li><a href="pref_codescanner_01.htm">CodeScanner General </a></li>
cawthron
parents:
diff changeset
   475
	   <li><a href="pref_codescanner_02.htm">CodeScanner File Filters</a></li>
cawthron
parents:
diff changeset
   476
   </ul>
cawthron
parents:
diff changeset
   477
	 <div id="footer">Copyright &copy; 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
cawthron
parents:
diff changeset
   478
   </body>
cawthron
parents:
diff changeset
   479
   </html>
cawthron
parents:
diff changeset
   480