Issue 1078 - psprint/source/fontsubset/list.h conflicts with STL
Summary: psprint/source/fontsubset/list.h conflicts with STL
Status: CLOSED FIXED
Alias: None
Product: porting
Classification: Code
Component: documentation (show other issues)
Version: 633
Hardware: SGI IRIX
: P2 Trivial (vote)
Target Milestone: ---
Assignee: philipp.lohmann
QA Contact: issues@www
URL:
Keywords:
Depends on:
Blocks: 1041 1283
  Show dependency tree
 
Reported: 2001-06-21 12:52 UTC by issues@www
Modified: 2003-12-08 16:00 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
psprint/source/fontmanager/fontmanager.cxx : Define NO_LIST to remove conflict (483 bytes, patch)
2003-12-06 14:52 UTC, issues@www
no flags Details | Diff
psprint/source/printergfx/glyphset.cxx : as above (478 bytes, patch)
2003-12-06 14:52 UTC, issues@www
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description issues@www 2001-06-21 12:52:11 UTC
psprint/source/fontsubset/list.h:84 has a typedef 'list' which conflicts with 
libstdc++ STL, and I would expect many other STLs.

% dmake
cd source; dmake subdmake=true  product="full"
generated makefile.rc detected
cd fontmanager; dmake subdmake=true  subdmake="true" product="full"
------------------------------
Making: ../../unxirxm3.pro/slo/fontmanager.obj
g++ -c -I. -I. -I../inc -I../../inc -I../../unx/inc -I../../unxirxm3.pro/inc -
I. -
I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unxirxm
3.pro/inc -
I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unxirxm
3.pro/inc/external -
I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solenv/unxirxm3/in
c -I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solenv/inc -
I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/res   -
I/usr/include/CC/stlport -
I/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solenv/inc/Xp31 -
I/projects/sise/openoffice/devel/workpits/java_1.2.2/usr/java//include -
I/projects/sise/openoffice/devel/workpits/java_1.2.2/usr/java//include/irix -
I/projects/sise/openoffice/devel/workpits/java_1.2.2/usr/java//include/native_th
reads/include         -I. -I../../res -I. -O2  -I../fontsubset -fno-for-scope -
fpermissive    -fpic -DIRIX -DUNX -DVCL -DGCC -DC295 -DMIPS -DUSE_PSPRINT -
DTF_UCB -DENABLEUNICODE -DTF_FILTER -DCVER=C295 -D_USE_NAMESPACE -DVCL -
D_STD_NO_NAMESPACE -D_VOS_NO_NAMESPACE -D_UNO_NO_NAMESPACE -D__DMAKE -DUNIX -
DSUPD=632 -DBUILD=6483 -DSOLAR_PLUGIN -DVCL -DSO3 -DPRODUCT -DNDEBUG -
DPRODUCT_FULL -DOPTIMIZE -DEXCEPTIONS_ON -DGUI  -DSRC632  -DTF_ONE51 -
DSHAREDLIB -D_DLL_  -DMULTITHREAD  -
o ../../unxirxm3.pro/slo/fontmanager.o /projects/sise/openoffice/devel/workpits/
OO632B_GNU/workarea/psprint/source/fontmanager/fontmanager.cxx
In file included 
from /projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unx
irxm3.pro/inc/tools/string.hxx:7,
                 
from /projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unx
irxm3.pro/inc/tools/urlobj.hxx:7,
                 
from /projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/psprint/source
/fontmanager/fontmanager.cxx:79:
/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unxirxm3
.pro/inc/tools/solar.h: In function `char Abs(char)':
/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/solver/632/unxirxm3
.pro/inc/tools/solar.h:347: warning: comparison is always true due to limited 
range of data type
In file included from ../fontsubset/sft.h:105,
                 
from /projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/psprint/source
/fontmanager/fontmanager.cxx:107:
../fontsubset/list.h: At top level:
../fontsubset/list.h:84: `typedef struct _list * list' redeclared as different 
kind of symbol
/usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/include/g++/stl_list.h:247: 
previous declaration of `template <class _Tp, class _Alloc = class 
allocator<_Tp1> > class list<_Tp,_Alloc>'
/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/psprint/source/font
manager/fontmanager.cxx: In method `int psp::PrintFontManager::addFontFile
(const rtl::OString &, int)':
/projects/sise/openoffice/devel/workpits/OO632B_GNU/workarea/psprint/source/font
manager/fontmanager.cxx:844: confused by earlier errors, bailing out
dmake:  Error code 1, while making '../../unxirxm3.pro/slo/fontmanager.obj'
---* TG_SLO.MK *---
dmake:  Error code 255, while making 'fontmanager'
---* TG_SLO.MK *---
dmake:  Error code 255, while making 'source'
---* TG_SLO.MK *---
Comment 1 issues@www 2001-06-21 13:04:05 UTC
Created attachment 295 [details]
psprint/source/fontmanager/fontmanager.cxx : Define NO_LIST to remove conflict
Comment 2 issues@www 2001-06-21 13:07:33 UTC
Created attachment 296 [details]
psprint/source/printergfx/glyphset.cxx : as above
Comment 3 issues@www 2001-07-19 22:44:17 UTC
Seeing this in new 633 build.
Moving to new meta bug, and correcting STL meta bug dependancy.
Comment 4 Martin Hollmichel 2001-07-26 14:28:47 UTC
Herbert, your job ?
Comment 5 hdu@apache.org 2001-07-26 16:08:35 UTC
psprint/source/fontsubset looks like your "baustelle".
Comment 6 philipp.lohmann 2001-07-26 16:29:29 UTC
I checked the corresponding changes in top level. If you want a 633 branch you 
probably have to talk to Sander since i cannot change the OpenOffice tags.

But this compile error either means that you stl is NOT in an own namespace 
(usually std) or your compiler has a problem with namespaces; the list in 
fontsubset is a C-define and therefore in global namespace.
Comment 7 issues@www 2001-07-27 00:47:26 UTC
I believe that libstdc++ prior to gcc 3.0 does have namespace problems ... and 
that could be the cause of this.  If this breaks other builds then please pull 
it out, and I will dig a little deeper for a workable solution.
Comment 8 philipp.lohmann 2001-07-27 08:36:05 UTC
I don't think it will break any build. I just wanted to note that this could 
be a sign for a larger problem. What i wonder is that the othe gcc builds do 
not have this problem.
Comment 9 issues@www 2001-07-29 02:44:58 UTC
That would be because I am trying to use libstdc++ instead of STLport.
Comment 10 philipp.lohmann 2003-12-08 16:00:59 UTC
closing long since fixed issue