mirror of https://github.com/rusefi/openblt.git
43 lines
1.6 KiB
C
43 lines
1.6 KiB
C
// ---------------------------------------------------------------------
|
|
// This file is provided by Gimpel Software (www.gimpel.com) for use with
|
|
// its products PC-lint and FlexeLint.
|
|
//
|
|
// Redistribution and use of this file, with or without modification, is
|
|
// permitted provided that any such redistribution retains this notice.
|
|
// ---------------------------------------------------------------------
|
|
|
|
#ifndef LINT_SUPPORT_CO_MSC100_H_
|
|
#define LINT_SUPPORT_CO_MSC100_H_
|
|
|
|
// co-msc100.h --
|
|
// This header is automatically included in every module if you use
|
|
// co-msc100.lnt. (There is a -header(co-msc100.h) option therein
|
|
// for this purpose.)
|
|
|
|
// Microsoft's C++11 implementation does not yet include built-in support
|
|
// for the new character types, so we need to disable the relevant
|
|
// keywords here. (This must be done before the inclusion of any other
|
|
// header file because Microsoft's library headers contain declarations of
|
|
// typedef names with the same spelling.)
|
|
//lint -rw(char16_t,char32_t)
|
|
|
|
// Next we must compensate for the fact that class typeinfo is available
|
|
// for use in the MSC compilers without an explicit definition. According
|
|
// to the standard this class definition is not (available by default).
|
|
#ifdef __cplusplus
|
|
|
|
#include <typeinfo>
|
|
|
|
#else // C mode
|
|
|
|
// co-msc100.lnt defines some macros that the Microsoft compiler defines
|
|
// in C++ modes but not in C mode; we must un-define them here:
|
|
#undef _CPPRTTI
|
|
#undef _NATIVE_WCHAR_T_DEFINED
|
|
#undef _WCHAR_T_DEFINED
|
|
#undef _NATIVE_NULLPTR_SUPPORTED
|
|
|
|
#endif
|
|
|
|
#endif /* LINT_SUPPORT_CO_MSC100_H_ */
|