Hi,

first things first, here's an output of arm-wince-mingw32ce-gcc -v:

Using built-in specs.
Target: arm-wince-mingw32ce
Configured with: /usr/src/rpm/BUILD/cegcc-mingw32ce-0.50/src/gcc/configure
--with-gcc --with-gnu-ld --with-gnu-as --target=arm-wince-mingw32ce
--prefix=/opt/mingw32ce --enable-threads=win32 --disable-nls
--enable-languages=c,c++ --disable-win32-registry --disable-multilib
--disable-interwork --without-newlib --enable-checking --with-headers
Thread model: win32
gcc version 4.1.0

I can't tell where I got the packages from because, frankly, I don't
remember ;)

Now a bit about the problem.

Casting a char* into uint32_t*, unsigned int* or int* and then using it
with operator [] in both GCC and G++ crashes the application.

memcpying and then using it works.

Nonworking code:

        char a[50], c[255];
        uint32_t *b;
        b = (uint32_t*)a;
        a[0] = 0;
        a[1] = 0;
        a[2] = 0;
        a[3] = 1;

        sprintf(c, "%ld", b[0]);

Working code:

        char a[50], c[255];
        uint32_t *b;
        b = malloc(50);
        a[0] = 0;
        a[1] = 0;
        a[2] = 0;
        a[3] = 1;

        memcpy(b, a, 4);
        sprintf(c, "%ld", b[0]);
        free(b);


This is a very ugly fix I had to made to the application, and it was very
hard to track the problem down (especially because WINCE isn't my main
target platform, I haven't forced myself to learn to use GDB on it, and I
obviously don't have an emulator since I use GNU/Linux any pointers?)

If this has been fixed already, please tell me so and I'll upgrade.

------------
Ivan Vucica

-------------------------------------------------------------------------
SF.Net email is sponsored by: 
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to