https://bugzilla.novell.com/show_bug.cgi?id=718179
https://bugzilla.novell.com/show_bug.cgi?id=718179#c0
Summary: internal compiler error: in build_call_a, at
cp/call.c:332
Classification: openSUSE
Product: openSUSE 11.4
Version: Final
Platform: x86-64
OS/Version: openSUSE 11.4
Status: NEW
Severity: Major
Priority: P5 - None
Component: Development
AssignedTo: pth@suse.com
ReportedBy: giecrilj@stegny.2a.pl
QAContact: qa@suse.de
Found By: ---
Blocker: ---
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:6.0.2) Gecko/20100101
Firefox/6.0.2
g++ fails with an internal compiler error
Reproducible: Always
Steps to Reproduce:
1.
{ cat <<'/* EOF */' >ICE.cpp && g++ -g ICE.cpp; }
#include <string>
#include <vector>
#include <algorithm>
#include
#include
namespace ls {
template
<
class P_C,
class P_T = typename std:: basic_string < P_C >:: traits_type,
class P_A = typename std:: basic_string < P_C, P_T >:: allocator_type >
class file_rec
{
public: typedef file_rec self, &ref; typedef self const &cref;
public: typedef P_C char_type;
public: typedef P_T traits_type; public: typedef P_A allocator_type;
public: typedef std:: basic_string < self:: char_type, self:: traits_type,
self:: allocator_type > string_type;
private: self:: string_type m_name;
public: self:: string_type const &name (void) const { return this -> m_name; }
public:
class get_char_at:
public
::std:: unary_function :: const_reference,
typename self:: string_type:: const_reference >
{
public:
typedef
::std:: unary_function
:: const_reference, typename self::
string_type:: const_reference > inherited;
private: typename self:: string_type:: size_type m_pos; public: get_char_at
(void): m_pos () { }
public:
typename inherited:: result_type
operator () (typename inherited:: argument_type p_r) const { return p_r. name
() [+this -> m_pos]; }
}; /* #ls. get_char_at X */
class as_char_at: public ::boost:: transform_iterator < self:: get_char_at,
typename ::std:: vector < self >:: const_iterator >
{
public:
typedef ::boost:: transform_iterator < self:: get_char_at, typename ::std::
vector < self >:: const_iterator > inherited;
public: as_char_at (typename std:: vector < self >:: const_iterator const
&p_it): inherited (p_it, self:: get_char_at ()) {}
};
};
} /* $ls X */
int main (int, char const *const [])
{
typedef ls:: file_rec < std:: istream:: char_type > file_rec; std:: vector <
file_rec > lv_fr; ::std:: string a_n;
(&::std:: equal_range < file_rec:: as_char_at, char >)
(::boost:: cref (lv_fr). get (). begin (), ::boost:: cref (lv_fr). get (). end
(), a_n [0]);
return +EXIT_FAILURE; } /* !main X */
/* EOF */
Actual Results:
1.
ICE.cpp: In function ‘int main(int, const char* const*)’:
ICE.cpp:47:91: internal compiler error: in build_call_a, at cp/call.c:332
Please submit a full bug report,
with preprocessed source if appropriate.
See http://bugs.opensuse.org/ for instructions.
Expected Results:
1.
Successful compilation or ill-formed source message.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.