Thread overview | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
April 11, 2004 Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Using the STLPort 4.5.3 configured to work with Digital Mars, when I compile this program with the -A switch: class C { private: void f(); }; class D { friend void C::f(); }; I get: # define __DFL_TMPL_PARAM( classname, defval ) class classname = defval ^ C:\DigitalMars\stlport\stlport\stl/_config.h(370) : Preprocessor error : '_STLP_DEFAULT_TYPE_PARAM' is already defined --- errorlevel 1 but if I compile without the -A switch, there is no error. Of course there should be an error in strict Ansi mode ( 11.4 para 7 says "A name nominated by a friend declaration shall be accessible in the scope of the class containing the friend declaration. " ), but I certainly wouldn't expect a preprocessing error coming out of stlport. Notice that I have included no files, which makes the error doubly curious. Is this a fault of STLPort rather than Digital Mars ? I notice the latest STLPort is 4.6. Is there a version configured for Digital Mars using that latest version which perhaps doesn't have this bug ? |
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Edward Diener | Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote: > Is this a > fault of STLPort rather than Digital Mars ? I notice the latest STLPort is > 4.6. Is there a version configured for Digital Mars using that latest > version which perhaps doesn't have this bug ? "-A" and STLport have issues coexisting. |
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Scott Michel | Scott Michel wrote:
> Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote:
>> Is
>> this a fault of STLPort rather than Digital Mars ? I notice the
>> latest STLPort is
>> 4.6. Is there a version configured for Digital Mars using that latest
>> version which perhaps doesn't have this bug ?
>
> "-A" and STLport have issues coexisting.
That is pretty succinct. Are either parties, Digital Mars and STLPort, aware of that and attempting to make peace and live amicably together with their child -A ?
|
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Edward Diener | Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote: > Scott Michel wrote: >> Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote: >>> Is >>> this a fault of STLPort rather than Digital Mars ? I notice the >>> latest STLPort is >>> 4.6. Is there a version configured for Digital Mars using that latest >>> version which perhaps doesn't have this bug ? >> >> "-A" and STLport have issues coexisting. > > That is pretty succinct. Are either parties, Digital Mars and STLPort, aware of that and attempting to make peace and live amicably together with their child -A ? All standards are subject to interpretation and DMC++ is no exception (although I happen to like the interpretation.) STLport's objective is a high degree of portability between a lot of compiler platforms; it's full of a lot of compromises. So, no, it's not likely to reconcile -A between DMC and STLport. Of course, you're more than welcome to hack the STLport code, send patches back to stlport.com to reconcile the problems. :-) :-) |
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Edward Diener | "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5a7vd$2bet$1@digitaldaemon.com... > Notice that I > have included no files, which makes the error doubly curious. You can have the compiler include files not in the source with the -HI switch. |
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | Walter wrote:
> "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5a7vd$2bet$1@digitaldaemon.com...
>> Notice that I
>> have included no files, which makes the error doubly curious.
>
> You can have the compiler include files not in the source with the -HI switch.
I am not using the -HI switch directly, whatever that is. My compiler switches are -c -A -w- .
|
April 11, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Scott Michel | Scott Michel wrote: > Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote: >> Scott Michel wrote: >>> Edward Diener <eddielee_no_spam_here_and_now@tropicsoft.com> wrote: >>>> Is >>>> this a fault of STLPort rather than Digital Mars ? I notice the >>>> latest STLPort is >>>> 4.6. Is there a version configured for Digital Mars using that >>>> latest version which perhaps doesn't have this bug ? >>> >>> "-A" and STLport have issues coexisting. >> >> That is pretty succinct. Are either parties, Digital Mars and STLPort, aware of that and attempting to make peace and live amicably together with their child -A ? > > All standards are subject to interpretation and DMC++ is no exception (although I happen to like the interpretation.) STLport's objective is a high degree of portability between a lot of compiler platforms; it's full of a lot of compromises. > > So, no, it's not likely to reconcile -A between DMC and STLport. > > Of course, you're more than welcome to hack the STLport code, send patches back to stlport.com to reconcile the problems. :-) :-) I have no idea even what the problem is and why STLport thinks that "'_STLP_DEFAULT_TYPE_PARAM' is already defined". I was hoping someone here could explain that. I still don't know why anything from STLport is even being #included since the code clearly doesn't need or use any #include files. I am pointing to the STLport directory for its include files on the command line, since I am running it from a batch file, but that still should make no difference unless Digital Mars is including files automatically somehow. |
April 12, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Edward Diener | "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5ccen$2g54$1@digitaldaemon.com... > Walter wrote: > > "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5a7vd$2bet$1@digitaldaemon.com... > >> Notice that I > >> have included no files, which makes the error doubly curious. > > > > You can have the compiler include files not in the source with the -HI switch. > > I am not using the -HI switch directly, whatever that is. My compiler switches are -c -A -w- . That is very curious. Do you have a CFLAGS environment variable? |
April 12, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter | Walter wrote: > "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5ccen$2g54$1@digitaldaemon.com... >> Walter wrote: >>> "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5a7vd$2bet$1@digitaldaemon.com... >>>> Notice that I >>>> have included no files, which makes the error doubly curious. >>> >>> You can have the compiler include files not in the source with the -HI switch. >> >> I am not using the -HI switch directly, whatever that is. My compiler switches are -c -A -w- . > > That is very curious. Do you have a CFLAGS environment variable? No. My command line in the batch file looks like: H:\Utilities\DigitalMars\bin\dmc -c -A -w- -oh:\tc\o\dm\TestPrivate.obj -IH: \Utilities\DigitalMars\stlport\stlport TestPrivate.cpp where your compiler has been installed at H:\Utilities\DigitalMars and the TestPrivate.cpp is: "class C { private: void f(); }; class D { friend void C::f(); };" When I compile with: H:\Utilities\DigitalMars\bin\dmc -c -w- -oh:\tc\o\dm\TestPrivate.obj -IH:\Ut ilities\DigitalMars\stlport\stlport TestPrivate.cpp there are no compiler errors. Can you try and duplicate this ? Of course use the -o switch to output to one of your own directories and the IH switch to point to wherever STLport 4.5.3 is on your machine. I am using the latest version of your compiler downloaded from your site. |
April 12, 2004 Re: Compile error using -A and Stlport 4.5.3 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Edward Diener | "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5dvid$1t14$1@digitaldaemon.com... > Walter wrote: > > "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5ccen$2g54$1@digitaldaemon.com... > >> Walter wrote: > >>> "Edward Diener" <eddielee_no_spam_here_and_now@tropicsoft.com> wrote in message news:c5a7vd$2bet$1@digitaldaemon.com... > >>>> Notice that I > >>>> have included no files, which makes the error doubly curious. > >>> > >>> You can have the compiler include files not in the source with the -HI switch. > >> > >> I am not using the -HI switch directly, whatever that is. My compiler switches are -c -A -w- . > > > > That is very curious. Do you have a CFLAGS environment variable? > > No. My command line in the batch file looks like: > > H:\Utilities\DigitalMars\bin\dmc -c -A -w- -oh:\tc\o\dm\TestPrivate.obj -IH: > \Utilities\DigitalMars\stlport\stlport TestPrivate.cpp Do you have a blank or newline after the -IH: ? |
Copyright © 1999-2021 by the D Language Foundation