2002-02-12 09:07:58

by Pavel Machek

[permalink] [raw]
Subject: Internal compiler error in 2.4.5 (hacky workaround)

Hi!

This makes gcc survive... adding volatile everywhere ;-).

int blk_ioctl(volatile kdev_t dev, volatile unsigned int cmd, volatile
unsigned long arg)
{
volatile request_queue_t *q;
volatile struct gendisk *g;
volatile u64 ullval = 0;
volatile int intval, *iptr;
volatile unsigned short usval;

Pavel
--
(about SSSCA) "I don't say this lightly. However, I really think that the U.S.
no longer is classifiable as a democracy, but rather as a plutocracy." --hpa


2002-02-12 09:48:19

by Arjan van de Ven

[permalink] [raw]
Subject: Re: Internal compiler error in 2.4.5 (hacky workaround)

Pavel Machek wrote:
>
> Hi!
>
> This makes gcc survive... adding volatile everywhere ;-).
>
> int blk_ioctl(volatile kdev_t dev, volatile unsigned int cmd, volatile
> unsigned long arg)
> {
> volatile request_queue_t *q;
> volatile struct gendisk *g;
> volatile u64 ullval = 0;
> volatile int intval, *iptr;
> volatile unsigned short usval;

For 2.4 I can see such a workaround being accepted; however for 2.5 I
would say
to keep the code clean of such things and rather get the compiler fixed
(or the
specific version depricated).