Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.2 KiB

  1. /*-----------------------------------------------------------------------------
  2. Microsoft Fusion
  3. Microsoft Confidential
  4. Copyright 1995-2000 Microsoft Corporation. All Rights Reserved.
  5. @doc external
  6. @module fusionpreprocessorcharize.h
  7. @owner JayKrell
  8. -----------------------------------------------------------------------------*/
  9. #if !defined(VS_COMMON_INC_FUSION_PREPROCESSORCHARIZE_H_INCLUDED_) // {
  10. #define VS_COMMON_INC_FUSION_PREPROCESSORCHARIZE_H_INCLUDED_
  11. /*#pragma once ends up in .rgi, which is bad, so do not do it*/
  12. #include "fusionpreprocessorpaste.h"
  13. #define FusionpPrivatePreprocessorCharize(x) #@ x
  14. /*-----------------------------------------------------------------------------
  15. Name: SxApwPreprocessorCharize, SxApwPreprocessorCharizeW
  16. @macro
  17. These macros simply charize their parameter, after evaluating it;
  18. it is evaluated so that
  19. define A B
  20. SxApwPreprocessorCharize(A) -> 'B' instead of 'A'
  21. SxApwPreprocessorCharizeW(A) -> 'B' instead of L'A'
  22. @owner JayKrell
  23. -----------------------------------------------------------------------------*/
  24. #define FusionpPreprocessorCharize(x) FusionpPrivatePreprocessorCharize(x)
  25. #define FusionpPreprocessorCharizeW(x) FusionpPreprocessorPaste(L, FusionpPrivatePreprocessorCharize(x))
  26. #endif // }