strange clang-format of long return types

When formatting long return types, newer versions of clang-format seem to do something strange. What used to be formatted like:

template <typename Ty>
inline typename std::enable_if<std::is_floating_point<Ty>::value,
                                Vec2<Ty>>::type
VectorNormalize(const Vec2<Ty>& V) {

Now gets formatted like:

template <typename Ty>
inline
     typename std::enable_if<std::is_floating_point<Ty>::value, Vec2<Ty>>::type
     VectorNormalize(const Vec2<Ty>& V) {

It seems strange to have the function name indented like that. Is there an option to control this soft of thing directly? Im using the following options with clang-format 3.6.0:

Feel free to file a bug for this on llvm.org/bugs (component should be the Formatter).

I think we are misinterpreting the “inline” as part of the type, which we shouldn’t.

That being said, you might not need “inline” here…