Edit

kc3-lang/angle/src/compiler/translator/compilerdebug.h

Branch :

  • Show log

    Commit

  • Author : Geoff Lang
    Date : 2014-11-19 16:18:08
    Hash : 0a73dd85
    Message : Fix include guards. BUG=angle:733 Change-Id: I08b2c11c4831f1161c178c1842b10e807185aced Reviewed-on: https://chromium-review.googlesource.com/230831 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>

  • src/compiler/translator/compilerdebug.h
  • //
    // Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    
    // debug.h: Debugging utilities.
    
    #ifndef COMPILER_TRANSLATOR_COMPILERDEBUG_H_
    #define COMPILER_TRANSLATOR_COMPILERDEBUG_H_
    
    #include <assert.h>
    
    #ifdef _DEBUG
    #define TRACE_ENABLED  // define to enable debug message tracing
    #endif  // _DEBUG
    
    // Outputs text to the debug log
    #ifdef TRACE_ENABLED
    
    #ifdef  __cplusplus
    extern "C" {
    #endif  // __cplusplus
    void Trace(const char* format, ...);
    #ifdef  __cplusplus
    }
    #endif  // __cplusplus
    
    #else   // TRACE_ENABLED
    
    #define Trace(...) ((void)0)
    
    #endif  // TRACE_ENABLED
    
    // A macro asserting a condition and outputting failures to the debug log
    #define ASSERT(expression) do { \
        if(!(expression)) \
            Trace("Assert failed: %s(%d): "#expression"\n", __FUNCTION__, __LINE__); \
        assert(expression); \
    } while(0)
    
    #define UNIMPLEMENTED() do { \
        Trace("Unimplemented invoked: %s(%d)\n", __FUNCTION__, __LINE__); \
        assert(false); \
    } while(0)
    
    #define UNREACHABLE() do { \
        Trace("Unreachable reached: %s(%d)\n", __FUNCTION__, __LINE__); \
        assert(false); \
    } while(0)
    
    #endif   // COMPILER_TRANSLATOR_COMPILERDEBUG_H_