[Freeciv-Dev] Re: (PR#6781) Cleanups
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
<URL: http://rt.freeciv.org/Ticket/Display.html?id=6781 >
On Sun, 9 Nov 2003, Raimar Falke wrote:
>
> <URL: http://rt.freeciv.org/Ticket/Display.html?id=6781 >
>
> On Sun, Nov 09, 2003 at 03:49:05AM -0800, Gregory Berkolaiko wrote:
> >
> > <URL: http://rt.freeciv.org/Ticket/Display.html?id=6781 >
> >
> > On Thu, 6 Nov 2003 rt@xxxxxxxxxxx wrote:
> >
> > > 2)
> > > ai/aiunit.c:591:134: Expression has undefined behavior (left operand
> > > uses errno, modified by right operand): log(most_desirable / ((((100 *
> > > 5 * 81 + 100 * (9 - 5) * 51) + 1) + 1) + (100 * 5 * 81 + 100 * (9 - 5)
> > > * 51))) / log(0.6)
> > > Code has unspecified behavior. Order of evaluation of function
> > > parameters or subexpressions is not defined, so if a value is used and
> > > modi fied in different places not separated by a sequence point
> > > constraining evaluation order, then the result of the expression is
> > > unspecified.
> >
> > I do not understand this error at all. Mathmatically, the order of
> > evaluation is well defined.
>
> The result is but log has the side effect that is modifies errno. So
> the value of errno after the "log(x)+log(y)" is unspecified because
> the order of the log calls is unspecified.
Ah. So if we split it into two, it should be fine?
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Gregory Berkolaiko, 2003/11/09
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Raimar Falke, 2003/11/09
- [Freeciv-Dev] Re: (PR#6781) Cleanups,
Gregory Berkolaiko <=
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Raimar Falke, 2003/11/09
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Jason Short, 2003/11/09
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Raimar Falke, 2003/11/09
- [Freeciv-Dev] Re: (PR#6781) Cleanups, Raimar Falke, 2003/11/13
|
|