Boris Boesler wrote:

>  The following "program" can be compiled without problems.
> 
> extern void something(char *s);
> char msg[] = "123456";
> int main(int argc, char **argv)
> {
>   something(msg);
>   return 0;
> }
> 
>  But I can't compile it correctly with my backend. The content of msg is
> not emitted; there is only the label. It will be emitted when it the
> size is at least 8 characters.
> 
>  I assume the problem is that I set BITS_PER_UNIT to 1 and that there is
> some size computation that depends on BITS_PER_UNIT >= 8. Is that
> possible? How can I fix that?

C requires BITS_PER_UNIT to be at least 8.  char must always be large
enough to hold a character, and sizeof (char) == 1.

Andrew.

Reply via email to