Currently we build our application with same toolchain as the toolchain used for building root filesystem.
Is it valid to build application with a newer toolchain, or will it result in any mismatches when running on the target filesystem ?
EDIT:
I want to add sanitize checking for application. Unfortunately arm-linux-gnueabihf version 4.8 does not support it yet. So I want to build my application with the same linaro toolchain for same architecture, just more updated (version 6.4 instead of 4.8)
To make this work you require ABI compatibility between your old libraries and your recompiled application. The C ABI is much simpler as the C++ ABI. You won't have problems with the C parts.
For the C++ parts you might have to select the right ABI version via g++ -fabi-version.
For the C ABI, it is a matter of ABI compatibility between the libc versions used. glibc (which is the one used by the Linaro toolchain) is generally safe.