Flutter Impeller
config.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #pragma once
6 
7 #include <cstdlib>
8 
9 #include "flutter/fml/logging.h"
10 
11 #if defined(__GNUC__) || defined(__clang__)
12 #define IMPELLER_COMPILER_CLANG 1
13 #else // defined(__GNUC__) || defined(__clang__)
14 #define IMPELLER_COMPILER_CLANG 0
15 #endif // defined(__GNUC__) || defined(__clang__)
16 
17 #if IMPELLER_COMPILER_CLANG
18 #define IMPELLER_PRINTF_FORMAT(format_number, args_number) \
19  __attribute__((format(printf, format_number, args_number)))
20 #else // IMPELLER_COMPILER_CLANG
21 #define IMPELLER_PRINTF_FORMAT(format_number, args_number)
22 #endif // IMPELLER_COMPILER_CLANG
23 
24 #define IMPELLER_UNIMPLEMENTED \
25  impeller::ImpellerUnimplemented(__FUNCTION__, __FILE__, __LINE__);
26 
27 namespace impeller {
28 
29 [[noreturn]] inline void ImpellerUnimplemented(const char* method,
30  const char* file,
31  int line) {
32  FML_CHECK(false) << "Unimplemented: " << method << " in " << file << ":"
33  << line;
34  std::abort();
35 }
36 
37 } // namespace impeller
impeller::ImpellerUnimplemented
void ImpellerUnimplemented(const char *method, const char *file, int line)
Definition: config.h:29
impeller
Definition: aiks_context.cc:10