The following code gives compilation error:

class NonCopyable
{
        NonCopyable( const NonCopyable & );
        NonCopyable & operator=( const NonCopyable & );
    public:
        NonCopyable() { ; }
};

void test( const NonCopyable & )
{ ; }

int main()
{
    test( NonCopyable() );
}


pcatd12:tmp> g++ -v test.cxx 
Reading specs from
/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/specs
Configured with: ../gcc-3.4.4/configure
--prefix=/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344 --enable-shared
Thread model: posix
gcc version 3.4.4

/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/libexec/gcc/i686-pc-linux-gnu/3.4.4/cc1plus
-quiet -v -D_GNU_SOURCE test.cxx -quiet -dumpbase test.cxx -mtune=pentiumpro
-auxbase test -version -o /tmp/kolos/cc9ywMuC.s
ignoring nonexistent directory
"/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:

/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../include/c++/3.4.4

/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../include/c++/3.4.4/i686-pc-linux-gnu

/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/../../../../include/c++/3.4.4/backward
 /usr/local/include
 /afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/include

/afs/cern.ch/sw/lcg/contrib/gcc/3.4.4/slc3_ia32_gcc344/lib/gcc/i686-pc-linux-gnu/3.4.4/include
 /usr/include
End of search list.
GNU C++ version 3.4.4 (i686-pc-linux-gnu)
        compiled by GNU C version 3.2.3 20030502 (Red Hat Linux 3.2.3-52).
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128090
test.cxx: In function `int main()':
test.cxx:3: error: `NonCopyable::NonCopyable(const NonCopyable&)' is private
test.cxx:15: error: within this context


-- 
           Summary: GCC complains about private copy constructor, which must
                    not be used at that point
           Product: gcc
           Version: 3.4.4
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: Serguei dot Kolos at cern dot ch
  GCC host triplet: Linux 2.4.21-37.EL.cernsmp


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25325

Reply via email to