ARM Technical Support Knowledge Articles

Does armlink support extern "C++" syntax in symbol versioning script files?

Applies to: DS-5, RealView Development Suite (RVDS)

Answer

ARM Compiler toolchain v4.1 patch 1 and earlier does not support the extern "C++" syntax in symbol versioning script files. As a workaround you can use a wildcard character to match the mangled symbol name, for example:

{
  local:
        *foo*;
};

In ARM Compiler toolchain v4.1 patch 2 and later armlink supports matching of C++ unmangled symbol names in symbol version scripts in the same way as GNU ld. For example:

VERS_2.0  {
    global:
        extern "C++" {
            ns::*;
	    "foo::f(int, double)";
    };
    local:
        *;
}

Article last edited on: 2011-08-24 17:00:32

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential