Re: OSX Porting Problems
Ingo Weinhold <bonefish-CFLBMwTPW48UNGrzBIF7/[email protected]> Thu, 15 Mar 2007 12:48:10 +0100
| Newsgroups | gmane.os.openbeos.kernel.devel |
|---|---|
| Message-ID | <[email protected]> |
On 2007-03-14 at 23:24:47 [+0100], Morgan Howe <[email protected]> wrote: > > Any progress with the size_t issue yet? > > > > Well, oddly enough.. this addition fixes the issue with overriding operator > new... > > In headers/posix/size_t.h: > > 15 #elif __APPLE__ > 16 typedef long unsigned size_t; > 17 typedef long signed ssize_t; > > The compiler apparently does not consider 'long unsigned' and 'unsigned > long' the same thing. That would surprise me very much. It would actually be a bug. :-) I've checked the place that issues the new operator related error (gcc/cp/decl2.c) and, unlike I guessed before, it does not print what argument type it expects new to have and what is given in the incorrect code. No, it only prints the type it expects, first the declared type name ("size_t") and then the canonical type it resolves to ("long unsigned int"). So I don't think it matters whether you define it as "unsigned long" or "long unsigned", but it does matter, that you prevent it from being defined as "unsigned int" in our <size_t.h>, as it would without your proposed change. Anyway, I think I'll clean up <size_t.h> and move the hacks to headers/build/BeOSBuildCompatibility.h later. > I've run into a new error further along in the build > which I will resume with soon, but for now I appear to be past the 2 most > prevalent ones. :) Nice. Please don't forget to update your tree. I've already solved the problems that result from the -isystem -> -I change. No need for you to solve them again. :-) CU, Ingo ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV