gnu/81809: ropeimpl.h in gcc 3.4.2 broken

Li-Lun Wang (Leland Wang) llwang at infor.org
Thu Jun 2 13:30:02 GMT 2005


>Number:         81809
>Category:       gnu
>Synopsis:       ropeimpl.h in gcc 3.4.2 broken
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 02 13:30:01 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Li-Lun Wang (Leland Wang)
>Release:        FreeBSD 6.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD ll-X31 6.0-CURRENT FreeBSD 6.0-CURRENT #0: Thu Jun  2 01:16:16 CST 2005     root at ll-X31:/usr/obj/usr/src/sys/X31  i386


	
>Description:
/usr/include/c++/3.4/ext/ropeimpl.h provided with gcc 3.4.2 is broken,
making sources which include ext/ropeimpl.h fail to build.

Ref: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17259
	
>How-To-Repeat:
Write a C++ source file with the line
#include <ext/ropeimpl.h>
and try to build it.
	
>Fix:
--- src/contrib/libstdc++/include/ext/ropeimpl.h.orig	Wed Jul 28 11:12:05 2004
+++ src/contrib/libstdc++/include/ext/ropeimpl.h	Thu Jun  2 21:26:59 2005
@@ -1295,7 +1295,7 @@
     __right_len = __right->_M_size;
     if (_Rope_constants::_S_leaf == __left->_M_tag) {
 	_RopeLeaf* __l = (_RopeLeaf*) __left;
-	if (_RopeRep::_S_leaf == __right->_M_tag) {
+	if (_Rope_constants::_S_leaf == __right->_M_tag) {
 	    _RopeLeaf* __r = (_RopeLeaf*) __right;
 	    return lexicographical_compare_3way(
 			__l->_M_data, __l->_M_data + __left_len,

	


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list