public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/64163] New: [5 Regression] r218024 causes qt5 build failure
@ 2014-12-03  7:57 trippels at gcc dot gnu.org
  2014-12-03  8:00 ` [Bug ipa/64163] " pinskia at gcc dot gnu.org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: trippels at gcc dot gnu.org @ 2014-12-03  7:57 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64163

            Bug ID: 64163
           Summary: [5 Regression] r218024 causes qt5 build failure
           Product: gcc
           Version: 5.0
               URL: https://sourceware.org/bugzilla/show_bug.cgi?id=17670
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org
                CC: hubicka at gcc dot gnu.org

Using gold on ppc64, qt5 doesn't build because of r218024.
See https://sourceware.org/bugzilla/show_bug.cgi?id=17670 for further
analysis by Alan.

trippels@gcc2-power8 corelib % cat qmimeglobpattern.ii
class G;
class A
{
public:
  A (G);
};
class B
{
public:
  int m_fn1 ();
};
class QString;
struct C
{
  B ref;
};
template <typename> class QList
{
  C d;
public:
  ~QList ();
  void m_fn2 ();
  void m_fn3 ();
};
class G : public QList<QString>
{
};
struct D
{
  void m_fn4 (const QString &&);
  G m_matchingMimeTypes;
};
class F
{
  G m_fn5 (const QString &) const;
};
template <typename T> QList<T>::~QList ()
{
  if (d.ref.m_fn1 ())
    m_fn3 ();
}
template <typename T>
void
QList<T>::m_fn2 ()
{
  QList ();
}
void
D::m_fn4 (const QString &&)
{
  m_matchingMimeTypes.m_fn2 ();
}
G
F::m_fn5 (const QString &) const
{
  G a;
  for (A b (a);;)
    ;
}

trippels@gcc2-power8 corelib % cat qmimeprovider.ii
class A
{
public:
  int m_fn1 ();
};
class QString
{
public:
  static QString m_fn2 (char *);
};
struct B
{
  A ref;
};
template <typename> class QList
{
  B d;
public:
  ~QList ();
  class const_iterator
  {
  };
  const_iterator m_fn3 ();
  void m_fn4 ();
};
class C
{
  QList<QString> c;
  QList<QString>::const_iterator i;
public:
  C (QList<QString>) : i (c.m_fn3 ()) {}
};
class D
{
public:
  enum StandardLocation
  {
    GenericDataLocation
  };
  static QList<QString> m_fn5 (StandardLocation, QString);
};
QList<QString> a = D::m_fn5 (D::GenericDataLocation, QString::m_fn2 (""));
template <typename T> QList<T>::~QList ()
{
  if (d.ref.m_fn1 ())
    m_fn4 ();
}
void
fn1 ()
{
  C b (a);
}

trippels@gcc2-power8 corelib % g++ -shared -w -O3 -fvisibility=hidden
-std=c++0x qmimeglobpattern.ii qmimeprovider.ii
/home/trippels/bin/ld: internal error in symval_for_branch, at powerpc.cc:6755


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-01-18  9:52 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-03  7:57 [Bug ipa/64163] New: [5 Regression] r218024 causes qt5 build failure trippels at gcc dot gnu.org
2014-12-03  8:00 ` [Bug ipa/64163] " pinskia at gcc dot gnu.org
2014-12-03  8:03 ` jakub at gcc dot gnu.org
2014-12-03  8:11 ` trippels at gcc dot gnu.org
2014-12-03  8:46 ` trippels at gcc dot gnu.org
2014-12-03 10:06 ` rguenth at gcc dot gnu.org
2014-12-03 16:59 ` trippels at gcc dot gnu.org
2014-12-03 22:18 ` amodra at gmail dot com
2014-12-04  7:17 ` trippels at gcc dot gnu.org
2014-12-04 19:33 ` hjl.tools at gmail dot com
2014-12-11 11:45 ` rguenth at gcc dot gnu.org
2015-01-16  4:59 ` hubicka at gcc dot gnu.org
2015-01-16 11:13 ` trippels at gcc dot gnu.org
2015-01-16 11:23 ` trippels at gcc dot gnu.org
2015-01-18  9:52 ` trippels at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).