assert.cpp revision 94d4a89729276abd319c0db2f5e9fb4a17f69e5f
2N/A * IPRT - Assertion Workers. 2N/A * Copyright (C) 2006-2007 Sun Microsystems, Inc. 2N/A * This file is part of VirtualBox Open Source Edition (OSE), as 2N/A * you can redistribute it and/or modify it under the terms of the GNU 2N/A * General Public License (GPL) as published by the Free Software 2N/A * Foundation, in version 2 as it comes in the "COPYING" file of the 2N/A * VirtualBox OSE distribution. VirtualBox OSE is distributed in the 2N/A * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. 2N/A * The contents of this file may alternatively be used under the terms 2N/A * of the Common Development and Distribution License Version 1.0 2N/A * (CDDL) only, as it comes in the "COPYING.CDDL" file of the 2N/A * VirtualBox OSE distribution, in which case the provisions of the 2N/A * CDDL are applicable instead of those of the GPL. 2N/A * You may elect to license modified versions of this file under the 2N/A * terms and conditions of either the GPL or the CDDL or both. 2N/A * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa 2N/A * additional information or have any questions. 2N/A/******************************************************************************* 2N/A*******************************************************************************/ 2N/A * This is legacy that should be eliminated. OS specific code deals with 2N/A * R0 assertions now and it will do the backdoor printfs in addition to 2N/A * proper OS specific printfs and panics / BSODs / IPEs. 2N/A * The 1st part of an assert message. 2N/A * @param pszExpr Expression. Can be NULL. 2N/A * @param uLine Location line number. 2N/A * @param pszFile Location file name. 2N/A * @param pszFunction Location function name. 2N/A * @remark This API exists in HC Ring-3 and GC. 2N/A "Location : %s(%d) %s\n",
2N/A * The 2nd (optional) part of an assert message. 2N/A * @param pszFormat Printf like format string. 2N/A * @param ... Arguments to that string. 2N/A * @remark This API exists in HC Ring-3 and GC. 2N/A * When we build this in the Linux kernel module, we wish to make the 2N/A * symbols available to other modules as well. 2N/A#
else /* !IN_RING0 */ 2N/A/** The last assert message, 1st part. */ 2N/A/** The last assert message, 2nd part. */ 2N/A * The 1st part of an assert message. 2N/A * @param pszExpr Expression. Can be NULL. 2N/A * @param uLine Location line number. 2N/A * @param pszFile Location file name. 2N/A * @param pszFunction Location function name. 2N/A * @remark This API exists in HC Ring-3 and GC. 2N/A "Location : %s(%d) %s\n",
2N/A "Location : %s(%d) %s\n",
2N/A "Location : %s(%d) %s\n",
2N/A /* print to stderr, helps user and gdb debugging. */ 2N/A "\n!!Assertion Failed!!\n" 2N/A "Location : %s(%d) %s\n",
"\n!!Assertion Failed!!\n" "Location : %s(%d) %s\n",
* The 2nd (optional) part of an assert message. * @param pszFormat Printf like format string. * @param ... Arguments to that string. * @remark This API exists in HC Ring-3 and GC. /* print to stderr, helps user and gdb debugging. */