C/C++, C# and Java parsers do not recognise definition of functions or overloaded operators in case of embeded comments after identifier name and before the list of arguments.
int getMax /* undesarable comment / (int array, int length) {
/* ... */
}
int getMax(int* array, int length) /* here is fine */ {
/* ... */
}
C/C++ parser does not recognise comments within preprocessor statements. These comments are considered to be parts of a define.
#define GET_MAX(a, b)
/* \
* This macros returns \
* maximum from a and b \
*/ \
((a > b) ? a : b)
/*
C# parser does not recognise getters/setters for properties, if there is a comment before a block.
get /* undesarable comment */ {
/* ... */
}
get { /* here comment is fine */
/* ... */
}
Java parser does not recognise anonymous inner classes.
C/C++, C# and Java parsers do not recognise definition of classes/structs/namespaces/interface) in case of embeded comments after keyword and identifier name.
This class is not detected by Metrix++
class /* comment */ MyClass {
/* ... */
}
This class is detected:
class MyClass /* here is fine */ {
/* ... */
}
Java parser does not support parsing of identifiers which have got unicode symbols in name.