From: Steve <ste...@gm...> - 2008-10-14 20:42:48
|
-------- Original-Nachricht -------- > Datum: Mon, 6 Oct 2008 15:47:39 +0200 > Von: "Ger Hobbelt" <ge...@ho...> > An: Steve <ste...@gm...> > CC: crm...@li... > Betreff: Re: [Crm114-general] wget build: is this normal? > ... VERY interesting. <he says, with a big frown> > > Say, how does the next bit of sample code compile there? You've got a > quite up-to-snuff compiler there and it barfs on *this*?! > Unfortunately, I don't have the Intel compiler handy here > (self-employed doesn't allow you to buy every Maserati out there) so I > need a bit of help here. > > If this next sample compiles with *any* error, you can take it to the > bank this is a compiler bug and worth an inquiry at the Intel service > desk/mailing list/..., minimum. > > The sample contains the erroring function definition as a > byte-for-byte copy. email will damage that, so you might want to > copy&paste it straight from that crm114_osbf.h file. > > > If this does compile without error, next step: can you 'tweak' your > compile commandline to include /E (or the local equivalent to instruct > Intel to 'preprocess only')? > That will not produce any object file, but it will cough up a torrent > of preprocessed C code on stdout (or to the target file specced after > the /o commandline switch (check equivalent commandline option for > ICC), so you may have to massage the compiler into only 'compiling' > (preprocessing) the sourcefile it was compiling when the original > error popped up. I am VERY MUCH interested to see what ICC thinks it's > doing right there: if we get to do this /E stuff, you should email > output to my private email (same address I always use here: > ge...@ho...) as the output will be /way/ too big for 'shared' > conversation on the ML. > > > BTW: are you on Windows (maybe MSVC IDE with Intel compiler backend?) > or UNIX? (In both cases this sample program won't *run* without > crashing but *must* compile without error or warning.) > > > Final note: make sure you feed that Intel cc the *exact* same set of > commandline options as you fed it when compiling the GerH crm114 code. > > (YES, a compiler barfing on a > 'standard-C-since-the-birth-of-Kernighan-and-Ritchie-dawn-of-time' > /**/ multiline comment makes me /that/ degree of worried! I screw up, > often badly, but definitely not here. This is through 'wicked' and out > the other side.) > > -------snip here--------------- > #include <stdio.h> > #include <stdlib.h> > > #ifndef __CRM114_OBSF_H__ > #define __CRM114_OBSF_H__ > > #ifdef __cplusplus > extern "C" > { > #endif > > extern int crm_osbf_create_cssfile(char *cssfile, unsigned int buckets, > unsigned int major, unsigned int minor /* [i_a] unused anyway , > * unsigned int > spectrum_start */); > > > > > #ifdef __cplusplus > } > #endif > > #endif /* __CRM114_OBSF_H__ */ > > int main(int argc, char **argv) > { > unsigned int buckets = 1; > unsigned int major = 1; > unsigned int minor = 1; > > return crm_osbf_create_cssfile(argv[1], buckets, > major, minor /* [i_a] unused anyway , > * unsigned int spectrum_start */); > } > > > int crm_osbf_create_cssfile(char *cssfile, unsigned int buckets, > unsigned int major, unsigned int minor /* [i_a] unused anyway , > * unsigned int spectrum_start */) > { > return cssfile[buckets + major + minor]; > } > -------------------------- > Not working. I get this error: test.c(14): error: expected a ")" * unsigned int spectrum_start */); ^ test.c(29): error: expected an expression * unsigned int spectrum_start */); ^ test.c(34): error: expected a ")" * unsigned int spectrum_start */) ^ compilation aborted for test.c (code 2) This is the code I used. Encoded with base64: -------snip here--------------- I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCiNpZm5k ZWYgX19DUk0xMTRfT0JTRl9IX18KI2RlZmluZSBfX0NSTTExNF9PQlNGX0hf XwoKI2lmZGVmIF9fY3BsdXNwbHVzCmV4dGVybiAiQyIKewojZW5kaWYKCmV4 dGVybiBpbnQgY3JtX29zYmZfY3JlYXRlX2Nzc2ZpbGUoY2hhciAqY3NzZmls ZSwgdW5zaWduZWQgaW50IGJ1Y2tldHMsCiAgICAgICAgdW5zaWduZWQgaW50 IG1ham9yLCB1bnNpZ25lZCBpbnQgbWlub3IgLyogW2lfYV0gdW51c2VkIGFu eXdheSAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICogdW5zaWduZWQgaW50IHNwZWN0cnVtX3N0YXJ0ICovKTsK CiNpZmRlZiBfX2NwbHVzcGx1cwp9CiNlbmRpZgoKI2VuZGlmIC8qIF9fQ1JN MTE0X09CU0ZfSF9fICovCgppbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFy Z3YpCnsKCXVuc2lnbmVkIGludCBidWNrZXRzID0gMTsKCXVuc2lnbmVkIGlu dCBtYWpvciA9IDE7Cgl1bnNpZ25lZCBpbnQgbWlub3IgPSAxOwoJcmV0dXJu IGNybV9vc2JmX2NyZWF0ZV9jc3NmaWxlKGFyZ3ZbMV0sIGJ1Y2tldHMsCgkJ bWFqb3IsIG1pbm9yIC8qIFtpX2FdIHVudXNlZCBhbnl3YXkgLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAqIHVuc2lnbmVkIGludCBzcGVjdHJ1 bV9zdGFydCAqLyk7Cn0KCmludCBjcm1fb3NiZl9jcmVhdGVfY3NzZmlsZShj aGFyICpjc3NmaWxlLCB1bnNpZ25lZCBpbnQgYnVja2V0cywKCXVuc2lnbmVk IGludCBtYWpvciwgdW5zaWduZWQgaW50IG1pbm9yIC8qIFtpX2FdIHVudXNl ZCBhbnl3YXkgLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAqIHVuc2lnbmVkIGludCBzcGVjdHJ1bV9zdGFydCAq LykKewoJcmV0dXJuIGNzc2ZpbGVbYnVja2V0cyArIG1ham9yICsgbWlub3Jd Owp9Cg== -------------------------- What works is when adding an new line after */ So ... */); becomes ... */ ); What to do now? > > > > > On Mon, Oct 6, 2008 at 8:45 AM, Steve <ste...@gm...> wrote: > > Hallo Ger > > > > Here the requested information: > > compiler brand: Intel ICC > > version: 10.1 > > patchlevel: 018 > > full version number: 10.1.018 > > > > > > cheers > > > > Steve > > > -- > Met vriendelijke groeten / Best regards, > > Ger Hobbelt > > -------------------------------------------------- > web: http://www.hobbelt.com/ > http://www.hebbut.net/ > mail: ge...@ho... > mobile: +31-6-11 120 978 > -------------------------------------------------- -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer |