Export (0) Print
Expand All
Expand Minimize
5 out of 14 rated this helpful - Rate this topic

/Gy (Enable Function-Level Linking)

Allows the compiler to package individual functions in the form of packaged functions (COMDATs).


/Gy[-]

The linker requires that functions be packaged separately as COMDATs to exclude or order individual functions in a DLL or .exe file.

You can use the linker option /OPT (Optimizations) to exclude unreferenced packaged functions from the .exe file.

You can use the linker option /ORDER (Put Functions in Order) to place packaged functions in a specified order within the .exe file.

Inline functions are always packaged if they are instantiated as calls (which occurs, for example, if inlining is turned off or you take a function address). In addition, C++ member functions defined within the class declaration are automatically packaged; other functions are not, and selecting this option is required to compile them as packaged functions.

NoteNote

The /Z7, /Zi, /ZI (Debug Information Format) option, used for Edit and Continue, automatically sets the /Gy option.

To set this compiler option in the Visual Studio development environment

  1. Open the project's Property Pages dialog box. For details, see How to: Open Project Property Pages.

  2. Click the C/C++ folder.

  3. Click the Code Generation property page.

  4. Modify the Enable Function-Level Linking property.

To set this compiler option programmatically

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.