Memory Validator will work with any portable executable (PE) file format and supports .Net, .Net Core, C#, VB.Net, C, C++, Delphi, Fortran 95 and Visual Basic.
All Win32 functions listed in the Hook Reference section will be tracked for any executable.
Both .Net and .Net Core technologies are supported as well all the native compilers listed below.
The following compilers are supported by Memory Validator.
•Microsoft Developer Studio 4.0
•Microsoft Developer Studio 5.0
•Microsoft Developer Studio 6.0
•Microsoft Visual Basic 6.0
•Microsoft Visual Studio 6.0 - service pack 3 or later
•Microsoft Visual Studio 7.0 / .net 2002
•Microsoft Visual Studio 7.1 / .net 2003
•Microsoft Visual Studio 8.0 / .net 2005
•Microsoft Visual Studio 9.0 / .net 2008
•Microsoft Visual Studio 10.0 / .net 2010
•Microsoft Visual Studio 11.0 / .net 2012
•Microsoft Visual Studio 12.0 / .net 2013
•Microsoft Visual Studio 14.0 / .net 2015
•Microsoft Visual Studio 15.0 / .net 2017
•etc...
•Microsoft Visual Studio Express - supported, but see also: building the examples for Visual Studio Express
Some of the heap identification functions will not work with applications built using Microsoft® Visual Studio® 4.0, 7.0, 7.1, 8.0, 9.0, 10.0. This only affects the virtual memory view in terms of representing a heap as a CRT heap - a minor lack of functionality.
Visual Studio and Visual Basic 6 in the Getting Started section.
•Intel performance compiler - The Intel compiler uses the Microsoft runtime already installed on your computer rather than supply its own
•Intel Fortran
•Metrowerks CodeWarrior for Windows Version 8.0
•Metrowerks CodeWarrior for Windows Version 9.0
You will need to ensure the debug information is stored as CodeView information and not a custom Metrowerks debug format. Metrowerks symbolic information is embedded in the .exe/.dll as CodeView information. Please consult the documentation for CodeWarrior to include debug information (including filenames and line numbers) in the CodeView information.
Embarcadero https://www.embarcadero.com/
This includes compilers formerly produced by Borland.
•C++ Builder 5.0 to C++ Builder 11
•Delphi 6.0 to Delphi 11
•Rad Studio
C++ Builder and Delphi in the Getting Started section.
•MinGW (Minimalist GNU for Windows)
MinGW can create symbols in a variety of formats. If you configure MinGW to produce DWARF symbols, STABS symbols or COFF symbols Memory Validator can read them.
MinGW compiler in the Getting Started section.
•QtCreator
Ensure that debug information is created in DWARF, STABS or COFF formats.
•Salford Software FORTRAN95
•Compaq Visual Fortran 6.6
The Compaq Visual Fortran product may be compatible with Memory Validator. If you are using Compaq Visual Fortran and wish to use Memory Validator please contact us.
•Cherrystone Software Extremely Scalable Allocator (ESA) - a replacement allocator providing high performance allocation algorithms for use in single threaded applications and multi-threaded applications.
There is no web page for this product.
If the compiler you are using is not listed here, please contact support@softwareverify.com for advice. We add compilers as we receive requests for them. The Borland C++, Borland Delphi, Metrowerks CodeWarrior, Salford Software's FORTRAN95 compiler, Intel Fortran support and Cherrystone ESA support were all added at the request of customers.