www.digitalmars.com Home | Search | C & C++ | D | DMDScript | News Groups | index | prev | next
Archives

D Programming
D
D.gnu
digitalmars.D
digitalmars.D.bugs
digitalmars.D.dtl
digitalmars.D.dwt
digitalmars.D.announce
digitalmars.D.learn
digitalmars.D.debugger

C/C++ Programming
c++
c++.announce
c++.atl
c++.beta
c++.chat
c++.command-line
c++.dos
c++.dos.16-bits
c++.dos.32-bits
c++.idde
c++.mfc
c++.rtl
c++.stl
c++.stl.hp
c++.stl.port
c++.stl.sgi
c++.stlsoft
c++.windows
c++.windows.16-bits
c++.windows.32-bits
c++.wxwindows

digitalmars.empire
digitalmars.DMDScript

c++ - [bug]

↑ ↓ ← "Matthew" <matthew hat.stlsoft.dot.org> writes:
Compiler gives:

dmc -D_DEBUG  -c    -wx  -Ae  -Ar        -DWIN32 -DSTLSOFT_UNITTEST -D_STLSO
FT_COMPILE_VERBOSE  -IH:\STLSoft\Releases\1.8.x\STLSoft\include -IH:\STLSo
ft\Releases\1.8.x\STLSoft\include\inprogress          -o.\rangelib.unittest.
0.obj ..\..\rangelib\unittest.0.cpp
Digital Mars C/C++ 8.45.1
Standard library is STLport
H:\STLSoft\Releases\1.8.x\STLSoft\include\stlsoft_meta.h(704) : Error:
ambiguous reference to symbol
Had: stlsoft::has_value_type_function(...)
and: stlsoft::has_value_type_function(const volatile value_typeT*)
--- errorlevel 1

--- errorlevel 1


The included file, an extract from stlsoft/meta.hpp, compiles fine.

Because there's no context given to the compilation error above, there's
precious little chance of making an informed guess as to the problem,
without spending a huge amount of time chopping down. I don't have that time
in the foreseeable future, so STLSoft's going to have to ship with DMC++ not
properly supported, or with a reduced set of verified components. :-(

Any chance that more context can be put into compiler error messages?
Dec 14 2005
→ "Matthew" <matthew hat.stlsoft.dot.org> writes:
Forgot the code

"Matthew" <matthew hat.stlsoft.dot.org> wrote in message
news:dnqcks$22bu$1 digitaldaemon.com...
 Compiler gives:

 FT_COMPILE_VERBOSE  -IH:\STLSoft\Releases\1.8.x\STLSoft\include -IH:\STLSo

 0.obj ..\..\rangelib\unittest.0.cpp
 Digital Mars C/C++ 8.45.1
 Standard library is STLport
 H:\STLSoft\Releases\1.8.x\STLSoft\include\stlsoft_meta.h(704) : Error:
 ambiguous reference to symbol
 Had: stlsoft::has_value_type_function(...)
 and: stlsoft::has_value_type_function(const volatile value_typeT*)
 --- errorlevel 1

 --- errorlevel 1


 The included file, an extract from stlsoft/meta.hpp, compiles fine.

 Because there's no context given to the compilation error above, there's
 precious little chance of making an informed guess as to the problem,
 without spending a huge amount of time chopping down. I don't have that

 in the foreseeable future, so STLSoft's going to have to ship with DMC++

 properly supported, or with a reduced set of verified components. :-(

 Any chance that more context can be put into compiler error messages?

Dec 14 2005
"Walter Bright" <newshound digitalmars.com> writes:
"Matthew" <matthew hat.stlsoft.dot.org> wrote in message 
news:dnqcks$22bu$1 digitaldaemon.com...
 Compiler gives:

 dmc -D_DEBUG  -c    -wx  -Ae  -Ar        -DWIN32 -DSTLSOFT_UNITTEST -D_STLSO
 FT_COMPILE_VERBOSE  -IH:\STLSoft\Releases\1.8.x\STLSoft\include -IH:\STLSo
 
 es\1.8.x\STLSoft\include\inprogress          -o.\rangelib.unittest.
 0.obj ..\..\rangelib\unittest.0.cpp
 Digital Mars C/C++ 8.45.1
 Standard library is STLport
 H:\STLSoft\Releases\1.8.x\STLSoft\include\stlsoft_meta.h(704) : Error:
 ambiguous reference to symbol
 Had: stlsoft::has_value_type_function(...)
 and: stlsoft::has_value_type_function(const volatile value_typeT*)
 --- errorlevel 1

 --- errorlevel 1


 The included file, an extract from stlsoft/meta.hpp, compiles fine.

I can't debug an example that works fine!
 Because there's no context given to the compilation error above, there's
 precious little chance of making an informed guess as to the problem,
 without spending a huge amount of time chopping down. I don't have that 
 time
 in the foreseeable future, so STLSoft's going to have to ship with DMC++ 
 not
 properly supported, or with a reduced set of verified components. :-(

The first thing I'd try is delete all the code that is lexically after the error happens. Next, compile with -e -l, and see if the error can be reproduced in the .lst file. That at least cuts it down to one file.
 Any chance that more context can be put into compiler error messages?

I'd look at who is calling has_value_type_function.
Dec 19 2005
↑ ↓ → "Matthew" <matthew stlsoft.com> writes:
 Any chance that more context can be put into compiler error messages?

I'd look at who is calling has_value_type_function.

That's a bit tough when the compiler doesn't give any context. ;-(
Dec 20 2005