Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/externals/ptl/include/PTL/Macros.hh

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /externals/ptl/include/PTL/Macros.hh (Version 11.3.0) and /externals/ptl/include/PTL/Macros.hh (Version 9.2.p2)


  1 //                                                  1 
  2 // MIT License                                    
  3 // Copyright (c) 2020 Jonathan R. Madsen          
  4 // Permission is hereby granted, free of charg    
  5 // of this software and associated documentati    
  6 // in the Software without restriction, includ    
  7 // to use, copy, modify, merge, publish, distr    
  8 // copies of the Software, and to permit perso    
  9 // furnished to do so, subject to the followin    
 10 // The above copyright notice and this permiss    
 11 // all copies or substantial portions of the S    
 12 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPR    
 13 // LIMITED TO THE WARRANTIES OF MERCHANTABILIT    
 14 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SH    
 15 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR    
 16 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARIS    
 17 // WITH THE SOFTWARE OR THE USE OR OTHER DEALI    
 18 //                                                
 19                                                   
 20 #pragma once                                      
 21                                                   
 22 #if defined(__APPLE__) || defined(__MACH__)       
 23 #    if !defined(PTL_MACOS)                       
 24 #        define PTL_MACOS 1                       
 25 #    endif                                        
 26 #    if !defined(PTL_UNIX)                        
 27 #        define PTL_UNIX 1                        
 28 #    endif                                        
 29 #endif                                            
 30                                                   
 31 #if defined(WIN32) || defined(_WIN32) || defin    
 32 #    if !defined(PTL_WINDOWS)                     
 33 #        define PTL_WINDOWS 1                     
 34 #    endif                                        
 35 #endif                                            
 36                                                   
 37 #if defined(__linux__) || defined(__linux) ||     
 38 #    if !defined(PTL_LINUX)                       
 39 #        define PTL_LINUX 1                       
 40 #    endif                                        
 41 #    if !defined(PTL_UNIX)                        
 42 #        define PTL_UNIX 1                        
 43 #    endif                                        
 44 #endif                                            
 45                                                   
 46 #if defined(__unix__) || defined(__unix) || de    
 47 #    if !defined(PTL_UNIX)                        
 48 #        define PTL_UNIX 1                        
 49 #    endif                                        
 50 #endif                                            
 51                                                   
 52 #if defined(PTL_WINDOWS)                          
 53 // Disable warning C4786 on WIN32 architecture    
 54 // identifier was truncated to '255' character    
 55 // in the debug information                       
 56 //                                                
 57 #    pragma warning(disable : 4786)               
 58 //                                                
 59 // Define DLL export macro for WIN32 systems f    
 60 // importing/exporting external symbols to DLL    
 61 //                                                
 62 #    if defined PTL_BUILD_DLL                     
 63 #        define DLLEXPORT __declspec(dllexport    
 64 #        define DLLIMPORT __declspec(dllimport    
 65 #    else                                         
 66 #        define DLLEXPORT                         
 67 #        define DLLIMPORT                         
 68 #    endif                                        
 69 //                                                
 70 // Unique identifier for global module            
 71 //                                                
 72 #    if defined PTL_ALLOC_EXPORT                  
 73 #        define PTL_DLL DLLEXPORT                 
 74 #    else                                         
 75 #        define PTL_DLL DLLIMPORT                 
 76 #    endif                                        
 77 #else                                             
 78 #    define DLLEXPORT                             
 79 #    define DLLIMPORT                             
 80 #    define PTL_DLL                               
 81 #endif                                            
 82                                                   
 83 #if !defined(PTL_DEFAULT_OBJECT)                  
 84 #    define PTL_DEFAULT_OBJECT(NAME)              
 85         NAME()            = default;              
 86         ~NAME()           = default;              
 87         NAME(const NAME&) = default;              
 88         NAME(NAME&&)      = default;              
 89         NAME& operator=(const NAME&) = default    
 90         NAME& operator=(NAME&&) = default;        
 91 #endif                                            
 92                                                   
 93 #if !defined(PTL_NO_SANITIZE_THREAD)              
 94 // expect that sanitizer is from compiler whic    
 95 #    if defined(__has_attribute)                  
 96 #        if __has_attribute(no_sanitize)          
 97 #            define PTL_NO_SANITIZE_THREAD __a    
 98 #        else                                     
 99 #            define PTL_NO_SANITIZE_THREAD        
100 #        endif                                    
101 #    elif defined(__clang__) || defined(__GNUC    
102 #        define PTL_NO_SANITIZE_THREAD __attri    
103 #    else                                         
104 // otherwise, make blank                          
105 #        define PTL_NO_SANITIZE_THREAD            
106 #    endif                                        
107 #endif                                            
108