This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/16276] G++ generates local references to linkonce sections


------- Additional Comments From hjl at lucon dot org  2004-07-08 15:35 -------
Your testcase won't even compile with gcc 3.4.1:

/usr/gcc-3.4/bin/g++ -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\"
-DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\"
-DPACKAGE=\"linkoncebug\" -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1
-DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -I. -I. -I../.. -g -O2 -c
firstvigramodule.cpp  -fPIC -DPIC -o .libs/firstvigramodule.o
In file included from ../../vigra/stdimage.hxx:27,
                 from ../../vigra/edgedetection.hxx:31,
                 from firstvigramodule.cpp:4:
../../vigra/basicimage.hxx: In member function `PIXELTYPE&
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::operator*() const':
../../vigra/basicimage.hxx:289: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx:289: error: (if you use `-fpermissive', G++ will
accept your code, but allowing the use of an undeclared name is deprecated)
../../vigra/basicimage.hxx: In member function `PIXELTYPE*
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::operator->() const':
../../vigra/basicimage.hxx:294: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `PIXELTYPE&
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::operator[](const vigra::Diff2D&)
const':
../../vigra/basicimage.hxx:299: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `PIXELTYPE&
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::operator()(int, int) const':
../../vigra/basicimage.hxx:304: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `PIXELTYPE*
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::operator[](int) const':
../../vigra/basicimage.hxx:309: error: `y' undeclared (first use this function)
../../vigra/basicimage.hxx:309: error: (Each undeclared identifier is reported
only once for each function it appears in.)
../../vigra/basicimage.hxx:309: error: `x' undeclared (first use this function)
../../vigra/basicimage.hxx: In member function `PIXELTYPE*
vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::rowIterator() const':
../../vigra/basicimage.hxx:313: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function
`vigra::IteratorAdaptor<vigra::LineBasedColumnIteratorPolicy<vigra::BasicImageIterator<PIXELTYPE,
ITERATOR> > > vigra::BasicImageIterator<PIXELTYPE, ITERATOR>::columnIterator()
const':
../../vigra/basicimage.hxx:318: error: there are no arguments to `line' that
depend on a template parameter, so a declaration of `line' must be available
../../vigra/basicimage.hxx:318: error: `x' undeclared (first use this function)
../../vigra/basicimage.hxx: In member function `const PIXELTYPE&
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::operator*() const':
../../vigra/basicimage.hxx:422: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `const PIXELTYPE*
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::operator->() const':
../../vigra/basicimage.hxx:427: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `const PIXELTYPE&
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::operator[](const
vigra::Diff2D&) const':
../../vigra/basicimage.hxx:432: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `const PIXELTYPE&
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::operator()(int, int) const':
../../vigra/basicimage.hxx:437: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function `const PIXELTYPE*
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::operator[](int) const':
../../vigra/basicimage.hxx:442: error: `y' undeclared (first use this function)
../../vigra/basicimage.hxx:442: error: `x' undeclared (first use this function)
../../vigra/basicimage.hxx: In member function `const PIXELTYPE*
vigra::ConstBasicImageIterator<PIXELTYPE, ITERATOR>::rowIterator() const':
../../vigra/basicimage.hxx:446: error: there are no arguments to `current' that
depend on a template parameter, so a declaration of `current' must be available
../../vigra/basicimage.hxx: In member function
`vigra::IteratorAdaptor<vigra::LineBasedColumnIteratorPolicy<vigra::ConstBasicImageIterator<PIXELTYPE,
ITERATOR> > > vigra::ConstBasicImageIterator<PIXELTYPE,
ITERATOR>::columnIterator() const':
../../vigra/basicimage.hxx:451: error: there are no arguments to `line' that
depend on a template parameter, so a declaration of `line' must be available
../../vigra/basicimage.hxx:451: error: `x' undeclared (first use this function)
In file included from ../../vigra/iteratortraits.hxx:27,
                 from ../../vigra/stdimage.hxx:28,
                 from ../../vigra/edgedetection.hxx:31,
                 from firstvigramodule.cpp:4:
../../vigra/accessor.hxx: In member function `std::pair<typename
Acc1::value_type, typename Acc2::value_type> vigra::MultiImageAccessor2<Iter1,
Acc1, Iter2, Acc2>::operator()(DIFFERENCE) const':
../../vigra/accessor.hxx:951: error: `i' undeclared (first use this function)
In file included from ../../vigra/stdimage.hxx:30,
                 from ../../vigra/edgedetection.hxx:31,
                 from firstvigramodule.cpp:4:
../../vigra/rgbvalue.hxx: In member function `VALUETYPE&
vigra::RGBValue<VALUETYPE>::red()':
../../vigra/rgbvalue.hxx:161: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `VALUETYPE&
vigra::RGBValue<VALUETYPE>::green()':
../../vigra/rgbvalue.hxx:165: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `VALUETYPE&
vigra::RGBValue<VALUETYPE>::blue()':
../../vigra/rgbvalue.hxx:169: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `const VALUETYPE&
vigra::RGBValue<VALUETYPE>::red() const':
../../vigra/rgbvalue.hxx:173: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `const VALUETYPE&
vigra::RGBValue<VALUETYPE>::green() const':
../../vigra/rgbvalue.hxx:177: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `const VALUETYPE&
vigra::RGBValue<VALUETYPE>::blue() const':
../../vigra/rgbvalue.hxx:181: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `void
vigra::RGBValue<VALUETYPE>::setRed(V)':
../../vigra/rgbvalue.hxx:206: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `void
vigra::RGBValue<VALUETYPE>::setGreen(V)':
../../vigra/rgbvalue.hxx:212: error: `data_' undeclared (first use this function)
../../vigra/rgbvalue.hxx: In member function `void
vigra::RGBValue<VALUETYPE>::setBlue(V)':
../../vigra/rgbvalue.hxx:218: error: `data_' undeclared (first use this function)
In file included from ../../vigra/edgedetection.hxx:34,
                 from firstvigramodule.cpp:4:
../../vigra/separableconvolution.hxx: In member function `void
vigra::Kernel1D<ARITHTYPE>::initAveraging(int, ARITHTYPE)':
../../vigra/separableconvolution.hxx:1537: error: `i' undeclared (first use this
function)


-- 


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]