public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* RE: [ECOS] #include <new> in mqueue.cxx
@ 2002-07-15  9:41 Koeller, T.
  0 siblings, 0 replies; 5+ messages in thread
From: Koeller, T. @ 2002-07-15  9:41 UTC (permalink / raw)
  To: ecos-discuss

I once suggested to include libsupc++ in the eCos repository,
and I even submitted a patch to the ecos patches mailing list
(it did not contain 'new', though). There is a discussion
thread about this topic here on this ML.

Thomas


> -----Original Message-----
> From: Jones, Michael [mailto:Michael.Jones@distefora-protec.de]
> Sent: Monday, July 15, 2002 4:58 PM
> To: Martin Buck; ecos-discuss@sources.redhat.com
> Subject: AW: [ECOS] #include <new> in mqueue.cxx
> 
> 
> 
> Hello!
> 
> Thanks for you response!
> 
> You are suggesting to install "libsupc++" - OK, but where to 
> (and how)? And how do I tell the compiler where to find it?
> 
> And again why is it not part of the eCos repository?? The 
> idea of such is to provide a working environment - I can 
> hardly imagine that it relies on components that "maybe" 
> exist on the build system. Or if yes, it should be documented 
> somewhere...
> 
> As to your last two comments; I have at length considered the 
> need for this construction and as bad style the usage is that 
> we find in e.g. in kapi.cxx (yes - not nice is it?) the 
> question is if somebody did it for a reason in the first 
> place - like not having to rely on the new header?
> 
> Yet, as ever my primary target id to actually build a working 
> app with eCos - and that is currently prohibited with this 
> error (and I don't) seem to be the only. I will take whatever 
> works in the long run, so I will be more then thankful for 
> any advice that gets me there...
> 
> Regards,
> Michael
> 
> 
> > -----Ursprüngliche Nachricht-----
> > Von: Martin Buck [mailto:martin.buck@ascom.ch]
> > Gesendet: Montag, 15. Juli 2002 14:31
> > An: ecos-discuss@sources.redhat.com
> > Betreff: Re: [ECOS] #include <new> in mqueue.cxx
> > 
> > 
> > "Jones, Michael" wrote:
> > > I have tried the verious enviroment setting to make the 
> > compliler search a include path containing a "new" header. 
> > But so far without success.
> > 
> > You have to install libsupc++ as well - it provides the basic C++
> > infrastructure and <new> is a part of that.
> > 
> > > Also, I am not quite sure if I agree with the statement 
> > that the "new" header belongs to the compiler and therefore 
> > can be used.
> > > Afterall, the library has to "backup" the headerfiles - And 
> > the "new" header is based on a library that is not being 
> > incuded in the final build...
> > 
> > But it should. gcc 3.x for C++ without libsupc++ is 
> something like gcc
> > for C without libgcc - a few things might work, but you 
> won't get very
> > far.
> > 
> > > And as mqueue.cxx seems to be the only file that requires 
> > the "new" header - why does it require it? Why not change 
> > mqueue.cxx so that is does not require a header that no other 
> > files requires??
> > 
> > Have you considered that no other file might need that 
> functionality,
> > but because it's ISO C++, it's perfectly reasonable to use 
> if it *is*
> > needed?
> > 
> > While we're at it, some other files actually need that functionality
> > (placement operator new, e.g. in kapi.cxx), but they define 
> their own
> > operator new instead. According to ISO C++ 18.4.1.3 clause 1 this is
> > illegal. Comments?
> > 
> > Martin
> > 
> > -- 
> > Before posting, please read the FAQ: 
> > http://sources.redhat.com/fom/ecos
> > and search the list archive: 
> http://sources.redhat.com/ml/ecos-discuss
> > 
> > 
> 
> -- 
> Before posting, please read the FAQ: 
> http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
>
----------------------------------------------- 
Thomas Koeller, Software Development 

Basler Vision Technologies 
An der Strusbek 60-62 
22926 Ahrensburg 
Germany 

Tel +49 (4102) 463-390 
Fax +49 (4102) 463-46390

mailto:Thomas.Koeller@baslerweb.com 
http://www.baslerweb.com 



--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [ECOS] #include <new> in mqueue.cxx
  2002-07-15  1:52 Jones, Michael
@ 2002-07-15  5:31 ` Martin Buck
  0 siblings, 0 replies; 5+ messages in thread
From: Martin Buck @ 2002-07-15  5:31 UTC (permalink / raw)
  To: ecos-discuss

"Jones, Michael" wrote:
> I have tried the verious enviroment setting to make the compliler search a include path containing a "new" header. But so far without success.

You have to install libsupc++ as well - it provides the basic C++
infrastructure and <new> is a part of that.

> Also, I am not quite sure if I agree with the statement that the "new" header belongs to the compiler and therefore can be used.
> Afterall, the library has to "backup" the headerfiles - And the "new" header is based on a library that is not being incuded in the final build...

But it should. gcc 3.x for C++ without libsupc++ is something like gcc
for C without libgcc - a few things might work, but you won't get very
far.

> And as mqueue.cxx seems to be the only file that requires the "new" header - why does it require it? Why not change mqueue.cxx so that is does not require a header that no other files requires??

Have you considered that no other file might need that functionality,
but because it's ISO C++, it's perfectly reasonable to use if it *is*
needed?

While we're at it, some other files actually need that functionality
(placement operator new, e.g. in kapi.cxx), but they define their own
operator new instead. According to ISO C++ 18.4.1.3 clause 1 this is
illegal. Comments?

Martin

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [ECOS] #include <new> in mqueue.cxx
@ 2002-07-15  1:52 Jones, Michael
  2002-07-15  5:31 ` Martin Buck
  0 siblings, 1 reply; 5+ messages in thread
From: Jones, Michael @ 2002-07-15  1:52 UTC (permalink / raw)
  To: eCos Discussion


OK, now the question is why does it not work in the first place then? 

I am using gcc 3.0.4....

I have tried the verious enviroment setting to make the compliler search a include path containing a "new" header. But so far without success.

Also, I am not quite sure if I agree with the statement that the "new" header belongs to the compiler and therefore can be used.
Afterall, the library has to "backup" the headerfiles - And the "new" header is based on a library that is not being incuded in the final build...

And as mqueue.cxx seems to be the only file that requires the "new" header - why does it require it? Why not change mqueue.cxx so that is does not require a header that no other files requires??

Regards,
Michael

> -----Ursprüngliche Nachricht-----
> Von: Gary Thomas [mailto:gary@chez-thomas.org]
> Gesendet: Montag, 15. Juli 2002 02:30
> An: Jones, Michael
> Cc: eCos Discussion
> Betreff: Re: [ECOS] #include <new> in mqueue.cxx
> 
> 
> On Sun, 2002-07-14 at 12:28, Jones, Michael wrote:
> > Hello!
> > 
> > I am finding the following error:
> > 
> > i386-elf-gcc -c <omitted> 
> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx
> > 
> > 
> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqu
> eue.cxx:82:79: new: No such file or directory
> > <internal>: In function `void* mq_open(const char*, int, ...)':
> > <internal>:302: too many arguments to function `void* 
> operator new(long unsigned int)'
> > 
> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqu
> eue.cxx:302: at this point in file
> > make[1]: *** [src/mqueue.o.d] Error 1
> > make[1]: Leaving directory `/i386/net/compat/posix/current'
> > make: *** [build] Error 2
> > 
> > It seems that there is no <new> header in the eCos 
> repository therefore IMHO the above error is correct and 
> including the new header in the first place is to be reconsidered....
> > 
> > Any comments? 
> 
> The file <new.h> comes from the compiler itself - it's not provided
> with eCos (but we still need to use it)
> 
> 

--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [ECOS] #include <new> in mqueue.cxx
  2002-07-14 11:28 Jones, Michael
@ 2002-07-14 17:29 ` Gary Thomas
  0 siblings, 0 replies; 5+ messages in thread
From: Gary Thomas @ 2002-07-14 17:29 UTC (permalink / raw)
  To: Jones, Michael; +Cc: eCos Discussion

On Sun, 2002-07-14 at 12:28, Jones, Michael wrote:
> Hello!
> 
> I am finding the following error:
> 
> i386-elf-gcc -c <omitted> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx
> 
> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx:82:79: new: No such file or directory
> <internal>: In function `void* mq_open(const char*, int, ...)':
> <internal>:302: too many arguments to function `void* operator new(long unsigned int)'
> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx:302: at this point in file
> make[1]: *** [src/mqueue.o.d] Error 1
> make[1]: Leaving directory `/i386/net/compat/posix/current'
> make: *** [build] Error 2
> 
> It seems that there is no <new> header in the eCos repository therefore IMHO the above error is correct and including the new header in the first place is to be reconsidered....
> 
> Any comments? 

The file <new.h> comes from the compiler itself - it's not provided
with eCos (but we still need to use it)


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [ECOS] #include <new> in mqueue.cxx
@ 2002-07-14 11:28 Jones, Michael
  2002-07-14 17:29 ` Gary Thomas
  0 siblings, 1 reply; 5+ messages in thread
From: Jones, Michael @ 2002-07-14 11:28 UTC (permalink / raw)
  To: ecos-discuss

Hello!

I am finding the following error:

i386-elf-gcc -c <omitted> /ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx

/ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx:82:79: new: No such file or directory
<internal>: In function `void* mq_open(const char*, int, ...)':
<internal>:302: too many arguments to function `void* operator new(long unsigned int)'
/ecos-c/cygwin/i386/ecos/packages/compat/posix/current/src/mqueue.cxx:302: at this point in file
make[1]: *** [src/mqueue.o.d] Error 1
make[1]: Leaving directory `/i386/net/compat/posix/current'
make: *** [build] Error 2

It seems that there is no <new> header in the eCos repository therefore IMHO the above error is correct and including the new header in the first place is to be reconsidered....

Any comments? 


Michael Jones 
Head of Development 
DISTEFORA PROTEC GmbH 

--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2002-07-15 16:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-15  9:41 [ECOS] #include <new> in mqueue.cxx Koeller, T.
  -- strict thread matches above, loose matches on Subject: below --
2002-07-15  1:52 Jones, Michael
2002-07-15  5:31 ` Martin Buck
2002-07-14 11:28 Jones, Michael
2002-07-14 17:29 ` Gary Thomas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).