Replacing ``inline`` by ``static`` in r58077.

Fixed according to G7: landsat_met.c:103: undefined reference to `chrncpy'
[2] where the ``chrncpy`` from the same file causes the same error and is
only ``static`` now.

``static inline`` works fine, too, but ``date_replace_slash`` does not meet
criteria for being ``inline`` specified in [2] by Glynn: It is not simple
enough (has a loop inside) and moreover, it's called only a few times (raw
guess).

Vaclav

[1] https://trac.osgeo.org/grass/changeset/58077
[2] http://lists.osgeo.org/pipermail/grass-dev/2013-July/065231.html


On Sun, Oct 20, 2013 at 8:46 AM, Markus Neteler <[email protected]> wrote:

> On Sun, Oct 20, 2013 at 5:46 AM, Vaclav Petras <[email protected]>
> wrote:
> > Hi,
> >
> > i.landsat.toar compilation fails when compiling using clang compiler. The
> > error is:
> >
> >  undefined reference to `date_replace_slash'
> >
> > This function is defined using ``inline`` keyword:
> >
> >  inline void date_replace_slash(char *str)
> >
> > I know ``inline`` is not part of C89. However, I'm not sure about the
> fix. I
> > can fix it by replacing ``inline`` by ``__inline__``. This works for GCC
> [1]
> > and clang (should support GCC extensions) but I'm not sure about other
> > compilers (on the less usual platforms).
>
> "static" may be a viable solution. For comments on this, see also
>
> http://lists.osgeo.org/pipermail/grass-dev/2013-July/065231.html
>
> Markus
>
_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to