public inbox for overseers@sourceware.org
 help / color / mirror / Atom feed
* Access to bugzilla
@ 2017-06-02 17:06 Olivier Kannengieser
  0 siblings, 0 replies; only message in thread
From: Olivier Kannengieser @ 2017-06-02 17:06 UTC (permalink / raw)
  To: overseers

Hi,

I am gcc user. I am using the C++ concept TS intensively and it happens I
find bugs.

I think I have find that might be critical, I would like to report.

Could you please give me an access to bugzilla.

Regards,
Olivier Kannengieser.

PS:

To prove I am not a rebot, you can check that this email address appears on
articles you can find on elsevier or google scholar.

Also to prove my honesty, folowing is the report I will fill in bugzilla:

GCC VERSION: (gcc -v)
    Utilisation des specs internes.
    COLLECT_GCC=3Dgcc
    COLLECT_LTO_WRAPPER=3D/usr/local/gcc7/libexec/gcc/x86_64-pc-li
nux-gnu/7.1.1/lto-wrapper
    Cible : x86_64-pc-linux-gnu
    Configur=C3=A9 avec: ../configure --prefix=3D/usr/local/gcc7 --disable-=
multilib
    Mod=C3=A8le de thread: posix
    gcc version 7.1.1 20170503 (GCC)


BUG DESCRIPTION:
gcc stops to perform member access violation rule checking.
If in a compound requirement using a partialy specialized concept as
placeholder, then gcc stop any access schecking test (one can have access
to private member of classes).

BUGGY CODE:
This code should not compile:

    template<class T,class Y>
    concept bool AnyConcept =3D true;

    template<class T>
    concept bool OtherConcept =3D
      requires(const T& a)
      {
      //Gcc do not bug without the the following line.
      {a && a} -> AnyConcept<bool>;
      {a && a} -> bool;
      };

    class a_class
       {
       int f(int){return 33;} //private member
       };

    int main()
      {
      a_class obj;
      obj.f(10);  //Error not reported by gcc.
      }

NOT BUGGY CODE:
This code shows normal gcc behavior, an error is reported:
"int a_class::f(int) is private in this context"

    template<class T,class Y>
    concept bool AnyConcept =3D true;

    template<class T>
    concept bool OtherConcept =3D
      requires(const T& a)
      {
      //The bug stops if the following line is removed:
      //{a && a} -> AnyConcept<bool>;
      {a && a} -> bool;
      };

    class a_class
       {
       int f(int){return 33;} //private member
       };

    int main()
      {
      a_class obj;
      obj.f(10); //Error private member access violation
      }

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-06-02 17:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-02 17:06 Access to bugzilla Olivier Kannengieser

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).