sc_cmnhdr.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002 
00003   The following code is derived, directly or indirectly, from the SystemC
00004   source code Copyright (c) 1996-2006 by all Contributors.
00005   All Rights reserved.
00006 
00007   The contents of this file are subject to the restrictions and limitations
00008   set forth in the SystemC Open Source License Version 2.4 (the "License");
00009   You may not use this file except in compliance with such restrictions and
00010   limitations. You may obtain instructions on how to receive a copy of the
00011   License at http://www.systemc.org/. Software distributed by Contributors
00012   under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
00013   ANY KIND, either express or implied. See the License for the specific
00014   language governing rights and limitations under the License.
00015 
00016  *****************************************************************************/
00017 
00018 /*****************************************************************************
00019 
00020   sc_cmnhdr.h - Common header file containing handy pragmas, macros and
00021                 definitions common to all SystemC source files.
00022 
00023   Original Author: Amit Rao, Synopsys, Inc.
00024 
00025  *****************************************************************************/
00026 
00027 /*****************************************************************************
00028 
00029   MODIFICATION LOG - modifiers, enter your name, affiliation, date and
00030   changes you are making here.
00031 
00032       Name, Affiliation, Date:
00033   Description of Modification:
00034 
00035  *****************************************************************************/
00036 // $Log: sc_cmnhdr.h,v $
00037 // Revision 1.1.1.1  2006/12/15 20:31:36  acg
00038 // SystemC 2.2
00039 //
00040 // Revision 1.3  2006/01/13 18:44:29  acg
00041 // Added $Log to record CVS changes into the source.
00042 //
00043 
00044 #ifndef SC_CMNHDR_H
00045 #define SC_CMNHDR_H
00046 
00047 
00048 // all windows 32-bit compilers should define WIN32
00049 
00050 #if defined( _MSC_VER ) || defined( __BORLANDC__ )
00051 #ifndef WIN32
00052 #define WIN32
00053 #endif
00054 #endif
00055 
00056 // WIN64 is reserved for the future 64-bit OS
00057 
00058 #ifdef WIN64
00059 #error WIN64 keyword is reserved for 64-bit Windows
00060 #endif
00061 
00062 
00063 // ----------------------------------------------------------------------------
00064 
00065 #ifdef _MSC_VER
00066 
00067 // Disable VC++ warnings that are harmless
00068 
00069 // this : used in base member initializer list
00070 #pragma warning(disable: 4355)
00071 
00072 // new and delete warning when exception handling is turned on
00073 #pragma warning(disable: 4291)
00074 
00075 // in many places implicit conversion to bool
00076 // from other integral types is performed
00077 #pragma warning(disable: 4800)
00078 
00079 // unary minus operator applied to unsigned
00080 #pragma warning(disable: 4146)
00081 
00082 // multiple copy constructors
00083 #pragma warning(disable: 4521)
00084 
00085 // identifier was truncated to '255' characters in the browser information
00086 #pragma warning(disable: 4786)
00087 
00088 
00089 // Windows Version Build Option
00090 
00091 #define _WIN32_WINNT 0x0400
00092 #include <Windows.h>
00093 
00094 
00095 // MSVC6.0 for() scope bug
00096 
00097 #define for if( false ); else for
00098 
00099 #endif
00100 
00101 
00102 // ----------------------------------------------------------------------------
00103 
00104 #ifdef __BORLANDC__
00105 
00106 // Windows Version Build Option
00107 
00108 #define _WIN32_WINNT 0x0400
00109 #include <Windows.h>
00110 
00111 #endif
00112 
00113 
00114 // ----------------------------------------------------------------------------
00115 
00116 #include <cassert>
00117 #include <cstdio>
00118 #include <cstdlib>
00119 
00120 
00121 #endif
00122 
00123 // Taf!

Generated on Wed Jan 21 15:32:09 2009 for SystemC by  doxygen 1.5.5