So far I cannot reproduce this problem. Can you please try adding the following test code to one of your cpp files and try the test the comments describe, and see if you get the correct result or not?
class testEnumTrailingReturnType
{
// Test - triggering Rename here on "ENUM_SHAPE" renames all instances of "ENUM_SHAPE"
// compiling the code successfully proves that none have been missed
enum ENUM_SHAPE { SHAPE_ROUND, SHAPE_TRIANGLE, SHAPE_SQUARE };
auto TrailingTypeSimple(int nValueToConvert)->ENUM_SHAPE;
auto TrailingTypeNoExcept(int nValueToConvert) noexcept -> ENUM_SHAPE;
};
auto testEnumTrailingReturnType::TrailingTypeSimple(int nValueToConvert) ->ENUM_SHAPE
{
if (4 == nValueToConvert) { return SHAPE_SQUARE; }
else if (3 == nValueToConvert) { return SHAPE_TRIANGLE; }
else { return SHAPE_ROUND; }
}
auto testEnumTrailingReturnType::TrailingTypeNoExcept(int nValueToConvert) noexcept -> ENUM_SHAPE
{
if (4 == nValueToConvert) { return SHAPE_SQUARE; }
else if (3 == nValueToConvert) { return SHAPE_TRIANGLE; }
else { return SHAPE_ROUND; }
}