c++: add extern declaration to the generated file

The extern declaration affects how the C++ compiler does name mangling of global
variables.  With:

    $ g++ -c -Wall -std=c++11 -o osx2win32.o osx2win32.cc
    $ nm osx2win32.o | grep code_map_osx_to_win32
    0000000000000000 B code_map_osx_to_win32
    00000000000000a1 t _GLOBAL__sub_I_code_map_osx_to_win32

Without:

    $ g++ -c -Wall -std=c++11 -o osx2win32.o osx2win32.cc
    $ nm osx2win32.o | grep code_map_osx_to_win32
    0000000000000000 b _ZL21code_map_osx_to_win32

Not that unlike C, without "extern" you get a local variable ("b"), while
"extern" is needed to get a global!

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
1 file changed
tree: 526631694e74513076440d1e93bfb70ba0d3a7e6
  1. data/
  2. tests/
  3. thirdparty/
  4. tools/
  5. LICENSE.BSD
  6. LICENSE.GPL2
  7. README