<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jun 17, 2010, at 2:56 PM, Nico Weber wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br> <br>  @interface NSObject {}<br> -- (void)respondsToSelector:(SEL&)s : (SEL*)s1;<br> +- (void)respondsToSelector:(const SEL&)s : (SEL*)s1;<br></blockquote><div><br></div><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "><div>Shouldn't non-const SEL references still work?</div></span></div></div></blockquote>Message would be:</div><div><div>t.mm:11:30: error: non-const lvalue reference to type 'SEL' cannot bind to a temporary of type 'SEL'</div><div>    [self respondsToSelector:@selector(setPriority:)];</div><div>                             ^~~~~~~~~~~~~~~~~~~~~~~</div><div><br class="webkit-block-placeholder"></div><div>It is not an lvalue, it cannot be passed by reference. </div><div>Message is coming out of c++ side. Presumably no different that:</div><div><div>void foo(int&);</div><div>int main()</div><div>{</div><div>    foo(10);</div><div>}</div><div><br class="webkit-block-placeholder"></div></div><div><br class="webkit-block-placeholder"></div><div>- Fariborz</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><blockquote type="cite"><div class="gmail_quote"><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "> <div class="im" style="color: rgb(80, 0, 80); "></div></span></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">  - (void) setPriority:(int)p;<br>  - (void)Meth;<br>  @end<br> @@ -12,5 +12,5 @@<br>     [self respondsToSelector:@selector(setPriority:) : &@selector(setPriority:)];<br>  }<br>  - (void) setPriority:(int)p{}<br> -- (void)respondsToSelector:(SEL&)s : (SEL*)s1 {}<br> +- (void)respondsToSelector:(const SEL&)s : (SEL*)s1 {}<br>  @end<br> <br> <br> _______________________________________________<br> cfe-commits mailing list<br> <a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br> </blockquote></div><br></blockquote></div><br></body></html>