Given

#color(white)("XXX")f(x)=4x+5#

and

#color(white)("XXX")g(x)=3x-8#

The problem here usually occurs because #x# appears in both function definitions. But #x# is just an arbitrary place holder; we can replace it with any other variable.

Let's replace #x# in the definition of #f(x)# with #w# (another arbitrary variable). Then we have:

#color(white)("XXX")f(color(red)(w))=4color(red)(w)+5#

Now #color(red)(w)# could be replaced with anything.

In particular we could replace it with #color(blue)(g(x))#.

That is

#color(white)("XXX")f(color(blue)(g(x)))=4color(blue)(g(x))+5#

But since #color(blue)(g(x)) = color(blue)(3x-8)#

we have

#color(white)("XXX")f(color(blue)(g(x)))=4color(blue)((3x-8))+5#

Simplifying

#color(white)("XXX")f(g(x))=(12x-32)+5#

#color(white)("XXX")f(g(x))=12x-27#