<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<br><div><div>On Jan 17, 2007, at 1:16 PM, Duncan Sands wrote:</div><div><br class="webkit-block-placeholder"></div><div><blockquote type="cite"><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Backported from gcc-4.3.  These should only effect the Ada front-end.</div> </div><br class="webkit-block-placeholder"></blockquote></div><br class="Apple-interchange-newline"><blockquote type="cite"><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Index: gcc.llvm.master/gcc/varasm.c</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">===================================================================</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">--- gcc.llvm.master.orig/gcc/varasm.c<span class="Apple-tab-span" style="white-space:pre">     </span>2007-01-17 21:40:31.000000000 +0100</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">+++ gcc.llvm.master/gcc/varasm.c<span class="Apple-tab-span" style="white-space:pre">     </span>2007-01-17 21:47:45.000000000 +0100</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">@@ -3707,6 +3707,10 @@</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><span class="Apple-converted-space"> <span class="Apple-tab-span" style="white-space:pre"> </span>  </span>&& ((decl_function_context (value) && !DECL_NO_STATIC_CHAIN (value))</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><span class="Apple-converted-space"> <span class="Apple-tab-span" style="white-space:pre">      </span>      </span>|| DECL_NON_ADDR_CONST_P (value)))</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><span class="Apple-converted-space"> <span class="Apple-tab-span" style="white-space:pre">  </span></span>return NULL_TREE;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">+<span class="Apple-converted-space">      </span>/* "&{...}" requires a temporary to hold the constructed</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">+ <span class="Apple-converted-space">        </span>object.<span class="Apple-converted-space">  </span>*/</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">+<span class="Apple-converted-space">      </span>if (value && TREE_CODE (value) == CONSTRUCTOR)</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica">+<span class="Apple-converted-space">        </span>return NULL_TREE;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><span class="Apple-converted-space">       </span>return value;</font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: 12.0px Helvetica"><span class="Apple-converted-space">     </span>case VIEW_CONVERT_EXPR:</font></div> </div></blockquote></div><br><div>This was part of bigger C++ patch. I am hesitated to bring in partial patch without further testing. </div><div><br class="webkit-block-placeholder"></div><div>Please bring in test case and also add "APPLE LOCAL llvm" markers appropriately. Please let us know how you have verified that there is no C++ regression caused by this patch. And why other parts of same bug fix are not required. If this particular part of the patch is necessary for Ada then I'd prefer to bring in entire C++ bug fix after appropriate C++ testing is done.</div><div><br class="webkit-block-placeholder"></div><div>-</div><div>Devang</div></body></html>