Leaked source code of windows server 2003
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.

79 lines
1.7 KiB

  1. /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2. Copyright (c) 1989-1999 Microsoft Corporation
  3. Module Name:
  4. btana.cxx
  5. Abstract:
  6. implementation of analysis methods for base types.
  7. Notes:
  8. History:
  9. Sep-01-1993 VibhasC Created.
  10. ----------------------------------------------------------------------------*/
  11. /****************************************************************************
  12. * include files
  13. ***************************************************************************/
  14. #include "allana.hxx"
  15. #pragma hdrstop
  16. /****************************************************************************/
  17. CG_STATUS
  18. CG_BASETYPE::MarshallAnalysis(
  19. ANALYSIS_INFO * pAna )
  20. {
  21. pAna;
  22. return CG_OK;
  23. }
  24. CG_STATUS
  25. CG_BASETYPE::UnMarshallAnalysis(
  26. ANALYSIS_INFO * pAna )
  27. {
  28. pAna;
  29. return CG_OK;
  30. }
  31. CG_STATUS
  32. CG_BASETYPE::S_OutLocalAnalysis(
  33. ANALYSIS_INFO * pAna )
  34. /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  35. Routine Description:
  36. Perform analysis for out params, allocated as locals on the server side.
  37. Arguments:
  38. pAna - A pointer to the analysis block.
  39. Return Value:
  40. CG_OK if all is well
  41. error otherwise.
  42. Notes:
  43. Initialization for a pure base type is not needed.
  44. ----------------------------------------------------------------------------*/
  45. {
  46. if( pAna->IsRefAllocDone() )
  47. {
  48. if( pAna->GetCurrentSide() != C_SIDE )
  49. {
  50. PNAME pName = pAna->GenTempResourceName( 0 );
  51. SetResource( pAna->AddLocalResource( pName,
  52. MakeIDNode( pName, GetType(), new expr_constant(0L) )
  53. ));
  54. }
  55. SetAllocatedOnStack( 1 );
  56. }
  57. return CG_OK;
  58. }