mirror of
				https://gitlab.gnome.org/GNOME/glib.git
				synced 2025-11-04 01:58:54 +01:00 
			
		
		
		
	The macros for the probes confuse the static analyser, and are often called with arguments which the analyser things shouldn’t be used any more (for example, the address of a block of memory which has just been freed). Signed-off-by: Philip Withnall <withnall@endlessm.com> Helps: #1767
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* GLIB - Library of useful routines for C programming
 | 
						|
 * 
 | 
						|
 * Copyright (C) 2009,2010 Red Hat, Inc.
 | 
						|
 *
 | 
						|
 * This library is free software; you can redistribute it and/or
 | 
						|
 * modify it under the terms of the GNU Lesser General Public
 | 
						|
 * License as published by the Free Software Foundation; either
 | 
						|
 * version 2.1 of the License, or (at your option) any later version.
 | 
						|
 *
 | 
						|
 * This library is distributed in the hope that it will be useful,
 | 
						|
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
						|
 * Lesser General Public License for more details.
 | 
						|
 *
 | 
						|
 * You should have received a copy of the GNU Lesser General
 | 
						|
 * Public License along with this library; if not, see <http://www.gnu.org/licenses/>.
 | 
						|
 *
 | 
						|
 * Author: Alexander Larsson <alexl@redhat.com>
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef __GIOTRACE_H__
 | 
						|
#define __GIOTRACE_H__
 | 
						|
 | 
						|
#ifndef SIZEOF_CHAR
 | 
						|
#error "config.h must be included prior to gio_trace.h"
 | 
						|
#endif
 | 
						|
 | 
						|
/* Ignore probes when doing static analysis, as they do weird things which
 | 
						|
 * confuses the analyser. */
 | 
						|
#if defined(HAVE_DTRACE) && !defined(__clang_analyzer__)
 | 
						|
 | 
						|
/* include the generated probes header and put markers in code */
 | 
						|
#include "gio_probes.h"
 | 
						|
#define TRACE(probe) probe
 | 
						|
 | 
						|
#else
 | 
						|
 | 
						|
/* Wrap the probe to allow it to be removed when no systemtap available */
 | 
						|
#define TRACE(probe)
 | 
						|
 | 
						|
#endif
 | 
						|
 | 
						|
#endif /* __GIOTRACE_H__ */
 |