message: Use simplified version of TF_ASSIGN_OR_RETURN for MSVC
diff: @@ -196,6 +196,22 @@ class StatusAdaptorForMacros {
  #define TF_STATUS_MACROS_CONCAT_NAME(x, y) TF_STATUS_MACROS_CONCAT_IMPL(x, y)
  #define TF_STATUS_MACROS_CONCAT_IMPL(x, y) x##y
  +#ifdef _MSC_VER
  +
  +#define TF_ASSIGN_OR_RETURN(lhs, rexpr) \
  + TF_ASSIGN_OR_RETURN_IMPL(TF_STATUS_MACROS_CONCAT_NAME(_status_or_value, \
  + __COUNTER__), \
  + lhs, rexpr)
  +
  +#define TF_ASSIGN_OR_RETURN_IMPL(statusor, lhs, rexpr) \
  + auto statusor = (rexpr); \
  + if (TF_PREDICT_FALSE(!statusor.ok())) { \
  + return statusor.status(); \
  + } \
  + lhs = std::move(statusor.ValueOrDie())
  +
  +#else
  +
  #define TF_ASSIGN_OR_RETURN(...) \
  TF_STATUS_MACRO_GET_VARIADIC_IMPL(__VA_ARGS__, TF_ASSIGN_OR_RETURN_IMPL_3, \
  TF_ASSIGN_OR_RETURN_IMPL_2) \
  @@ -217,4 +233,6 @@ class StatusAdaptorForMacros {
  } \
  lhs = std::move(statusor.ValueOrDie())
  +#endif
  +
  #endif // TENSORFLOW_COMPILER_XLA_STATUS_MACROS_H_
  