Fixes the LTO build with GCC 4.9. Tested on the STM32F3DISCOVERY. I
assume the compiler was doing cross function optimisation, saw that
the same non-volatile address was read twice, and dropped the second
read.
Fixes#763.
Signed-off-by: Michael Hope <mlhx@google.com>
Remove duplicate consts.
Pull in the include files where functions and variables are declared.
Mark file local but duplicated variables as static.
Mark some variable declarations as extern.
Remove duplicated variable definition.
Signed-off-by: Michael Hope <mlhx@google.com>
This is an alternative to #ifdef's everywhere which is getting out of
hand.
Confirmed that the VCP is working on the STM32F3Discovery board and
ChebuzzF3 variant.