Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

#ifndef USING_PYTHON2

some python2 code

#else /* USING_PYTHON2 */

some python3 code

#endif /* USING_PYTHON2 */


#ifdef USING_PYTHON2

   some python3 code

#endif /* USING_PYTHON2 */

to this. Make CERTAIN that the indentation is adjusted as well.

if USING_PYTHON2:

  some python2 code

else:

  some python3 code


if not USING_PYTHON2:

  some python3 code

Yes, there is some cognitive dissonance for changing "#ifndef" to "if", but the rest of the generated code is set up properly to be able to quickly edit the code.

  • Search for all instances of "#ifndef USING_PYTHON2" and change "#ifndef" to "if" and add a trailing ":".
  • Search for all instances of "#else /* USING_PYTHON2 */" and change that to "else:".
  • Remove all instances of "#endif /* USING_PYTHON2 */" from the code.
  • Re-indent the lines in between.


  • You should also search for "#ifdef USING_PYTHON2" and change that to "if not USING_PYTHON2:".

Import Statements

The way that imports of functions found in local files changes in Python3. So change blocks such as this:

...