You may have a look at the added test-cases in nullability.mm, when my description is too confusing.
When ARC is enabled, clang builds an ImplictCastExpr around the ConditionalOperator. The type that is assigned to the ImplicitCastExpr is derived from the scoping method / function. As the method / function is marked with _Nonnull, clang compares the nullability-attributes of the the ReturnStmt with the nullability-attributes of the method / function, and as they are the same, it generates no warning.
I tried to built a non-intrusive patch. When the type that is assigned to the ImplicitCastExpr comes from the scoping method / function, i remove the nullability-attributes of the type.
Some tests in test/SemaObjC/nullability.m generated different warnings than before. Though, i think that the new ones are better than the old ones, so i would call this a nice little side-improvement.