Hy, if I am not wrong into_string from StrExt is deprecated and .to_owned() should be preferred (but there is also a IntoString and a ToString trait…). Thought generally having a macro witch just calls a method on the passed value sounds like a bad idea.
But due to the frequent usage of str with to_string, into_string and to_owned I think the existence of a standard macro like owned! is justified maybe even preferable.
Also reading owned!("hallo") pretty clearly says what is does and looks more clear than a lot of .to_owned() calls and is less ambiguous then a str!("halo") macro.