Community
Participate
Working Groups
Eclipse IDE for C/C++ Developers Version: Kepler Service Release 1 Build id: 20130919-0819 Reproducing the bug: Consider the following code: ======== Original Version ======== #define Id_0 void func_0() { float LocalVar_0 = 10; #ifdef Id_0 LocalVar_0 = -1; #endif } void Function_0(float LocalVar_1) { float LocalVar_0 = 0; LocalVar_0 = -1; } ================================== Now, let's the extract a function named "&old" Applying the refactoring: ========== Refactored ============ #define Id_0 int &old() { return 10; } void func_0() { float LocalVar_0 = &old(); #ifdef Id_0 LocalVar_0 = -1; #endif } void Function_0(float LocalVar_1) { float LocalVar_0 = 0; LocalVar_0 = -1; } ================================= The tool shouldn't allow to apply invalid transformations like this. Notice that now the program has a compilation error. It would be good if it was possible to prevent incorrect extractions at least by checking if new function has a valid name. Thanks in advance.
Correcting: * Now, let's extract a function named "&old"