You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Naveen Neelakantam (JIRA)" <ji...@apache.org> on 2006/12/07 01:44:23 UTC

[jira] Commented: (HARMONY-2375) Incorrect icc_release builds

    [ http://issues.apache.org/jira/browse/HARMONY-2375?page=comments#action_12456270 ] 
            
Naveen Neelakantam commented on HARMONY-2375:
---------------------------------------------

It is not a compiler bug.  It was an invalid use of the inline keyword.  See http://www.parashift.com/c++-faq-lite/inline-functions.html#faq-9.7

The issue was that the method BootstrapClassLoader::SetBCPElement was declared in vm/vmcore/src/class_support/classloader.cpp but referenced in vm/vmcore/src/init/vm_init.cpp.  This will break on a lot of compilers (for example, it was breaking the release build with gcc 3.4.6).

The fix used in r482618 got rid of the reference to SetBCPElement in vm_init.cpp.  However, this problem could creep up again because  the inline keyword is still being used in a .cpp file.  Right now it is safe because the methods being declared with the inline keyword are private.

Regardless, the fix did solve my problem.

> Incorrect icc_release builds
> ----------------------------
>
>                 Key: HARMONY-2375
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2375
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: linux, icc, ia32
>            Reporter: Dmitry Irlyanov
>         Assigned To: Alexey Varlamov
>            Priority: Critical
>         Attachments: icc_release_builds.patch
>
>
> icc_release builds can't run any program due to undefined symbol in libharmonyvm.so
> example:
> ./java  -classpath . Hello
> Failed to open JVM DLL:/drlvm/trunk/build/lnx_ia32_icc_release/deploy/jre/bin/default/harmonyvm(/drlvm/trunk/build/lnx_ia32_icc_release/deploy/jre/bin/default/libharmonyvm.so: undefined symbol: _ZN20BootstrapClassLoader13SetBCPElementEPKcP10apr_pool_t) 
> This behavior is caused by excessive inline option in trunk\working_vm\vm\vmcore\src\class_support\classloader.cpp
> The patch has been tested on svn revision: 480581

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira