MantisBT
Mantis Bug Tracker Workflow

View Revisions: Issue #29590 All Revisions ] Back to Issue ]
Summary 0029590: Coding - avoid usage of Standard_EXPORT attribute for inline methods
Revision 2018-03-19 18:32 by abv
Steps To Reproduce 1. Generate C++ file including all headers of OCCT (except ones dependent on VTK -- these use export for whole classes...):

cd %CASROOT%/inc
echo "#include <windows.h>" >..\all_includes.cpp
ls -1 *.hxx | grep -i -v "ivtk" | gawk '{print "#include <" $0 ">"}' >>..\all_includes.cpp

2. Build DLL with the only source being that file, and option /FORCE to ensure creation of DLL even if some symbols remain unresolved (this allows to avoid linking with OCCT libs)

3. List all exports of this DLL (excluding constructor and destructor closure symbols generated automatically for unclear reason):

rem Set path to dumpbin.exe if not yet set, on example of VS 2015
set "PATH=%PATH%;%VS140COMNTOOLS%\..\..\VC\BIN"

dumpbin /exports all_includes.dll > all_exports.txt
undname all_exports.txt | grep -v "structor closure" > all_exports_undecorated.txt

The list should be empty
Revision 2018-03-19 18:16 by abv
Steps To Reproduce 1. Generate C++ file including all headers of OCCT (except ones dependent on VTK -- these use export for whole classes...):

cd %CASROOT%/inc
echo "#include <windows.h>" >..\all_includes.cpp
ls -1 *.hxx | grep -i -v "ivtk" | gawk '{print "#include <" $0 ">"}' >>..\all_includes.cpp

2. Build DLL with the only source being that file

Note: until this issue is resolved, that build will require linking with some OCCT libraries

3. List all exports of this DLL:

rem Set path to dumpbin.exe if not yet set, on example of VS 2015
set "PATH=%PATH%;%VS140COMNTOOLS%\..\..\VC\BIN"

dumpbin /exports all_includes.dll > all_exports.txt
undname all_exports.txt > all_exports_undecorated.txt

The list should be empty
Revision 2018-03-19 10:06 by abv
Steps To Reproduce
1. Generate C++ file including all headers of OCCT:

cd %CASROOT%/inc
echo "#include <windows.h>" >..\all_includes.cpp
ls -1 *.hxx | gawk '{print "#include <" $0 ">"}' >>..\all_includes.cpp

2. Build DLL with the only source being that file

Note: until this issue is resolved, that build will require linking with some OCCT libraries

3. List all exports of this DLL:

rem Set path to dumpbin.exe if not yet set, on example of VS 2015
set "PATH=%PATH%;%VS140COMNTOOLS%\..\..\VC\BIN"

dumpbin /exports all_includes.dll > all_exports.txt
undname all_exports.txt > all_exports_undecorated.txt

The list should be empty


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker