# 1 "/home/kowshik/Desktop/armclang_error/hi.cpp" # 1 "" 1 # 1 "" 3 # 419 "" 3 # 1 "" 1 # 1 "" 2 # 1 "/home/kowshik/Desktop/armclang_error/hi.cpp" 2 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/iostream" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* iostream synopsis #include #include #include #include namespace std { extern istream cin; extern ostream cout; extern ostream cerr; extern ostream clog; extern wistream wcin; extern wostream wcout; extern wostream wcerr; extern wostream wclog; } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/armv7r-ti-none-eabihf/c++/v1/__config_site" 1 3 //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* #undef _LIBCPP_ABI_VERSION */ /* #undef _LIBCPP_ABI_UNSTABLE */ /* #undef _LIBCPP_ABI_FORCE_ITANIUM */ /* #undef _LIBCPP_ABI_FORCE_MICROSOFT */ /* #undef _LIBCPP_HIDE_FROM_ABI_PER_TU_BY_DEFAULT */ /* #undef _LIBCPP_HAS_NO_STDIN */ /* #undef _LIBCPP_HAS_NO_STDOUT */ /* #undef _LIBCPP_HAS_MUSL_LIBC */ /* #undef _LIBCPP_HAS_THREAD_API_PTHREAD */ /* #undef _LIBCPP_HAS_THREAD_API_EXTERNAL */ /* #undef _LIBCPP_HAS_THREAD_API_WIN32 */ /* #undef _LIBCPP_HAS_THREAD_LIBRARY_EXTERNAL */ /* #undef _LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS */ /* #undef _LIBCPP_NO_VCRUNTIME */ /* #undef _LIBCPP_TYPEINFO_COMPARISON_IMPLEMENTATION */ /* #undef _LIBCPP_ABI_NAMESPACE */ /* #undef _LIBCPP_HAS_PARALLEL_ALGORITHMS */ /* #undef _LIBCPP_HAS_NO_RANDOM_DEVICE */ /* #undef _LIBCPP_HAS_NO_LOCALIZATION */ /* #undef _LIBCPP_HAS_NO_WIDE_CHARACTERS */ # 14 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 2 3 # 23 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 # 123 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Enable compiling copies of now inline methods into the dylib to support // applications compiled against older libraries. This is unnecessary with // COFF dllexport semantics, since dllexport forces a non-inline definition // of inline functions to be emitted anyway. Our own non-inline copy would // conflict with the dllexport-emitted copy, so we disable it. // Feature macros for disabling pre ABI v1 features. All of these options // are deprecated. // By default, don't use a nullptr_t emulation type in C++03. // // This is technically an ABI break from previous releases, however it is // very unlikely to impact anyone. If a user is impacted by this break, // they can return to using the C++03 nullptr emulation by defining // _LIBCPP_ABI_USE_CXX03_NULLPTR_EMULATION. // // This switch will be removed entirely in favour of never providing a // C++03 emulation after one release. // // IMPORTANT: IF YOU ARE READING THIS AND YOU TURN THIS MACRO ON, PLEASE LEAVE // A COMMENT ON https://reviews.llvm.org/D109459 OR YOU WILL BE BROKEN // IN THE FUTURE WHEN WE REMOVE THE ABILITY TO USE THE C++03 EMULATION. # 197 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // '__is_identifier' returns '0' if '__x' is a reserved identifier provided by // the compiler and '1' otherwise. # 231 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // FIXME: ABI detection should be done via compiler builtin macros. This // is just a placeholder until Clang implements such macros. For now assume // that Windows compilers pretending to be MSVC++ target the Microsoft ABI, // and allow the user to explicitly specify the ABI to handle cases where this // heuristic falls short. # 254 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Need to detect which libc we're using if we're on Linux. # 346 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Note: We assume that this will be defined elsewhere // note: this exists above and is separated by manufacturer //note: also defined is LIBCPP_USING_MERSENNE_RANDOM // this is depdent on the TI macro // Libc++ supports various implementations of std::random_device. // // _LIBCPP_USING_DEV_RANDOM // Read entropy from the given file, by default `/dev/urandom`. // If a token is provided, it is assumed to be the path to a file // to read entropy from. This is the default behavior if nothing // else is specified. This implementation requires storing state // inside `std::random_device`. // // _LIBCPP_USING_ARC4_RANDOM // Use arc4random(). This allows obtaining random data even when // using sandboxing mechanisms. On some platforms like Apple, this // is the recommended source of entropy for user-space programs. // When this option is used, the token passed to `std::random_device`'s // constructor *must* be "/dev/urandom" -- anything else is an error. // // _LIBCPP_USING_GETENTROPY // Use getentropy(). // When this option is used, the token passed to `std::random_device`'s // constructor *must* be "/dev/urandom" -- anything else is an error. // // _LIBCPP_USING_FUCHSIA_CPRNG // Use Fuchsia's zx_cprng_draw() system call, which is specified to // deliver high-quality entropy and cannot fail. // When this option is used, the token passed to `std::random_device`'s // constructor *must* be "/dev/urandom" -- anything else is an error. // // _LIBCPP_USING_NACL_RANDOM // NaCl's sandbox (which PNaCl also runs in) doesn't allow filesystem access, // including accesses to the special files under `/dev`. This implementation // uses the NaCL syscall `nacl_secure_random_init()` to get entropy. // When this option is used, the token passed to `std::random_device`'s // constructor *must* be "/dev/urandom" -- anything else is an error. // // _LIBCPP_USING_WIN32_RANDOM // Use rand_s(), for use on Windows. // When this option is used, the token passed to `std::random_device`'s // constructor *must* be "/dev/urandom" -- anything else is an error. # 437 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // If the compiler supports using_if_exists, pretend we have those functions and they'll // be picked up if the C library provides them. // // TODO: Once we drop support for Clang 12, we can assume the compiler supports using_if_exists // for platforms that don't have a conforming C11 library, so we can drop this whole thing. # 558 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Objective-C++ features (opt-in) # 583 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Allow for build-time disabling of unsigned integer sanitization # 713 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // The inline should be removed once PR32114 is resolved # 837 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Just so we can migrate to the new macros gradually. // Inline namespaces are available in Clang/GCC/MSVC regardless of C++ dialect. namespace std { inline namespace __1 { } } # 926 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // _LIBCPP_DEBUG potential values: // - undefined: No assertions. This is the default. // - 0: Basic assertions // - 1: Basic assertions + iterator validity checks + unspecified behavior randomization. # 959 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Libc++ allows disabling extern template instantiation declarations by // means of users defining _LIBCPP_DISABLE_EXTERN_TEMPLATE. // // Furthermore, when the Debug mode is enabled, we disable extern declarations // when building user code because we don't want to use the functions compiled // in the library, which might not have had the debug mode enabled when built. // However, some extern declarations need to be used, because code correctness // depends on it (several instances in ). Those special declarations // are declared with _LIBCPP_EXTERN_TEMPLATE_EVEN_IN_DEBUG_MODE, which is enabled // even when the debug mode is enabled. # 989 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // If we are getting operator new from the MSVC CRT, then allocation overloads // for align_val_t were added in 19.12, aka VS 2017 version 15.3. # 1018 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Deprecation macros. // // Deprecations warnings are always enabled, except when users explicitly opt-out // by defining _LIBCPP_DISABLE_DEPRECATION_WARNINGS. # 1064 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Macros to enter and leave a state where deprecation warnings are suppressed. # 1112 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // _LIBCPP_NODISCARD_EXT may be used to apply [[nodiscard]] to entities not // specified as such as an extension. # 1138 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Try to find out if RTTI is disabled. # 1151 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Thread API # 1207 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // The glibc and Bionic implementation of pthreads implements // pthread_mutex_destroy as nop for regular mutexes. Additionally, Win32 // mutexes have no destroy mechanism. // // This optimization can't be performed on Apple platforms, where // pthread_mutex_destroy can allow the kernel to release resources. // See https://llvm.org/D64298 for details. // // TODO(EricWF): Enable this optimization on Bionic after speaking to their // respective stakeholders. // Destroying a condvar is a nop on Windows. // // This optimization can't be performed on Apple platforms, where // pthread_cond_destroy can allow the kernel to release resources. // See https://llvm.org/D64298 for details. // // TODO(EricWF): This is potentially true for some pthread implementations // as well. // Some systems do not provide gets() in their C library, for security reasons. # 1307 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Use a function like macro to imply that it must be followed by a semicolon # 1336 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // We often repeat things just for handling wide characters in the library. // When wide characters are disabled, it can be useful to have a quick way of // disabling it without having to resort to #if-#endif, which has a larger // impact on readability. # 1380 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Don't warn about macro conflicts when we can restore them at the // end of the header. # 1412 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // Configures the fopen close-on-exec mode character, if any. This string will // be appended to any mode string used by fstream for fopen/fdopen. // // Not all platforms support this, but it helps avoid fd-leaks on platforms that // do. // Support for _FILE_OFFSET_BITS=64 landed gradually in Android, so the full set // of functions used in cstdio may not be available for low API levels when // using 64-bit file offsets on LP32. // TODO: Remove this once we drop support for building libc++ with old Clangs # 1443 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__config" 3 // The attribute uses 1-based indices for ordinary and static member functions. // The attribute uses 2-based indices for non-static member functions. # 37 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/iostream" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/ios" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* ios synopsis #include namespace std { typedef OFF_T streamoff; typedef SZ_T streamsize; template class fpos; class ios_base { public: class failure; typedef T1 fmtflags; static constexpr fmtflags boolalpha; static constexpr fmtflags dec; static constexpr fmtflags fixed; static constexpr fmtflags hex; static constexpr fmtflags internal; static constexpr fmtflags left; static constexpr fmtflags oct; static constexpr fmtflags right; static constexpr fmtflags scientific; static constexpr fmtflags showbase; static constexpr fmtflags showpoint; static constexpr fmtflags showpos; static constexpr fmtflags skipws; static constexpr fmtflags unitbuf; static constexpr fmtflags uppercase; static constexpr fmtflags adjustfield; static constexpr fmtflags basefield; static constexpr fmtflags floatfield; typedef T2 iostate; static constexpr iostate badbit; static constexpr iostate eofbit; static constexpr iostate failbit; static constexpr iostate goodbit; typedef T3 openmode; static constexpr openmode app; static constexpr openmode ate; static constexpr openmode binary; static constexpr openmode in; static constexpr openmode out; static constexpr openmode trunc; typedef T4 seekdir; static constexpr seekdir beg; static constexpr seekdir cur; static constexpr seekdir end; class Init; // 27.5.2.2 fmtflags state: fmtflags flags() const; fmtflags flags(fmtflags fmtfl); fmtflags setf(fmtflags fmtfl); fmtflags setf(fmtflags fmtfl, fmtflags mask); void unsetf(fmtflags mask); streamsize precision() const; streamsize precision(streamsize prec); streamsize width() const; streamsize width(streamsize wide); // 27.5.2.3 locales: locale imbue(const locale& loc); locale getloc() const; // 27.5.2.5 storage: static int xalloc(); long& iword(int index); void*& pword(int index); // destructor virtual ~ios_base(); // 27.5.2.6 callbacks; enum event { erase_event, imbue_event, copyfmt_event }; typedef void (*event_callback)(event, ios_base&, int index); void register_callback(event_callback fn, int index); ios_base(const ios_base&) = delete; ios_base& operator=(const ios_base&) = delete; static bool sync_with_stdio(bool sync = true); protected: ios_base(); }; template > class basic_ios : public ios_base { public: // types: typedef charT char_type; typedef typename traits::int_type int_type; // removed in C++17 typedef typename traits::pos_type pos_type; // removed in C++17 typedef typename traits::off_type off_type; // removed in C++17 typedef traits traits_type; operator unspecified-bool-type() const; bool operator!() const; iostate rdstate() const; void clear(iostate state = goodbit); void setstate(iostate state); bool good() const; bool eof() const; bool fail() const; bool bad() const; iostate exceptions() const; void exceptions(iostate except); // 27.5.4.1 Constructor/destructor: explicit basic_ios(basic_streambuf* sb); virtual ~basic_ios(); // 27.5.4.2 Members: basic_ostream* tie() const; basic_ostream* tie(basic_ostream* tiestr); basic_streambuf* rdbuf() const; basic_streambuf* rdbuf(basic_streambuf* sb); basic_ios& copyfmt(const basic_ios& rhs); char_type fill() const; char_type fill(char_type ch); locale imbue(const locale& loc); char narrow(char_type c, char dfault) const; char_type widen(char c) const; basic_ios(const basic_ios& ) = delete; basic_ios& operator=(const basic_ios&) = delete; protected: basic_ios(); void init(basic_streambuf* sb); void move(basic_ios& rhs); void swap(basic_ios& rhs) noexcept; void set_rdbuf(basic_streambuf* sb); }; // 27.5.5, manipulators: ios_base& boolalpha (ios_base& str); ios_base& noboolalpha(ios_base& str); ios_base& showbase (ios_base& str); ios_base& noshowbase (ios_base& str); ios_base& showpoint (ios_base& str); ios_base& noshowpoint(ios_base& str); ios_base& showpos (ios_base& str); ios_base& noshowpos (ios_base& str); ios_base& skipws (ios_base& str); ios_base& noskipws (ios_base& str); ios_base& uppercase (ios_base& str); ios_base& nouppercase(ios_base& str); ios_base& unitbuf (ios_base& str); ios_base& nounitbuf (ios_base& str); // 27.5.5.2 adjustfield: ios_base& internal (ios_base& str); ios_base& left (ios_base& str); ios_base& right (ios_base& str); // 27.5.5.3 basefield: ios_base& dec (ios_base& str); ios_base& hex (ios_base& str); ios_base& oct (ios_base& str); // 27.5.5.4 floatfield: ios_base& fixed (ios_base& str); ios_base& scientific (ios_base& str); ios_base& hexfloat (ios_base& str); ios_base& defaultfloat(ios_base& str); // 27.5.5.5 error reporting: enum class io_errc { stream = 1 }; concept_map ErrorCodeEnum { }; error_code make_error_code(io_errc e) noexcept; error_condition make_error_condition(io_errc e) noexcept; storage-class-specifier const error_category& iostream_category() noexcept; } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__locale" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__availability" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 17 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__availability" 3 // Libc++ is shipped by various vendors. In particular, it is used as a system // library on macOS, iOS and other Apple platforms. In order for users to be // able to compile a binary that is intended to be deployed to an older version // of a platform, Clang provides availability attributes [1]. These attributes // can be placed on declarations and are used to describe the life cycle of a // symbol in the library. // // The main goal is to ensure a compile-time error if a symbol that hasn't been // introduced in a previously released library is used in a program that targets // that previously released library. Normally, this would be a load-time error // when one tries to launch the program against the older library. // // For example, the filesystem library was introduced in the dylib in macOS 10.15. // If a user compiles on a macOS 10.15 host but targets macOS 10.13 with their // program, the compiler would normally not complain (because the required // declarations are in the headers), but the dynamic loader would fail to find // the symbols when actually trying to launch the program on macOS 10.13. To // turn this into a compile-time issue instead, declarations are annotated with // when they were introduced, and the compiler can produce a diagnostic if the // program references something that isn't available on the deployment target. // // This mechanism is general in nature, and any vendor can add their markup to // the library (see below). Whenever a new feature is added that requires support // in the shared library, a macro should be added below to mark this feature // as unavailable. When vendors decide to ship the feature as part of their // shared library, they can update the markup appropriately. // // Furthermore, many features in the standard library have corresponding // feature-test macros. When a feature is made unavailable on some deployment // target, a macro should be defined to signal that it is unavailable. That // macro can then be picked up when feature-test macros are generated (see // generate_feature_test_macro_components.py) to make sure that feature-test // macros don't announce a feature as being implemented if it has been marked // as unavailable. // // Note that this mechanism is disabled by default in the "upstream" libc++. // Availability annotations are only meaningful when shipping libc++ inside // a platform (i.e. as a system library), and so vendors that want them should // turn those annotations on at CMake configuration time. // // [1]: https://clang.llvm.org/docs/AttributeReference.html#availability // For backwards compatibility, allow users to define _LIBCPP_DISABLE_AVAILABILITY // for a while. // Availability markup is disabled when building the library, or when the compiler // doesn't support the proper attributes. # 84 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__availability" 3 // This controls the availability of std::shared_mutex and std::shared_timed_mutex, // which were added to the dylib later. // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_shared_mutex // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_shared_timed_mutex // These macros control the availability of std::bad_optional_access and // other exception types. These were put in the shared library to prevent // code bloat from every user program defining the vtable for these exception // types. // This controls the availability of std::uncaught_exceptions(). // This controls the availability of the sized version of ::operator delete, // which was added to the dylib later. // This controls the availability of the std::future_error exception. // This controls the availability of std::type_info's vtable. // I can't imagine how using std::type_info can work at all if // this isn't supported. // This controls the availability of std::locale::category members // (e.g. std::locale::collate), which are defined in the dylib. // This controls the availability of atomic operations on std::shared_ptr // (e.g. `std::atomic_store(std::shared_ptr)`), which require a shared // lock table located in the dylib. // These macros control the availability of all parts of that // depend on something in the dylib. // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_filesystem // This controls the availability of std::to_chars. // This controls the availability of floating-point std::to_chars functions. // These overloads were added later than the integer overloads. // This controls the availability of the C++20 synchronization library, // which requires shared library support for various operations // (see libcxx/src/atomic.cpp). // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_atomic_wait // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_barrier // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_latch // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_semaphore // This controls the availability of the C++20 format library. // The library is in development and not ABI stable yet. P2216 is // retroactively accepted in C++20. This paper contains ABI breaking // changes. // # define _LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_format # 262 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__availability" 3 // Define availability attributes that depend on _LIBCPP_NO_EXCEPTIONS. // Those are defined in terms of the availability attributes above, and // should not be vendor-specific. # 14 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__locale" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cctype" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* cctype synopsis namespace std { int isalnum(int c); int isalpha(int c); int isblank(int c); // C99 int iscntrl(int c); int isdigit(int c); int isgraph(int c); int islower(int c); int isprint(int c); int ispunct(int c); int isspace(int c); int isupper(int c); int isxdigit(int c); int tolower(int c); int toupper(int c); } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/ctype.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* ctype.h synopsis int isalnum(int c); int isalpha(int c); int isblank(int c); // C99 int iscntrl(int c); int isdigit(int c); int isgraph(int c); int islower(int c); int isprint(int c); int ispunct(int c); int isspace(int c); int isupper(int c); int isxdigit(int c); int tolower(int c); int toupper(int c); */ # 36 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/ctype.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 1 3 /*****************************************************************************/ /* ctype.h */ /* */ /* Copyright (c) 1993 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ /************************************************************************/ /* */ /* CHARACTER TYPING FUNCTIONS AND MACROS */ /* */ /* Note that in this implementation, either macros or functions may */ /* be used. Macros are prefixed with an underscore. */ /* */ /************************************************************************/ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 1 3 /*****************************************************************************/ /* _ti_config.h */ /* */ /* Copyright (c) 2017 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ /*Unsupported pragmas are omitted */ # 59 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 3 /* Hide uses of the TI proprietary macros behind other macros. Implementations that don't implement these features should leave these macros undefined. */ # 86 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 3 /* Common definitions */ /* C++ */ /* C++11 */ # 129 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 3 /* _TI_NOEXCEPT_CPP14 is defined to noexcept only when compiling for C++14. It is intended to be used for functions like abort and atexit that are supposed to be declared noexcept only in C++14 mode. */ # 140 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 3 /* Target-specific definitions */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/linkage.h" 1 3 /*****************************************************************************/ /* linkage.h v##### */ /* Copyright (c) 1998@%%%% Texas Instruments Incorporated */ /*****************************************************************************/ /* No modifiers are needed to access code or data */ /*--------------------------------------------------------------------------*/ /* Define _IDECL ==> how inline functions are declared */ /*--------------------------------------------------------------------------*/ # 142 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_ti_config.h" 2 3 # 50 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 2 3 /* standard types required for standard headers */ /* need to define inline function */ /* #includes required for implementation */ /* macros required for implementation */ /* standard headers must define standard names */ extern "C" { extern const unsigned char _ctypes_[257]; /************************************************************************/ /* FUNCTION DECLARATIONS */ /************************************************************************/ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_isfuncdcl.h" 1 3 /****************************************************************************/ /* _ISFUNCDCL.H */ /* */ /* Copyright (c) 2005 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /****************************************************************************/ static __inline int isalnum(int _c); static __inline int isalpha(int _c); static __inline int isblank(int _c); static __inline int iscntrl(int _c); static __inline int isdigit(int _c); static __inline int isgraph(int _c); static __inline int islower(int _c); static __inline int isprint(int _c); static __inline int ispunct(int _c); static __inline int isspace(int _c); static __inline int isupper(int _c); static __inline int isxdigit(int _c); static __inline int isascii(int _c); static __inline int toascii(int _c); # 75 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 2 3 static __inline int toupper(int ch); static __inline int tolower(int ch); } /* extern "C" */ extern unsigned char const __aeabi_ctype_table_C[257]; /* "C" locale */ extern unsigned char const __aeabi_ctype_table_[257]; /* default locale */ # 96 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 3 /* AEABI portable ctype flag bits */ # 157 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_isfuncdef.h" 1 3 /****************************************************************************/ /* _ISFUNCDEF.H */ /* */ /* Copyright (c) 2005 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /****************************************************************************/ # 45 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_isfuncdef.h" 3 /* casts to int needed for reasonable impl; arguable false positive due to function-like macros reporting as complex expressions */ static __inline int isalnum(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] << 30)); } static __inline int isalpha(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 1))); } static __inline int isascii(int _c) { return((int)(((unsigned int)(_c) & ~(unsigned int)0x7F) == 0u)); } static __inline int isblank(int _c) { return((int)(((_c) == ' ') || ((_c) == '\t'))); } static __inline int iscntrl(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char)128))); } static __inline int isdigit(int _c) { return((int)(((unsigned)(_c) - (unsigned)'0') < 10)); } static __inline int isgraph(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] << 29)); } static __inline int islower(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 32))); } static __inline int isprint(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] << 28)); } static __inline int ispunct(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 4))); } static __inline int isspace(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 16))); } static __inline int isupper(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 64))); } static __inline int isxdigit(int _c) { return((int)((__aeabi_ctype_table_+1)[(_c)] & ((unsigned char) 2))); } static __inline int toascii(int _c) { return((int)((unsigned int)(_c) & (unsigned int)0x7F)); } # 158 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/ctype.h" 2 3 /****************************************************************************/ /* tolower */ /****************************************************************************/ static __inline int tolower(int ch) { /* This code depends on two assumptions: (1) all of the letters of the alphabet of a given case are contiguous, and (2) the lower and upper case forms of each letter are displaced from each other by the same constant value. */ if ( ((unsigned int)ch - (unsigned int)'A') <= ((unsigned int)'Z' - (unsigned int)'A')) { ch += (int)'a' - (int)'A'; } return ch; } /****************************************************************************/ /* toupper */ /****************************************************************************/ static __inline int toupper(int ch) { /* This code depends on two assumptions: (1) all of the letters of the alphabet of a given case are contiguous, and (2) the lower and upper case forms of each letter are displaced from each other by the same constant value. */ if ( ((unsigned int)ch - (unsigned int)'a') <= ((unsigned int)'z' - (unsigned int)'a')) { ch -= (int)'a' - (int)'A'; } return ch; } # 39 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/ctype.h" 2 3 # 39 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cctype" 2 3 # 42 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cctype" 3 namespace std { inline namespace __1 { # 103 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cctype" 3 using ::isalnum __attribute__((using_if_exists)); using ::isalpha __attribute__((using_if_exists)); using ::isblank __attribute__((using_if_exists)); using ::iscntrl __attribute__((using_if_exists)); using ::isdigit __attribute__((using_if_exists)); using ::isgraph __attribute__((using_if_exists)); using ::islower __attribute__((using_if_exists)); using ::isprint __attribute__((using_if_exists)); using ::ispunct __attribute__((using_if_exists)); using ::isspace __attribute__((using_if_exists)); using ::isupper __attribute__((using_if_exists)); using ::isxdigit __attribute__((using_if_exists)); using ::tolower __attribute__((using_if_exists)); using ::toupper __attribute__((using_if_exists)); } } # 16 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__locale" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstdint" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* cstdint synopsis Macros: INT8_MIN INT16_MIN INT32_MIN INT64_MIN INT8_MAX INT16_MAX INT32_MAX INT64_MAX UINT8_MAX UINT16_MAX UINT32_MAX UINT64_MAX INT_LEAST8_MIN INT_LEAST16_MIN INT_LEAST32_MIN INT_LEAST64_MIN INT_LEAST8_MAX INT_LEAST16_MAX INT_LEAST32_MAX INT_LEAST64_MAX UINT_LEAST8_MAX UINT_LEAST16_MAX UINT_LEAST32_MAX UINT_LEAST64_MAX INT_FAST8_MIN INT_FAST16_MIN INT_FAST32_MIN INT_FAST64_MIN INT_FAST8_MAX INT_FAST16_MAX INT_FAST32_MAX INT_FAST64_MAX UINT_FAST8_MAX UINT_FAST16_MAX UINT_FAST32_MAX UINT_FAST64_MAX INTPTR_MIN INTPTR_MAX UINTPTR_MAX INTMAX_MIN INTMAX_MAX UINTMAX_MAX PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX INT8_C(value) INT16_C(value) INT32_C(value) INT64_C(value) UINT8_C(value) UINT16_C(value) UINT32_C(value) UINT64_C(value) INTMAX_C(value) UINTMAX_C(value) namespace std { Types: int8_t int16_t int32_t int64_t uint8_t uint16_t uint32_t uint64_t int_least8_t int_least16_t int_least32_t int_least64_t uint_least8_t uint_least16_t uint_least32_t uint_least64_t int_fast8_t int_fast16_t int_fast32_t int_fast64_t uint_fast8_t uint_fast16_t uint_fast32_t uint_fast64_t intptr_t uintptr_t intmax_t uintmax_t } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stdint.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T // is defined until an inclusion of it without _STD_TYPES_T occurs, in which // case the header guard macro is defined. /* stdint.h synopsis Macros: INT8_MIN INT16_MIN INT32_MIN INT64_MIN INT8_MAX INT16_MAX INT32_MAX INT64_MAX UINT8_MAX UINT16_MAX UINT32_MAX UINT64_MAX INT_LEAST8_MIN INT_LEAST16_MIN INT_LEAST32_MIN INT_LEAST64_MIN INT_LEAST8_MAX INT_LEAST16_MAX INT_LEAST32_MAX INT_LEAST64_MAX UINT_LEAST8_MAX UINT_LEAST16_MAX UINT_LEAST32_MAX UINT_LEAST64_MAX INT_FAST8_MIN INT_FAST16_MIN INT_FAST32_MIN INT_FAST64_MIN INT_FAST8_MAX INT_FAST16_MAX INT_FAST32_MAX INT_FAST64_MAX UINT_FAST8_MAX UINT_FAST16_MAX UINT_FAST32_MAX UINT_FAST64_MAX INTPTR_MIN INTPTR_MAX UINTPTR_MAX INTMAX_MIN INTMAX_MAX UINTMAX_MAX PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX INT8_C(value) INT16_C(value) INT32_C(value) INT64_C(value) UINT8_C(value) UINT16_C(value) UINT32_C(value) UINT64_C(value) INTMAX_C(value) UINTMAX_C(value) */ # 110 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stdint.h" 3 /* C99 stdlib (e.g. glibc < 2.18) does not provide macros needed for C++11 unless __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS are defined */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stdint.h" 1 3 /*===---- stdint.h - Standard header for sized integer types --------------===*\ * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * \*===----------------------------------------------------------------------===*/ // AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T // is defined until an inclusion of it without _STD_TYPES_T occurs, in which // case the header guard macro is defined. /* If we're hosted, fall back to the system's stdint.h, which might have * additional definitions. */ // C99 7.18.3 Limits of other integer types // // Footnote 219, 220: C++ implementations should define these macros only when // __STDC_LIMIT_MACROS is defined before is included. // // Footnote 222: C++ implementations should define these macros only when // __STDC_CONSTANT_MACROS is defined before is included. // // C++11 [cstdint.syn]p2: // // The macros defined by are provided unconditionally. In particular, // the symbols __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS (mentioned in // footnotes 219, 220, and 222 in the C standard) play no role in C++. // // C11 removed the problematic footnotes. // // Work around this inconsistency by always defining those macros in C++ mode, // so that a C library implementation which follows the C99 standard can be // used in C++. # 52 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stdint.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/stdint.h" 1 3 /*****************************************************************************/ /* STDINT.H */ /* */ /* Copyright (c) 2002 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ /* no code before #include */ /* prefer functions to macros */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_stdint40.h" 1 3 /*****************************************************************************/ /* _STDINT40.H */ /* */ /* Copyright (c) 2018 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ /* prefer functions to macros */ # 54 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/_stdint40.h" 3 /* According to footnotes in the 1999 C standard, "C++ implementations should define these macros only when __STDC_LIMIT_MACROS is defined before is included." */ # 47 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/stdint.h" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2001 Mike Barcroft * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD$ */ # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 1 3 /* libc/sys/linux/sys/cdefs.h - Helper macros for K&R vs. ANSI C compat. */ /* Written 2000 by Werner Almesberger */ /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1991, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Berkeley Software Design, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)cdefs.h 8.8 (Berkeley) 1/9/95 * $FreeBSD$ */ # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 1 3 /* * $Id$ */ # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 1 3 /* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2014. * * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. * * $Id$ */ extern "C" { # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/_newlib_version.h" 1 3 /* _newlib_version.h. Generated from _newlib_version.hin by configure. */ /* Version macros for internal and downstream use. */ # 29 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 2 3 /* Macro to test version of GCC. Returns 0 for non-GCC or too old GCC. */ # 39 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 3 /* Version with trailing underscores for BSD compatibility. */ /* * Feature test macros control which symbols are exposed by the system * headers. Any of these must be defined before including any headers. * * __STRICT_ANSI__ (defined by gcc -ansi, -std=c90, -std=c99, or -std=c11) * ISO C * * _POSIX_SOURCE (deprecated by _POSIX_C_SOURCE=1) * _POSIX_C_SOURCE >= 1 * POSIX.1-1990 * * _POSIX_C_SOURCE >= 2 * POSIX.2-1992 * * _POSIX_C_SOURCE >= 199309L * POSIX.1b-1993 Real-time extensions * * _POSIX_C_SOURCE >= 199506L * POSIX.1c-1995 Threads extensions * * _POSIX_C_SOURCE >= 200112L * POSIX.1-2001 and C99 * * _POSIX_C_SOURCE >= 200809L * POSIX.1-2008 * * _XOPEN_SOURCE * POSIX.1-1990 and XPG4 * * _XOPEN_SOURCE_EXTENDED * SUSv1 (POSIX.2-1992 plus XPG4v2) * * _XOPEN_SOURCE >= 500 * SUSv2 (POSIX.1c-1995 plus XSI) * * _XOPEN_SOURCE >= 600 * SUSv3 (POSIX.1-2001 plus XSI) and C99 * * _XOPEN_SOURCE >= 700 * SUSv4 (POSIX.1-2008 plus XSI) * * _ISOC99_SOURCE or gcc -std=c99 or g++ * ISO C99 * * _ISOC11_SOURCE or gcc -std=c11 or g++ -std=c++11 * ISO C11 * * _ATFILE_SOURCE (implied by _POSIX_C_SOURCE >= 200809L) * "at" functions * * _LARGEFILE_SOURCE (deprecated by _XOPEN_SOURCE >= 500) * fseeko, ftello * * _GNU_SOURCE * All of the above plus GNU extensions * * _BSD_SOURCE (deprecated by _DEFAULT_SOURCE) * _SVID_SOURCE (deprecated by _DEFAULT_SOURCE) * _DEFAULT_SOURCE (or none of the above) * POSIX-1.2008 with BSD and SVr4 extensions * * _FORTIFY_SOURCE = 1 or 2 * Object Size Checking function wrappers */ # 162 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 3 /* * The following private macros are used throughout the headers to control * which symbols should be exposed. They are for internal use only, as * indicated by the leading double underscore, and must never be used outside * of these headers. * * __POSIX_VISIBLE * any version of POSIX.1; enabled by default, or with _POSIX_SOURCE, * any value of _POSIX_C_SOURCE, or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 2 * POSIX.2-1992; enabled by default, with _POSIX_C_SOURCE >= 2, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 199309 * POSIX.1b-1993; enabled by default, with _POSIX_C_SOURCE >= 199309L, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 199506 * POSIX.1c-1995; enabled by default, with _POSIX_C_SOURCE >= 199506L, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 200112 * POSIX.1-2001; enabled by default, with _POSIX_C_SOURCE >= 200112L, * or _XOPEN_SOURCE >= 600. * * __POSIX_VISIBLE >= 200809 * POSIX.1-2008; enabled by default, with _POSIX_C_SOURCE >= 200809L, * or _XOPEN_SOURCE >= 700. * * __XSI_VISIBLE * XPG4 XSI extensions; enabled with any version of _XOPEN_SOURCE. * * __XSI_VISIBLE >= 4 * SUSv1 XSI extensions; enabled with both _XOPEN_SOURCE and * _XOPEN_SOURCE_EXTENDED together. * * __XSI_VISIBLE >= 500 * SUSv2 XSI extensions; enabled with _XOPEN_SOURCE >= 500. * * __XSI_VISIBLE >= 600 * SUSv3 XSI extensions; enabled with _XOPEN_SOURCE >= 600. * * __XSI_VISIBLE >= 700 * SUSv4 XSI extensions; enabled with _XOPEN_SOURCE >= 700. * * __ISO_C_VISIBLE >= 1999 * ISO C99; enabled with gcc -std=c99 or newer (on by default since GCC 5), * any version of C++, or with _ISOC99_SOURCE, _POSIX_C_SOURCE >= 200112L, * or _XOPEN_SOURCE >= 600. * * __ISO_C_VISIBLE >= 2011 * ISO C11; enabled with gcc -std=c11 or newer (on by default since GCC 5), * g++ -std=c++11 or newer (on by default since GCC 6), or with * _ISOC11_SOURCE. * * __ATFILE_VISIBLE * "at" functions; enabled by default, with _ATFILE_SOURCE, * _POSIX_C_SOURCE >= 200809L, or _XOPEN_SOURCE >= 700. * * __LARGEFILE_VISIBLE * fseeko, ftello; enabled with _LARGEFILE_SOURCE or _XOPEN_SOURCE >= 500. * * __BSD_VISIBLE * BSD extensions; enabled by default, or with _BSD_SOURCE. * * __SVID_VISIBLE * SVr4 extensions; enabled by default, or with _SVID_SOURCE. * * __MISC_VISIBLE * Extensions found in both BSD and SVr4 (shorthand for * (__BSD_VISIBLE || __SVID_VISIBLE)), or newlib-specific * extensions; enabled by default. * * __GNU_VISIBLE * GNU extensions; enabled with _GNU_SOURCE. * * __SSP_FORTIFY_LEVEL * Object Size Checking; defined to 0 (off), 1, or 2. * * In all cases above, "enabled by default" means either by defining * _DEFAULT_SOURCE, or by not defining any of the public feature test macros. */ # 333 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 3 /* RTEMS adheres to POSIX -- 1003.1b with some features from annexes. */ # 390 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 3 /* XMK loosely adheres to POSIX -- 1003.1 */ # 535 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/features.h" 3 } # 9 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 2 3 /* * Guess on types by examining *_MIN / *_MAX defines. */ /* GCC >= 3.3.0 has ____ implicitly defined. */ /* Check if "long long" is 64bit wide */ /* Modern GCCs provide __LONG_LONG_MAX__, SUSv3 wants LLONG_MAX */ /* Check if "long" is 64bit or 32bit wide */ extern "C" { typedef signed char __int8_t; typedef unsigned char __uint8_t; # 55 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef short __int16_t; typedef unsigned short __uint16_t; # 77 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef int __int32_t; typedef unsigned int __uint32_t; # 103 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef long long int __int64_t; typedef long long unsigned int __uint64_t; # 134 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef signed char __int_least8_t; typedef unsigned char __uint_least8_t; # 160 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef short __int_least16_t; typedef unsigned short __uint_least16_t; # 182 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef int __int_least32_t; typedef unsigned int __uint_least32_t; # 200 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef long long int __int_least64_t; typedef long long unsigned int __uint_least64_t; # 214 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef signed char __int_fast8_t; typedef unsigned char __uint_fast8_t; # 240 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef short __int_fast16_t; typedef unsigned short __uint_fast16_t; # 262 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef int __int_fast32_t; typedef unsigned int __uint_fast32_t; # 280 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef long long int __int_fast64_t; typedef long long unsigned int __uint_fast64_t; # 294 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 typedef long long int __intmax_t; typedef long long unsigned int __uintmax_t; typedef int __intptr_t; typedef unsigned int __uintptr_t; # 327 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_default_types.h" 3 } # 46 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 22 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 3 /* stddef.h synopsis Macros: offsetof(type,member-designator) NULL Types: ptrdiff_t size_t max_align_t // C++11 nullptr_t */ # 43 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 17 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 3 /* Always define miscellaneous pieces when modules are available. */ # 26 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 3 /* __need_wint_t is intentionally not defined here. */ /* Always define ptrdiff_t when modules are available. */ typedef int ptrdiff_t; /* Always define size_t when modules are available. */ typedef unsigned int size_t; /* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is * enabled. */ # 102 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/__stddef_max_align_t.h" 1 3 /*===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 18 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/__stddef_max_align_t.h" 3 // Define 'max_align_t' to match the GCC definition. typedef struct { long long __clang_max_align_nonce1 __attribute__((__aligned__(__alignof__(long long)))); long double __clang_max_align_nonce2 __attribute__((__aligned__(__alignof__(long double)))); } max_align_t; # 103 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 2 3 /* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use __WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ # 46 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 2 3 extern "C++" { # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__nullptr" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 17 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__nullptr" 3 # 54 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__nullptr" 3 namespace std { typedef decltype(nullptr) nullptr_t; } // namespace std # 51 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 2 3 using std::nullptr_t; } # 48 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 2 3 # 71 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Testing against Clang-specific extensions. */ # 98 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * This code has been put in place to help reduce the addition of * compiler specific defines in FreeBSD code. It helps to aid in * having a compiler-agnostic source tree. */ # 136 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Compiler memory barriers, specific to gcc and clang. */ # 150 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced */ # 164 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * The __CONCAT macro is used to concatenate parts of symbol names, e.g. * with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo. * The __CONCAT macro is a bit tricky to use if it must work in non-ANSI * mode -- there must be no spaces between its arguments, and for nested * __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also * concatenate double-quoted strings produced by the __STRING macro, but * this only works with ANSI C. * * __XSTRING is like __STRING, but it expands any macros in its argument * first. It is only available with ANSI C. */ # 221 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Compiler-dependent macros to help declare dead (non-returning) and * pure (no side effects) functions, and unused variables. They are * null except for versions of gcc that are known to support the features * properly (old versions of gcc-2 supported the dead and pure features * in a different (wrong) way). If we do not provide an implementation * for a given compiler, let the compile fail if it is told to use * a feature that we cannot live without. */ # 268 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Keywords added in C11. */ # 337 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Emulation of C11 _Generic(). Unlike the previously defined C11 * keywords, it is not possible to implement this using exactly the same * syntax. Therefore implement something similar under the name * __generic(). Unlike _Generic(), this macro can only distinguish * between a single type, so it requires nested invocations to * distinguish multiple cases. */ # 356 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * C99 Static array indices in function parameter declarations. Syntax such as: * void bar(int myArray[static 10]); * is allowed in C99 but not in C++. Define __min_size appropriately so * headers using it can be compiled in either language. Use like this: * void bar(int myArray[__min_size(10)]); */ # 419 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* XXX: should use `#if __STDC_VERSION__ < 199901'. */ /* * GCC 2.95 provides `__restrict' as an extension to C90 to support the * C99-specific `restrict' type qualifier. We happen to use `__restrict' as * a way to define the `restrict' type qualifier without disturbing older * software that is unaware of C99 keywords. */ # 438 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * GNU C version 2.96 adds explicit branch prediction so that * the CPU back-end can hint the processor and also so that * code blocks can be reordered such that the predicted path * sees a more linear flow, thus improving cache behavior, etc. * * The following two macros provide us with a way to utilize this * compiler feature. Use __predict_true() if you expect the expression * to evaluate to true, and __predict_false() if you expect the * expression to evaluate to false. * * A few notes about usage: * * * Generally, __predict_false() error condition checks (unless * you have some _strong_ reason to do otherwise, in which case * document it), and/or __predict_true() `no-error' condition * checks, assuming you want to optimize for the no-error case. * * * Other than that, if you don't know the likelihood of a test * succeeding from empirical or other `hard' evidence, don't * make predictions. * * * These are meant to be used in places that are run `a lot'. * It is wasteful to make predictions in code that is run * seldomly (e.g. at subsystem initialization time) as the * basic block reordering that this affects can often generate * larger code. */ # 477 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* Only default visibility is supported on PE/COFF targets. */ # 493 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Given the pointer x to the member m of the struct s, return * a pointer to the containing structure. When using GCC, we first * assign pointer x to a local variable, to check that its type is * compatible with member m. */ # 509 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Compiler-dependent macros to declare that functions take printf-like * or scanf-like arguments. They are null except for versions of gcc * that are known to support the features properly (old versions of gcc-2 * didn't permit keeping the keywords out of the application namespace). */ # 533 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* Compiler-dependent macros that rely on FreeBSD-specific extensions. */ # 624 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Nullability qualifiers: currently only supported by Clang. */ # 639 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Type Safety Checking * * Clang provides additional attributes to enable checking type safety * properties that cannot be enforced by the C type system. */ # 657 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/cdefs.h" 3 /* * Lock annotations. * * Clang provides support for doing basic thread-safety tests at * compile-time, by marking which locks will/should be held when * entering/leaving a functions. * * Furthermore, it is also possible to annotate variables and structure * members to enforce that they are only accessed when certain locks are * held. */ /* Structure implements a lock. */ /* FIXME: Use __lockable__, etc. to avoid colliding with user namespace macros, * once clang is fixed: https://bugs.llvm.org/show_bug.cgi?id=34319 */ /* Function acquires an exclusive or shared lock. */ /* Function attempts to acquire an exclusive or shared lock. */ /* Function releases a lock. */ /* Function asserts that an exclusive or shared lock is held. */ /* Function requires that an exclusive or shared lock is or is not held. */ /* Function should not be analyzed. */ /* Guard variables and structure members by lock. */ # 37 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 1 3 /* ANSI C namespace clean utility typedefs */ /* This file defines various typedefs needed by the system calls that support the C library. Basically, they're just the POSIX versions with an '_' prepended. Targets shall use to define their own internal types if desired. There are three define patterns used for type definitions. Lets assume xyz_t is a user type. The internal type definition uses __machine_xyz_t_defined. It is defined by to disable a default definition in . It must not be used in other files. User type definitions are guarded by __xyz_t_defined in glibc and _XYZ_T_DECLARED in BSD compatible systems. */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 15 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 108 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 3 /* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use __WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ /* Always define wint_t when modules are available. */ typedef int wint_t; # 18 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stddef.h" 2 3 # 25 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 2 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/newlib.h" 1 3 /* newlib.h. Generated from newlib.hin by configure. */ /* newlib.hin. Manually edited from the output of autoheader to remove all PACKAGE_ macros which will collide with any user package using newlib header files and having its own package name, version, etc... */ /* EL/IX level */ /* #undef _ELIX_LEVEL */ /* Newlib version */ /* C99 formats support (such as %a, %zu, ...) in IO functions like * printf/scanf enabled */ /* long long type support in IO functions like printf/scanf enabled */ /* Register application finalization function using atexit. */ /* long double type support in IO functions like printf/scanf enabled */ /* #undef _WANT_IO_LONG_DOUBLE */ /* Positional argument support in printf functions enabled. */ /* #undef _WANT_IO_POS_ARGS */ /* Optional reentrant struct support. Used mostly on platforms with very restricted storage. */ /* #undef _WANT_REENT_SMALL */ /* Verify _REENT_CHECK macros allocate memory successfully. */ /* Multibyte supported */ /* #undef _MB_CAPABLE */ /* MB_LEN_MAX */ /* ICONV enabled */ /* #undef _ICONV_ENABLED */ /* Enable ICONV external CCS files loading capabilities */ /* #undef _ICONV_ENABLE_EXTERNAL_CCS */ /* Define if the linker supports .preinit_array/.init_array/.fini_array * sections. */ /* True if atexit() may dynamically allocate space for cleanup functions. */ /* True if long double supported. */ /* Define if compiler supports -fno-tree-loop-distribute-patterns. */ /* True if long double supported and it is equal to double. */ /* Define if ivo supported in streamio. */ /* Define if fseek functions support seek optimization. */ /* Define if wide char orientation is supported. */ /* Define if unbuffered stream file optimization is supported. */ /* Define if lite version of exit supported. */ /* #undef _LITE_EXIT */ /* Define if declare atexit data as global. */ /* #undef _REENT_GLOBAL_ATEXIT */ /* Define to move the stdio stream FILE objects out of struct _reent and make them global. The stdio stream pointers of struct _reent are initialized to point to the global stdio FILE stream objects. */ /* #undef _WANT_REENT_GLOBAL_STDIO_STREAMS */ /* Define if small footprint nano-formatted-IO implementation used. */ /* #undef _NANO_FORMATTED_IO */ /* Define if using retargetable functions for default lock routines. */ /* Define to use type long for time_t. */ /* #undef _WANT_USE_LONG_TIME_T */ /* * Iconv encodings enabled ("to" direction) */ /* #undef _ICONV_TO_ENCODING_BIG5 */ /* #undef _ICONV_TO_ENCODING_CP775 */ /* #undef _ICONV_TO_ENCODING_CP850 */ /* #undef _ICONV_TO_ENCODING_CP852 */ /* #undef _ICONV_TO_ENCODING_CP855 */ /* #undef _ICONV_TO_ENCODING_CP866 */ /* #undef _ICONV_TO_ENCODING_EUC_JP */ /* #undef _ICONV_TO_ENCODING_EUC_TW */ /* #undef _ICONV_TO_ENCODING_EUC_KR */ /* #undef _ICONV_TO_ENCODING_ISO_8859_1 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_10 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_11 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_13 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_14 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_15 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_2 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_3 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_4 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_5 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_6 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_7 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_8 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_9 */ /* #undef _ICONV_TO_ENCODING_ISO_IR_111 */ /* #undef _ICONV_TO_ENCODING_KOI8_R */ /* #undef _ICONV_TO_ENCODING_KOI8_RU */ /* #undef _ICONV_TO_ENCODING_KOI8_U */ /* #undef _ICONV_TO_ENCODING_KOI8_UNI */ /* #undef _ICONV_TO_ENCODING_UCS_2 */ /* #undef _ICONV_TO_ENCODING_UCS_2_INTERNAL */ /* #undef _ICONV_TO_ENCODING_UCS_2BE */ /* #undef _ICONV_TO_ENCODING_UCS_2LE */ /* #undef _ICONV_TO_ENCODING_UCS_4 */ /* #undef _ICONV_TO_ENCODING_UCS_4_INTERNAL */ /* #undef _ICONV_TO_ENCODING_UCS_4BE */ /* #undef _ICONV_TO_ENCODING_UCS_4LE */ /* #undef _ICONV_TO_ENCODING_US_ASCII */ /* #undef _ICONV_TO_ENCODING_UTF_16 */ /* #undef _ICONV_TO_ENCODING_UTF_16BE */ /* #undef _ICONV_TO_ENCODING_UTF_16LE */ /* #undef _ICONV_TO_ENCODING_UTF_8 */ /* #undef _ICONV_TO_ENCODING_WIN_1250 */ /* #undef _ICONV_TO_ENCODING_WIN_1251 */ /* #undef _ICONV_TO_ENCODING_WIN_1252 */ /* #undef _ICONV_TO_ENCODING_WIN_1253 */ /* #undef _ICONV_TO_ENCODING_WIN_1254 */ /* #undef _ICONV_TO_ENCODING_WIN_1255 */ /* #undef _ICONV_TO_ENCODING_WIN_1256 */ /* #undef _ICONV_TO_ENCODING_WIN_1257 */ /* #undef _ICONV_TO_ENCODING_WIN_1258 */ /* * Iconv encodings enabled ("from" direction) */ /* #undef _ICONV_FROM_ENCODING_BIG5 */ /* #undef _ICONV_FROM_ENCODING_CP775 */ /* #undef _ICONV_FROM_ENCODING_CP850 */ /* #undef _ICONV_FROM_ENCODING_CP852 */ /* #undef _ICONV_FROM_ENCODING_CP855 */ /* #undef _ICONV_FROM_ENCODING_CP866 */ /* #undef _ICONV_FROM_ENCODING_EUC_JP */ /* #undef _ICONV_FROM_ENCODING_EUC_TW */ /* #undef _ICONV_FROM_ENCODING_EUC_KR */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_1 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_10 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_11 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_13 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_14 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_15 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_2 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_3 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_4 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_5 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_6 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_7 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_8 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_9 */ /* #undef _ICONV_FROM_ENCODING_ISO_IR_111 */ /* #undef _ICONV_FROM_ENCODING_KOI8_R */ /* #undef _ICONV_FROM_ENCODING_KOI8_RU */ /* #undef _ICONV_FROM_ENCODING_KOI8_U */ /* #undef _ICONV_FROM_ENCODING_KOI8_UNI */ /* #undef _ICONV_FROM_ENCODING_UCS_2 */ /* #undef _ICONV_FROM_ENCODING_UCS_2_INTERNAL */ /* #undef _ICONV_FROM_ENCODING_UCS_2BE */ /* #undef _ICONV_FROM_ENCODING_UCS_2LE */ /* #undef _ICONV_FROM_ENCODING_UCS_4 */ /* #undef _ICONV_FROM_ENCODING_UCS_4_INTERNAL */ /* #undef _ICONV_FROM_ENCODING_UCS_4BE */ /* #undef _ICONV_FROM_ENCODING_UCS_4LE */ /* #undef _ICONV_FROM_ENCODING_US_ASCII */ /* #undef _ICONV_FROM_ENCODING_UTF_16 */ /* #undef _ICONV_FROM_ENCODING_UTF_16BE */ /* #undef _ICONV_FROM_ENCODING_UTF_16LE */ /* #undef _ICONV_FROM_ENCODING_UTF_8 */ /* #undef _ICONV_FROM_ENCODING_WIN_1250 */ /* #undef _ICONV_FROM_ENCODING_WIN_1251 */ /* #undef _ICONV_FROM_ENCODING_WIN_1252 */ /* #undef _ICONV_FROM_ENCODING_WIN_1253 */ /* #undef _ICONV_FROM_ENCODING_WIN_1254 */ /* #undef _ICONV_FROM_ENCODING_WIN_1255 */ /* #undef _ICONV_FROM_ENCODING_WIN_1256 */ /* #undef _ICONV_FROM_ENCODING_WIN_1257 */ /* #undef _ICONV_FROM_ENCODING_WIN_1258 */ # 26 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 2 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 1 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/ieeefp.h" 1 3 /* This file can define macros to choose variations of the IEEE float format: _FLT_LARGEST_EXPONENT_IS_NORMAL Defined if the float format uses the largest exponent for finite numbers rather than NaN and infinity representations. Such a format cannot represent NaNs or infinities at all, but it's FLT_MAX is twice the IEEE value. _FLT_NO_DENORMALS Defined if the float format does not support IEEE denormals. Every float with a zero exponent is taken to be a zero representation. ??? At the moment, there are no equivalent macros above for doubles and the macros are not fully supported by --enable-newlib-hw-fp. __IEEE_BIG_ENDIAN Defined if the float format is big endian. This is mutually exclusive with __IEEE_LITTLE_ENDIAN. __IEEE_LITTLE_ENDIAN Defined if the float format is little endian. This is mutually exclusive with __IEEE_BIG_ENDIAN. Note that one of __IEEE_BIG_ENDIAN or __IEEE_LITTLE_ENDIAN must be specified for a platform or error will occur. __IEEE_BYTES_LITTLE_ENDIAN This flag is used in conjunction with __IEEE_BIG_ENDIAN to describe a situation whereby multiple words of an IEEE floating point are in big endian order, but the words themselves are little endian with respect to the bytes. _DOUBLE_IS_32BITS This is used on platforms that support double by using the 32-bit IEEE float type. _FLOAT_ARG This represents what type a float arg is passed as. It is used when the type is not promoted to double. __OBSOLETE_MATH_DEFAULT Default value for __OBSOLETE_MATH if that's not set by the user. It should be set here based on predefined feature macros. __OBSOLETE_MATH If set to 1 then some new math code will be disabled and older libm code will be used instead. This is necessary because the new math code does not support all targets, it assumes that the toolchain has ISO C99 support (hexfloat literals, standard fenv semantics), the target has IEEE-754 conforming binary32 float and binary64 double (not mixed endian) representation, standard SNaN representation, double and single precision arithmetics has similar latency and it has no legacy SVID matherr support, only POSIX errno and fenv exception based error handling. */ /* ARM traditionally used big-endian words; and within those words the byte ordering was big or little endian depending upon the target. Modern floating-point formats are naturally ordered; in this case __VFP_FP__ will be defined, even if soft-float. */ # 246 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/ieeefp.h" 3 /* necv70 was __IEEE_LITTLE_ENDIAN. */ # 5 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 2 3 # 15 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* exceptions first */ /* 16 bit integer machines */ # 119 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* For the PowerPC eabi, force the _impure_ptr to be in .sdata */ # 129 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* Configure small REENT structure for Xilinx MicroBlaze platforms */ # 196 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* This block should be kept in sync with GCC's limits.h. The point of having these definitions here is to not include limits.h, which would pollute the user namespace, while still using types of the the correct widths when deciding how to define __int32_t and __int64_t. */ # 221 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* End of block that should be kept in sync with GCC's limits.h. */ # 257 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* Define return type of read/write routines. In POSIX, the return type for read()/write() is "ssize_t" but legacy newlib code has been using "int" for some time. If not specified, "int" is defaulted. */ /* Define `count' parameter of read/write routines. In POSIX, the `count' parameter is "size_t" but legacy newlib code has been using "int" for some time. If not specified, "int" is defaulted. */ # 276 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* See if small reent asked for at configuration time and is not chosen by the platform by default. */ # 296 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/config.h" 3 /* If _MB_EXTENDED_CHARSETS_ALL is set, we want all of the extended charsets. The extended charsets add a few functions and a couple of tables of a few K each. */ # 27 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 2 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/machine/_types.h" 1 3 /* * $Id$ */ # 28 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/wctype.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* wctype.h synopsis Macros: WEOF Types: wint_t wctrans_t wctype_t int iswalnum(wint_t wc); int iswalpha(wint_t wc); int iswblank(wint_t wc); // C99 int iswcntrl(wint_t wc); int iswdigit(wint_t wc); int iswgraph(wint_t wc); int iswlower(wint_t wc); int iswprint(wint_t wc); int iswpunct(wint_t wc); int iswspace(wint_t wc); int iswupper(wint_t wc); int iswxdigit(wint_t wc); int iswctype(wint_t wc, wctype_t desc); wctype_t wctype(const char* property); wint_t towlower(wint_t wc); wint_t towupper(wint_t wc); wint_t towctrans(wint_t wc, wctrans_t desc); wctrans_t wctrans(const char* property); */ # 55 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/wctype.h" 3 // TODO: // In the future, we should unconditionally include_next here and instead // have a mode under which the library does not need libc++'s or // at all (i.e. a mode without wchar_t). As it stands, we need to do that to completely // bypass the using declarations in when we did not include . // Otherwise, a using declaration like `using ::wint_t` in will refer to // nothing (with using_if_exists), and if we include another header that defines one // of these declarations (e.g. ), the second `using ::wint_t` with using_if_exists // will fail because it does not refer to the same declaration. # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/wctype.h" 1 3 /*****************************************************************************/ /* wctype.h */ /* */ /* Copyright (c) 2007 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ /************************************************************************/ /* */ /* WIDE CHARACTER TYPING FUNCTIONS AND MACROS */ /* */ /************************************************************************/ # 60 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/wctype.h" 3 extern "C" { /************************************************************************/ /* TYPES */ /************************************************************************/ typedef int wint_t; typedef void *wctrans_t; typedef void *wctype_t; /************************************************************************/ /* FUNCTION DECLARATIONS */ /************************************************************************/ int iswalnum(wint_t _c); int iswalpha(wint_t _c); int iswblank(wint_t _c); int iswcntrl(wint_t _c); int iswdigit(wint_t _c); int iswgraph(wint_t _c); int iswlower(wint_t _c); int iswprint(wint_t _c); int iswpunct(wint_t _c); int iswspace(wint_t _c); int iswupper(wint_t _c); int iswxdigit(wint_t _c); int iswascii(wint_t _c); wctype_t wctype(const char *property); int iswctype(wint_t c, wctype_t category); wint_t towupper(wint_t _c); wint_t towlower(wint_t _c); wint_t towascii(wint_t _c); wctrans_t wctrans(const char *property); wint_t towctrans(wint_t c, wctrans_t category); } /* extern "C" */ /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_ctype.h if POSIX is enabled. This will expose the */ /* xlocale wctype interface. */ /*----------------------------------------------------------------------------*/ # 68 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/wctype.h" 2 3 # 30 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 2 3 typedef long __blkcnt_t; typedef long __blksize_t; typedef __uint64_t __fsblkcnt_t; typedef __uint32_t __fsfilcnt_t; typedef long _off_t; typedef int __pid_t; typedef short __dev_t; typedef unsigned short __uid_t; typedef unsigned short __gid_t; typedef __uint32_t __id_t; typedef unsigned short __ino_t; # 92 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 3 typedef __uint32_t __mode_t; __extension__ typedef long long _off64_t; typedef _off_t __off_t; typedef _off64_t __loff_t; typedef long __key_t; /* * We need fpos_t for the following, but it doesn't have a leading "_", * so we use _fpos_t instead. */ typedef long _fpos_t; /* XXX must match off_t in */ /* (and must be `long' for now) */ # 128 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 3 /* Defined by GCC provided */ typedef unsigned int __size_t; # 145 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 3 /* If __SIZE_TYPE__ is defined (gcc) we define ssize_t based on size_t. We simply change "unsigned" to "signed" for this single definition to make sure ssize_t and size_t only differ by their signedness. */ typedef signed int _ssize_t; # 160 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_types.h" 3 typedef _ssize_t __ssize_t; /* Conversion state information. */ typedef struct { int __count; union { wint_t __wch; unsigned char __wchb[4]; } __value; /* Value so far. */ } __mbstate_t; /* Iconv descriptor type */ typedef void *_iconv_t; typedef unsigned long __clock_t; typedef __int_least64_t __time_t; typedef unsigned long __clockid_t; typedef unsigned long __timer_t; typedef __uint8_t __sa_family_t; typedef __uint32_t __socklen_t; typedef int __nl_item; typedef unsigned short __nlink_t; typedef long __suseconds_t; /* microseconds (signed) */ typedef unsigned long __useconds_t; /* microseconds (unsigned) */ /* * Must be identical to the __GNUCLIKE_BUILTIN_VAALIST definition in * . The must not be included here to avoid cyclic * header dependencies. */ typedef __builtin_va_list __va_list; # 38 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/machine/_stdint.h" 1 3 /*- * SPDX-License-Identifier: BSD-2-Clause-NetBSD * * Copyright (c) 2001, 2002 Mike Barcroft * Copyright (c) 2001 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Klaus Klein. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * * $FreeBSD$ */ /* 19.4 is issued for macros that are defined in terms of other macros. */ # 65 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/machine/_stdint.h" 3 /* * ISO/IEC 9899:1999 * 7.18.2.1 Limits of exact-width integer types */ /* Minimum values of exact-width signed integer types. */ /* Maximum values of exact-width signed integer types. */ /* Maximum values of exact-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.2 Limits of minimum-width integer types */ /* Minimum values of minimum-width signed integer types. */ /* Maximum values of minimum-width signed integer types. */ /* Maximum values of minimum-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.3 Limits of fastest minimum-width integer types */ /* Minimum values of fastest minimum-width signed integer types. */ /* Maximum values of fastest minimum-width signed integer types. */ /* Maximum values of fastest minimum-width unsigned integer types. */ /* * ISO/IEC 9899:1999 * 7.18.2.4 Limits of integer types capable of holding object pointers */ /* * ISO/IEC 9899:1999 * 7.18.2.5 Limits of greatest-width integer types */ /* * ISO/IEC 9899:1999 * 7.18.3 Limits of other integer types */ /* Limits of ptrdiff_t. */ /* Limits of sig_atomic_t. */ /* Limit of size_t. */ /* Limits of wint_t. */ # 40 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 2 3 # 1 "/home/kowshik/Desktop/armclang_error/fake_root/include/sys/_stdint.h" 1 3 /* * Copyright (c) 2004, 2005 by * Ralf Corsepius, Ulm/Germany. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ extern "C" { typedef __int8_t int8_t ; typedef __uint8_t uint8_t ; typedef __int16_t int16_t ; typedef __uint16_t uint16_t ; typedef __int32_t int32_t ; typedef __uint32_t uint32_t ; typedef __int64_t int64_t ; typedef __uint64_t uint64_t ; typedef __intmax_t intmax_t; typedef __uintmax_t uintmax_t; typedef int intptr_t; typedef unsigned int uintptr_t; } # 41 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 2 3 typedef __int_least8_t int_least8_t; typedef __int_least16_t int_least16_t; typedef __int_least32_t int_least32_t; typedef __int_least64_t int_least64_t; typedef __uint_least8_t uint_least8_t; typedef __uint_least16_t uint_least16_t; typedef __uint_least32_t uint_least32_t; typedef __uint_least64_t uint_least64_t; typedef __int_fast8_t int_fast8_t; typedef __int_fast16_t int_fast16_t; typedef __int_fast32_t int_fast32_t; typedef __int_fast64_t int_fast64_t; typedef __uint_fast8_t uint_fast8_t; typedef __uint_fast16_t uint_fast16_t; typedef __uint_fast32_t uint_fast32_t; typedef __uint_fast64_t uint_fast64_t; /* GNU and Darwin define this and people seem to think it's portable */ # 74 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/sys/stdint.h" 3 /* Limits of wchar_t. */ # 49 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/stdint.h" 2 3 # 53 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stdint.h" 2 3 # 124 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/stdint.h" 2 3 # 145 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstdint" 2 3 # 148 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstdint" 3 namespace std { inline namespace __1 { using ::int8_t __attribute__((using_if_exists)); using ::int16_t __attribute__((using_if_exists)); using ::int32_t __attribute__((using_if_exists)); using ::int64_t __attribute__((using_if_exists)); using ::uint8_t __attribute__((using_if_exists)); using ::uint16_t __attribute__((using_if_exists)); using ::uint32_t __attribute__((using_if_exists)); using ::uint64_t __attribute__((using_if_exists)); using ::int_least8_t __attribute__((using_if_exists)); using ::int_least16_t __attribute__((using_if_exists)); using ::int_least32_t __attribute__((using_if_exists)); using ::int_least64_t __attribute__((using_if_exists)); using ::uint_least8_t __attribute__((using_if_exists)); using ::uint_least16_t __attribute__((using_if_exists)); using ::uint_least32_t __attribute__((using_if_exists)); using ::uint_least64_t __attribute__((using_if_exists)); using ::int_fast8_t __attribute__((using_if_exists)); using ::int_fast16_t __attribute__((using_if_exists)); using ::int_fast32_t __attribute__((using_if_exists)); using ::int_fast64_t __attribute__((using_if_exists)); using ::uint_fast8_t __attribute__((using_if_exists)); using ::uint_fast16_t __attribute__((using_if_exists)); using ::uint_fast32_t __attribute__((using_if_exists)); using ::uint_fast64_t __attribute__((using_if_exists)); using ::intptr_t __attribute__((using_if_exists)); using ::uintptr_t __attribute__((using_if_exists)); using ::intmax_t __attribute__((using_if_exists)); using ::uintmax_t __attribute__((using_if_exists)); } } # 17 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__locale" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/locale.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* locale.h synopsis Macros: LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME Types: lconv Functions: setlocale localeconv */ # 44 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/locale.h" 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/locale.h" 1 3 /*****************************************************************************/ /* locale.h */ /* */ /* Copyright (c) 1993 Texas Instruments Incorporated */ /* http://www.ti.com/ */ /* */ /* Redistribution and use in source and binary forms, with or without */ /* modification, are permitted provided that the following conditions */ /* are met: */ /* */ /* Redistributions of source code must retain the above copyright */ /* notice, this list of conditions and the following disclaimer. */ /* */ /* Redistributions in binary form must reproduce the above copyright */ /* notice, this list of conditions and the following disclaimer in */ /* the documentation and/or other materials provided with the */ /* distribution. */ /* */ /* Neither the name of Texas Instruments Incorporated nor the names */ /* of its contributors may be used to endorse or promote products */ /* derived from this software without specific prior written */ /* permission. */ /* */ /* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */ /* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */ /* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR */ /* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */ /* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */ /* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT */ /* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, */ /* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY */ /* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT */ /* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE */ /* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* */ /*****************************************************************************/ # 49 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/locale.h" 3 /* standard types required for standard headers */ /* standard headers must define standard names */ /* standard headers must define standard names */ extern "C" { /* LOCALE CATEGORY INDEXES */ # 89 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/locale.h" 3 /* TYPE DEFINITIONS */ # 119 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/locale.h" 3 struct lconv { /* LC_NUMERIC */ char *decimal_point; char *grouping; char *thousands_sep; /* LC_MONETARY */ char *mon_decimal_point; char *mon_grouping; char *mon_thousands_sep; char *negative_sign; char *positive_sign; char *currency_symbol; char frac_digits; char n_cs_precedes; char n_sep_by_space; char n_sign_posn; char p_cs_precedes; char p_sep_by_space; char p_sign_posn; char *int_curr_symbol; char int_frac_digits; char int_p_cs_precedes; char int_n_cs_precedes; char int_p_sep_by_space; char int_n_sep_by_space; char int_p_sign_posn; char int_n_sign_posn; }; /* DECLARATIONS */ struct lconv *localeconv(void); char *setlocale(int category, const char *locale); } /* extern "C" */ # 175 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c/locale.h" 3 /*----------------------------------------------------------------------------*/ /* If sys/cdefs.h is available, go ahead and include it. xlocale.h assumes */ /* this file will have already included sys/cdefs.h. */ /*----------------------------------------------------------------------------*/ /*----------------------------------------------------------------------------*/ /* Include xlocale/_locale.h if POSIX is enabled. This will expose the */ /* xlocale locale interface. */ /*----------------------------------------------------------------------------*/ # 47 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/locale.h" 2 3 # 18 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__locale" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/memory" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* memory synopsis namespace std { struct allocator_arg_t { }; inline constexpr allocator_arg_t allocator_arg = allocator_arg_t(); template struct uses_allocator; template struct pointer_traits { typedef Ptr pointer; typedef
element_type; typedef
difference_type; template using rebind =
; static pointer pointer_to(
); }; template struct pointer_traits { typedef T* pointer; typedef T element_type; typedef ptrdiff_t difference_type; template using rebind = U*; static pointer pointer_to(
) noexcept; // constexpr in C++20 }; template constexpr T* to_address(T* p) noexcept; // C++20 template constexpr auto to_address(const Ptr& p) noexcept; // C++20 template struct allocator_traits { typedef Alloc allocator_type; typedef typename allocator_type::value_type value_type; typedef Alloc::pointer | value_type* pointer; typedef Alloc::const_pointer | pointer_traits::rebind const_pointer; typedef Alloc::void_pointer | pointer_traits::rebind void_pointer; typedef Alloc::const_void_pointer | pointer_traits::rebind const_void_pointer; typedef Alloc::difference_type | pointer_traits::difference_type difference_type; typedef Alloc::size_type | make_unsigned::type size_type; typedef Alloc::propagate_on_container_copy_assignment | false_type propagate_on_container_copy_assignment; typedef Alloc::propagate_on_container_move_assignment | false_type propagate_on_container_move_assignment; typedef Alloc::propagate_on_container_swap | false_type propagate_on_container_swap; typedef Alloc::is_always_equal | is_empty is_always_equal; template using rebind_alloc = Alloc::rebind::other | Alloc; template using rebind_traits = allocator_traits>; static pointer allocate(allocator_type& a, size_type n); // constexpr and [[nodiscard]] in C++20 static pointer allocate(allocator_type& a, size_type n, const_void_pointer hint); // constexpr and [[nodiscard]] in C++20 static void deallocate(allocator_type& a, pointer p, size_type n) noexcept; // constexpr in C++20 template static void construct(allocator_type& a, T* p, Args&&... args); // constexpr in C++20 template static void destroy(allocator_type& a, T* p); // constexpr in C++20 static size_type max_size(const allocator_type& a); // noexcept in C++14, constexpr in C++20 static allocator_type select_on_container_copy_construction(const allocator_type& a); // constexpr in C++20 }; template <> class allocator // removed in C++20 { public: typedef void* pointer; typedef const void* const_pointer; typedef void value_type; template struct rebind {typedef allocator<_Up> other;}; }; template class allocator { public: typedef size_t size_type; typedef ptrdiff_t difference_type; typedef T* pointer; // deprecated in C++17, removed in C++20 typedef const T* const_pointer; // deprecated in C++17, removed in C++20 typedef typename add_lvalue_reference::type reference; // deprecated in C++17, removed in C++20 typedef typename add_lvalue_reference::type const_reference; // deprecated in C++17, removed in C++20 typedef T value_type; template struct rebind {typedef allocator other;}; // deprecated in C++17, removed in C++20 typedef true_type propagate_on_container_move_assignment; typedef true_type is_always_equal; constexpr allocator() noexcept; // constexpr in C++20 constexpr allocator(const allocator&) noexcept; // constexpr in C++20 template constexpr allocator(const allocator&) noexcept; // constexpr in C++20 ~allocator(); // constexpr in C++20 pointer address(reference x) const noexcept; // deprecated in C++17, removed in C++20 const_pointer address(const_reference x) const noexcept; // deprecated in C++17, removed in C++20 T* allocate(size_t n, const void* hint); // deprecated in C++17, removed in C++20 T* allocate(size_t n); // constexpr in C++20 void deallocate(T* p, size_t n) noexcept; // constexpr in C++20 size_type max_size() const noexcept; // deprecated in C++17, removed in C++20 template void construct(U* p, Args&&... args); // deprecated in C++17, removed in C++20 template void destroy(U* p); // deprecated in C++17, removed in C++20 }; template bool operator==(const allocator&, const allocator&) noexcept; // constexpr in C++20 template bool operator!=(const allocator&, const allocator&) noexcept; // constexpr in C++20 template class raw_storage_iterator // deprecated in C++17, removed in C++20 : public iterator // until C++17 { public: typedef output_iterator_tag iterator_category; typedef void value_type; typedef void difference_type; // until C++20 typedef ptrdiff_t difference_type; // since C++20 typedef void pointer; typedef void reference; explicit raw_storage_iterator(OutputIterator x); raw_storage_iterator& operator*(); raw_storage_iterator& operator=(const T& element); raw_storage_iterator& operator++(); raw_storage_iterator operator++(int); }; template pair get_temporary_buffer(ptrdiff_t n) noexcept; template void return_temporary_buffer(T* p) noexcept; template T* addressof(T& r) noexcept; template T* addressof(const T&& r) noexcept = delete; template ForwardIterator uninitialized_copy(InputIterator first, InputIterator last, ForwardIterator result); namespace ranges { template using uninitialized_copy_result = in_out_result; // since C++20 template Sentinel1, nothrow-forward-iterator OutputIterator, nothrow-sentinel-for Sentinel2> requires constructible_from, iter_reference_t> uninitialized_copy_result uninitialized_copy(InputIterator ifirst, Sentinel1 ilast, OutputIterator ofirst, Sentinel2 olast); // since C++20 template requires constructible_from, range_reference_t> uninitialized_copy_result, borrowed_iterator_t> uninitialized_copy(InputRange&& in_range, OutputRange&& out_range); // since C++20 } template ForwardIterator uninitialized_copy_n(InputIterator first, Size n, ForwardIterator result); namespace ranges { template using uninitialized_copy_n_result = in_out_result; // since C++20 template Sentinel> requires constructible_from, iter_reference_t> uninitialized_copy_n_result uninitialized_copy_n(InputIterator ifirst, iter_difference_t n, OutputIterator ofirst, Sentinel olast); // since C++20 } template void uninitialized_fill(ForwardIterator first, ForwardIterator last, const T& x); namespace ranges { template Sentinel, class T> requires constructible_from, const T&> ForwardIterator uninitialized_fill(ForwardIterator first, Sentinel last, const T& x); // since C++20 template requires constructible_from, const T&> borrowed_iterator_t uninitialized_fill(ForwardRange&& range, const T& x); // since C++20 } template ForwardIterator uninitialized_fill_n(ForwardIterator first, Size n, const T& x); namespace ranges { template requires constructible_from, const T&> ForwardIterator uninitialized_fill_n(ForwardIterator first, iter_difference_t n); // since C++20 } template constexpr T* construct_at(T* location, Args&& ...args); // since C++20 namespace ranges { template constexpr T* construct_at(T* location, Args&&... args); // since C++20 } template void destroy_at(T* location); // constexpr in C++20 namespace ranges { template constexpr void destroy_at(T* location) noexcept; // since C++20 } template void destroy(ForwardIterator first, ForwardIterator last); // constexpr in C++20 namespace ranges { template Sentinel> requires destructible> constexpr InputIterator destroy(InputIterator first, Sentinel last) noexcept; // since C++20 template requires destructible> constexpr borrowed_iterator_t destroy(InputRange&& range) noexcept; // since C++20 } template ForwardIterator destroy_n(ForwardIterator first, Size n); // constexpr in C++20 namespace ranges { template requires destructible> constexpr InputIterator destroy_n(InputIterator first, iter_difference_t n) noexcept; // since C++20 } template ForwardIterator uninitialized_move(InputIterator first, InputIterator last, ForwardIterator result); namespace ranges { template using uninitialized_move_result = in_out_result; // since C++20 template Sentinel1, nothrow-forward-iterator OutputIterator, nothrow-sentinel-for Sentinel2> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_result uninitialized_move(InputIterator ifirst, Sentinel1 ilast, OutputIterator ofirst, Sentinel2 olast); // since C++20 template requires constructible_from, range_rvalue_reference_t> uninitialized_move_result, borrowed_iterator_t> uninitialized_move(InputRange&& in_range, OutputRange&& out_range); // since C++20 } template pair uninitialized_move_n(InputIterator first, Size n, ForwardIterator result); namespace ranges { template using uninitialized_move_n_result = in_out_result; // since C++20 template Sentinel> requires constructible_from, iter_rvalue_reference_t> uninitialized_move_n_result uninitialized_move_n(InputIterator ifirst, iter_difference_t n, OutputIterator ofirst, Sentinel olast); // since C++20 } template void uninitialized_value_construct(ForwardIterator first, ForwardIterator last); namespace ranges { template Sentinel> requires default_initializable> ForwardIterator uninitialized_value_construct(ForwardIterator first, Sentinel last); // since C++20 template requires default_initializable> borrowed_iterator_t uninitialized_value_construct(ForwardRange&& r); // since C++20 } template ForwardIterator uninitialized_value_construct_n(ForwardIterator first, Size n); namespace ranges { template requires default_initializable> ForwardIterator uninitialized_value_construct_n(ForwardIterator first, iter_difference_t n); // since C++20 } template void uninitialized_default_construct(ForwardIterator first, ForwardIterator last); namespace ranges { template Sentinel> requires default_initializable> ForwardIterator uninitialized_default_construct(ForwardIterator first, Sentinel last); // since C++20 template requires default_initializable> borrowed_iterator_t uninitialized_default_construct(ForwardRange&& r); // since C++20 } template ForwardIterator uninitialized_default_construct_n(ForwardIterator first, Size n); namespace ranges { template requires default_initializable> ForwardIterator uninitialized_default_construct_n(ForwardIterator first, iter_difference_t n); // since C++20 } template struct auto_ptr_ref {}; // deprecated in C++11, removed in C++17 template class auto_ptr // deprecated in C++11, removed in C++17 { public: typedef X element_type; explicit auto_ptr(X* p =0) throw(); auto_ptr(auto_ptr&) throw(); template auto_ptr(auto_ptr&) throw(); auto_ptr& operator=(auto_ptr&) throw(); template auto_ptr& operator=(auto_ptr&) throw(); auto_ptr& operator=(auto_ptr_ref r) throw(); ~auto_ptr() throw(); typename add_lvalue_reference::type operator*() const throw(); X* operator->() const throw(); X* get() const throw(); X* release() throw(); void reset(X* p =0) throw(); auto_ptr(auto_ptr_ref) throw(); template operator auto_ptr_ref() throw(); template operator auto_ptr() throw(); }; template struct default_delete { constexpr default_delete() noexcept = default; template default_delete(const default_delete&) noexcept; void operator()(T*) const noexcept; }; template struct default_delete { constexpr default_delete() noexcept = default; void operator()(T*) const noexcept; template void operator()(U*) const = delete; }; template > class unique_ptr { public: typedef see below pointer; typedef T element_type; typedef D deleter_type; // constructors constexpr unique_ptr() noexcept; explicit unique_ptr(pointer p) noexcept; unique_ptr(pointer p, see below d1) noexcept; unique_ptr(pointer p, see below d2) noexcept; unique_ptr(unique_ptr&& u) noexcept; unique_ptr(nullptr_t) noexcept : unique_ptr() { } template unique_ptr(unique_ptr&& u) noexcept; template unique_ptr(auto_ptr&& u) noexcept; // removed in C++17 // destructor ~unique_ptr(); // assignment unique_ptr& operator=(unique_ptr&& u) noexcept; template unique_ptr& operator=(unique_ptr&& u) noexcept; unique_ptr& operator=(nullptr_t) noexcept; // observers typename add_lvalue_reference::type operator*() const; pointer operator->() const noexcept; pointer get() const noexcept; deleter_type& get_deleter() noexcept; const deleter_type& get_deleter() const noexcept; explicit operator bool() const noexcept; // modifiers pointer release() noexcept; void reset(pointer p = pointer()) noexcept; void swap(unique_ptr& u) noexcept; }; template class unique_ptr { public: typedef implementation-defined pointer; typedef T element_type; typedef D deleter_type; // constructors constexpr unique_ptr() noexcept; explicit unique_ptr(pointer p) noexcept; unique_ptr(pointer p, see below d) noexcept; unique_ptr(pointer p, see below d) noexcept; unique_ptr(unique_ptr&& u) noexcept; unique_ptr(nullptr_t) noexcept : unique_ptr() { } // destructor ~unique_ptr(); // assignment unique_ptr& operator=(unique_ptr&& u) noexcept; unique_ptr& operator=(nullptr_t) noexcept; // observers T& operator[](size_t i) const; pointer get() const noexcept; deleter_type& get_deleter() noexcept; const deleter_type& get_deleter() const noexcept; explicit operator bool() const noexcept; // modifiers pointer release() noexcept; void reset(pointer p = pointer()) noexcept; void reset(nullptr_t) noexcept; template void reset(U) = delete; void swap(unique_ptr& u) noexcept; }; template void swap(unique_ptr& x, unique_ptr& y) noexcept; template bool operator==(const unique_ptr& x, const unique_ptr& y); template bool operator!=(const unique_ptr& x, const unique_ptr& y); template bool operator<(const unique_ptr& x, const unique_ptr& y); template bool operator<=(const unique_ptr& x, const unique_ptr& y); template bool operator>(const unique_ptr& x, const unique_ptr& y); template bool operator>=(const unique_ptr& x, const unique_ptr& y); template bool operator==(const unique_ptr& x, nullptr_t) noexcept; template bool operator==(nullptr_t, const unique_ptr& y) noexcept; template bool operator!=(const unique_ptr& x, nullptr_t) noexcept; template bool operator!=(nullptr_t, const unique_ptr& y) noexcept; template bool operator<(const unique_ptr& x, nullptr_t); template bool operator<(nullptr_t, const unique_ptr& y); template bool operator<=(const unique_ptr& x, nullptr_t); template bool operator<=(nullptr_t, const unique_ptr& y); template bool operator>(const unique_ptr& x, nullptr_t); template bool operator>(nullptr_t, const unique_ptr& y); template bool operator>=(const unique_ptr& x, nullptr_t); template bool operator>=(nullptr_t, const unique_ptr& y); class bad_weak_ptr : public std::exception { bad_weak_ptr() noexcept; }; template unique_ptr make_unique(Args&&... args); // C++14 template unique_ptr make_unique(size_t n); // C++14 template unspecified make_unique(Args&&...) = delete; // C++14, T == U[N] template basic_ostream& operator<< (basic_ostream& os, unique_ptr const& p); template class shared_ptr { public: typedef T element_type; // until C++17 typedef remove_extent_t element_type; // since C++17 typedef weak_ptr weak_type; // C++17 // constructors: constexpr shared_ptr() noexcept; template explicit shared_ptr(Y* p); template shared_ptr(Y* p, D d); template shared_ptr(Y* p, D d, A a); template shared_ptr(nullptr_t p, D d); template shared_ptr(nullptr_t p, D d, A a); template shared_ptr(const shared_ptr& r, T *p) noexcept; shared_ptr(const shared_ptr& r) noexcept; template shared_ptr(const shared_ptr& r) noexcept; shared_ptr(shared_ptr&& r) noexcept; template shared_ptr(shared_ptr&& r) noexcept; template explicit shared_ptr(const weak_ptr& r); template shared_ptr(auto_ptr&& r); // removed in C++17 template shared_ptr(unique_ptr&& r); shared_ptr(nullptr_t) : shared_ptr() { } // destructor: ~shared_ptr(); // assignment: shared_ptr& operator=(const shared_ptr& r) noexcept; template shared_ptr& operator=(const shared_ptr& r) noexcept; shared_ptr& operator=(shared_ptr&& r) noexcept; template shared_ptr& operator=(shared_ptr&& r); template shared_ptr& operator=(auto_ptr&& r); // removed in C++17 template shared_ptr& operator=(unique_ptr&& r); // modifiers: void swap(shared_ptr& r) noexcept; void reset() noexcept; template void reset(Y* p); template void reset(Y* p, D d); template void reset(Y* p, D d, A a); // observers: T* get() const noexcept; T& operator*() const noexcept; T* operator->() const noexcept; long use_count() const noexcept; bool unique() const noexcept; explicit operator bool() const noexcept; template bool owner_before(shared_ptr const& b) const noexcept; template bool owner_before(weak_ptr const& b) const noexcept; }; template shared_ptr(weak_ptr) -> shared_ptr; template shared_ptr(unique_ptr) -> shared_ptr; // shared_ptr comparisons: template bool operator==(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator!=(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator<(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator>(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator<=(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator>=(shared_ptr const& a, shared_ptr const& b) noexcept; template bool operator==(const shared_ptr& x, nullptr_t) noexcept; template bool operator==(nullptr_t, const shared_ptr& y) noexcept; template bool operator!=(const shared_ptr& x, nullptr_t) noexcept; template bool operator!=(nullptr_t, const shared_ptr& y) noexcept; template bool operator<(const shared_ptr& x, nullptr_t) noexcept; template bool operator<(nullptr_t, const shared_ptr& y) noexcept; template bool operator<=(const shared_ptr& x, nullptr_t) noexcept; template bool operator<=(nullptr_t, const shared_ptr& y) noexcept; template bool operator>(const shared_ptr& x, nullptr_t) noexcept; template bool operator>(nullptr_t, const shared_ptr& y) noexcept; template bool operator>=(const shared_ptr& x, nullptr_t) noexcept; template bool operator>=(nullptr_t, const shared_ptr& y) noexcept; // shared_ptr specialized algorithms: template void swap(shared_ptr& a, shared_ptr& b) noexcept; // shared_ptr casts: template shared_ptr static_pointer_cast(shared_ptr const& r) noexcept; template shared_ptr dynamic_pointer_cast(shared_ptr const& r) noexcept; template shared_ptr const_pointer_cast(shared_ptr const& r) noexcept; // shared_ptr I/O: template basic_ostream& operator<< (basic_ostream& os, shared_ptr const& p); // shared_ptr get_deleter: template D* get_deleter(shared_ptr const& p) noexcept; template shared_ptr make_shared(Args&&... args); template shared_ptr allocate_shared(const A& a, Args&&... args); template class weak_ptr { public: typedef T element_type; // until C++17 typedef remove_extent_t element_type; // since C++17 // constructors constexpr weak_ptr() noexcept; template weak_ptr(shared_ptr const& r) noexcept; weak_ptr(weak_ptr const& r) noexcept; template weak_ptr(weak_ptr const& r) noexcept; weak_ptr(weak_ptr&& r) noexcept; // C++14 template weak_ptr(weak_ptr&& r) noexcept; // C++14 // destructor ~weak_ptr(); // assignment weak_ptr& operator=(weak_ptr const& r) noexcept; template weak_ptr& operator=(weak_ptr const& r) noexcept; template weak_ptr& operator=(shared_ptr const& r) noexcept; weak_ptr& operator=(weak_ptr&& r) noexcept; // C++14 template weak_ptr& operator=(weak_ptr&& r) noexcept; // C++14 // modifiers void swap(weak_ptr& r) noexcept; void reset() noexcept; // observers long use_count() const noexcept; bool expired() const noexcept; shared_ptr lock() const noexcept; template bool owner_before(shared_ptr const& b) const noexcept; template bool owner_before(weak_ptr const& b) const noexcept; }; template weak_ptr(shared_ptr) -> weak_ptr; // weak_ptr specialized algorithms: template void swap(weak_ptr& a, weak_ptr& b) noexcept; // class owner_less: template struct owner_less; template struct owner_less > : binary_function, shared_ptr, bool> { typedef bool result_type; bool operator()(shared_ptr const&, shared_ptr const&) const noexcept; bool operator()(shared_ptr const&, weak_ptr const&) const noexcept; bool operator()(weak_ptr const&, shared_ptr const&) const noexcept; }; template struct owner_less > : binary_function, weak_ptr, bool> { typedef bool result_type; bool operator()(weak_ptr const&, weak_ptr const&) const noexcept; bool operator()(shared_ptr const&, weak_ptr const&) const noexcept; bool operator()(weak_ptr const&, shared_ptr const&) const noexcept; }; template <> // Added in C++14 struct owner_less { template bool operator()( shared_ptr<_Tp> const& __x, shared_ptr<_Up> const& __y) const noexcept; template bool operator()( shared_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const noexcept; template bool operator()( weak_ptr<_Tp> const& __x, shared_ptr<_Up> const& __y) const noexcept; template bool operator()( weak_ptr<_Tp> const& __x, weak_ptr<_Up> const& __y) const noexcept; typedef void is_transparent; }; template class enable_shared_from_this { protected: constexpr enable_shared_from_this() noexcept; enable_shared_from_this(enable_shared_from_this const&) noexcept; enable_shared_from_this& operator=(enable_shared_from_this const&) noexcept; ~enable_shared_from_this(); public: shared_ptr shared_from_this(); shared_ptr shared_from_this() const; }; template bool atomic_is_lock_free(const shared_ptr* p); template shared_ptr atomic_load(const shared_ptr* p); template shared_ptr atomic_load_explicit(const shared_ptr* p, memory_order mo); template void atomic_store(shared_ptr* p, shared_ptr r); template void atomic_store_explicit(shared_ptr* p, shared_ptr r, memory_order mo); template shared_ptr atomic_exchange(shared_ptr* p, shared_ptr r); template shared_ptr atomic_exchange_explicit(shared_ptr* p, shared_ptr r, memory_order mo); template bool atomic_compare_exchange_weak(shared_ptr* p, shared_ptr* v, shared_ptr w); template bool atomic_compare_exchange_strong( shared_ptr* p, shared_ptr* v, shared_ptr w); template bool atomic_compare_exchange_weak_explicit(shared_ptr* p, shared_ptr* v, shared_ptr w, memory_order success, memory_order failure); template bool atomic_compare_exchange_strong_explicit(shared_ptr* p, shared_ptr* v, shared_ptr w, memory_order success, memory_order failure); // Hash support template struct hash; template struct hash >; template struct hash >; template inline constexpr bool uses_allocator_v = uses_allocator::value; void* align(size_t alignment, size_t size, void*& ptr, size_t& space); } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional_base" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/binary_function.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 17 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/binary_function.h" 3 namespace std { inline namespace __1 { template struct __attribute__ ((__type_visibility__("default"))) binary_function { typedef _Arg1 first_argument_type; typedef _Arg2 second_argument_type; typedef _Result result_type; }; } } # 15 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional_base" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/invoke.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/weak_result_type.h" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/unary_function.h" 1 3 //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// # 16 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/unary_function.h" 3 namespace std { inline namespace __1 { template struct __attribute__ ((__type_visibility__("default"))) unary_function { typedef _Arg argument_type; typedef _Result result_type; }; } } # 16 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/__functional/weak_result_type.h" 2 3 # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/type_traits" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* type_traits synopsis namespace std { // helper class: template struct integral_constant; typedef integral_constant true_type; // C++11 typedef integral_constant false_type; // C++11 template // C++14 using bool_constant = integral_constant; // C++14 typedef bool_constant true_type; // C++14 typedef bool_constant false_type; // C++14 // helper traits template struct enable_if; template struct conditional; // Primary classification traits: template struct is_void; template struct is_null_pointer; // C++14 template struct is_integral; template struct is_floating_point; template struct is_array; template struct is_pointer; template struct is_lvalue_reference; template struct is_rvalue_reference; template struct is_member_object_pointer; template struct is_member_function_pointer; template struct is_enum; template struct is_union; template struct is_class; template struct is_function; // Secondary classification traits: template struct is_reference; template struct is_arithmetic; template struct is_fundamental; template struct is_member_pointer; template struct is_scoped_enum; // C++2b template struct is_scalar; template struct is_object; template struct is_compound; // Const-volatile properties and transformations: template struct is_const; template struct is_volatile; template struct remove_const; template struct remove_volatile; template struct remove_cv; template struct add_const; template struct add_volatile; template struct add_cv; // Reference transformations: template struct remove_reference; template struct add_lvalue_reference; template struct add_rvalue_reference; // Pointer transformations: template struct remove_pointer; template struct add_pointer; template struct type_identity; // C++20 template using type_identity_t = typename type_identity::type; // C++20 // Integral properties: template struct is_signed; template struct is_unsigned; template struct make_signed; template struct make_unsigned; // Array properties and transformations: template struct rank; template struct extent; template struct remove_extent; template struct remove_all_extents; template struct is_bounded_array; // C++20 template struct is_unbounded_array; // C++20 // Member introspection: template struct is_pod; template struct is_trivial; template struct is_trivially_copyable; template struct is_standard_layout; template struct is_literal_type; // Deprecated in C++17; removed in C++20 template struct is_empty; template struct is_polymorphic; template struct is_abstract; template struct is_final; // C++14 template struct is_aggregate; // C++17 template struct is_constructible; template struct is_default_constructible; template struct is_copy_constructible; template struct is_move_constructible; template struct is_assignable; template struct is_copy_assignable; template struct is_move_assignable; template struct is_swappable_with; // C++17 template struct is_swappable; // C++17 template struct is_destructible; template struct is_trivially_constructible; template struct is_trivially_default_constructible; template struct is_trivially_copy_constructible; template struct is_trivially_move_constructible; template struct is_trivially_assignable; template struct is_trivially_copy_assignable; template struct is_trivially_move_assignable; template struct is_trivially_destructible; template struct is_nothrow_constructible; template struct is_nothrow_default_constructible; template struct is_nothrow_copy_constructible; template struct is_nothrow_move_constructible; template struct is_nothrow_assignable; template struct is_nothrow_copy_assignable; template struct is_nothrow_move_assignable; template struct is_nothrow_swappable_with; // C++17 template struct is_nothrow_swappable; // C++17 template struct is_nothrow_destructible; template struct has_virtual_destructor; template struct has_unique_object_representations; // C++17 // Relationships between types: template struct is_same; template struct is_base_of; template struct is_convertible; template struct is_nothrow_convertible; // C++20 template inline constexpr bool is_nothrow_convertible_v; // C++20 template struct is_invocable; template struct is_invocable_r; template struct is_nothrow_invocable; template struct is_nothrow_invocable_r; // Alignment properties and transformations: template struct alignment_of; template struct aligned_storage; template struct aligned_union; template struct remove_cvref; // C++20 template struct decay; template struct common_type; template struct underlying_type; template class result_of; // undefined; deprecated in C++17; removed in C++20 template class result_of; // deprecated in C++17; removed in C++20 template struct invoke_result; // C++17 // const-volatile modifications: template using remove_const_t = typename remove_const::type; // C++14 template using remove_volatile_t = typename remove_volatile::type; // C++14 template using remove_cv_t = typename remove_cv::type; // C++14 template using add_const_t = typename add_const::type; // C++14 template using add_volatile_t = typename add_volatile::type; // C++14 template using add_cv_t = typename add_cv::type; // C++14 // reference modifications: template using remove_reference_t = typename remove_reference::type; // C++14 template using add_lvalue_reference_t = typename add_lvalue_reference::type; // C++14 template using add_rvalue_reference_t = typename add_rvalue_reference::type; // C++14 // sign modifications: template using make_signed_t = typename make_signed::type; // C++14 template using make_unsigned_t = typename make_unsigned::type; // C++14 // array modifications: template using remove_extent_t = typename remove_extent::type; // C++14 template using remove_all_extents_t = typename remove_all_extents::type; // C++14 template inline constexpr bool is_bounded_array_v = is_bounded_array::value; // C++20 inline constexpr bool is_unbounded_array_v = is_unbounded_array::value; // C++20 // pointer modifications: template using remove_pointer_t = typename remove_pointer::type; // C++14 template using add_pointer_t = typename add_pointer::type; // C++14 // other transformations: template using aligned_storage_t = typename aligned_storage::type; // C++14 template using aligned_union_t = typename aligned_union::type; // C++14 template using remove_cvref_t = typename remove_cvref::type; // C++20 template using decay_t = typename decay::type; // C++14 template using enable_if_t = typename enable_if::type; // C++14 template using conditional_t = typename conditional::type; // C++14 template using common_type_t = typename common_type::type; // C++14 template using underlying_type_t = typename underlying_type::type; // C++14 template using result_of_t = typename result_of::type; // C++14; deprecated in C++17; removed in C++20 template using invoke_result_t = typename invoke_result::type; // C++17 template using void_t = void; // C++17 // See C++14 20.10.4.1, primary type categories template inline constexpr bool is_void_v = is_void::value; // C++17 template inline constexpr bool is_null_pointer_v = is_null_pointer::value; // C++17 template inline constexpr bool is_integral_v = is_integral::value; // C++17 template inline constexpr bool is_floating_point_v = is_floating_point::value; // C++17 template inline constexpr bool is_array_v = is_array::value; // C++17 template inline constexpr bool is_pointer_v = is_pointer::value; // C++17 template inline constexpr bool is_lvalue_reference_v = is_lvalue_reference::value; // C++17 template inline constexpr bool is_rvalue_reference_v = is_rvalue_reference::value; // C++17 template inline constexpr bool is_member_object_pointer_v = is_member_object_pointer::value; // C++17 template inline constexpr bool is_member_function_pointer_v = is_member_function_pointer::value; // C++17 template inline constexpr bool is_enum_v = is_enum::value; // C++17 template inline constexpr bool is_union_v = is_union::value; // C++17 template inline constexpr bool is_class_v = is_class::value; // C++17 template inline constexpr bool is_function_v = is_function::value; // C++17 // See C++14 20.10.4.2, composite type categories template inline constexpr bool is_reference_v = is_reference::value; // C++17 template inline constexpr bool is_arithmetic_v = is_arithmetic::value; // C++17 template inline constexpr bool is_fundamental_v = is_fundamental::value; // C++17 template inline constexpr bool is_object_v = is_object::value; // C++17 template inline constexpr bool is_scalar_v = is_scalar::value; // C++17 template inline constexpr bool is_compound_v = is_compound::value; // C++17 template inline constexpr bool is_member_pointer_v = is_member_pointer::value; // C++17 template inline constexpr bool is_scoped_enum_v = is_scoped_enum::value; // C++2b // See C++14 20.10.4.3, type properties template inline constexpr bool is_const_v = is_const::value; // C++17 template inline constexpr bool is_volatile_v = is_volatile::value; // C++17 template inline constexpr bool is_trivial_v = is_trivial::value; // C++17 template inline constexpr bool is_trivially_copyable_v = is_trivially_copyable::value; // C++17 template inline constexpr bool is_standard_layout_v = is_standard_layout::value; // C++17 template inline constexpr bool is_pod_v = is_pod::value; // C++17 template inline constexpr bool is_literal_type_v = is_literal_type::value; // C++17; deprecated in C++17; removed in C++20 template inline constexpr bool is_empty_v = is_empty::value; // C++17 template inline constexpr bool is_polymorphic_v = is_polymorphic::value; // C++17 template inline constexpr bool is_abstract_v = is_abstract::value; // C++17 template inline constexpr bool is_final_v = is_final::value; // C++17 template inline constexpr bool is_aggregate_v = is_aggregate::value; // C++17 template inline constexpr bool is_signed_v = is_signed::value; // C++17 template inline constexpr bool is_unsigned_v = is_unsigned::value; // C++17 template inline constexpr bool is_constructible_v = is_constructible::value; // C++17 template inline constexpr bool is_default_constructible_v = is_default_constructible::value; // C++17 template inline constexpr bool is_copy_constructible_v = is_copy_constructible::value; // C++17 template inline constexpr bool is_move_constructible_v = is_move_constructible::value; // C++17 template inline constexpr bool is_assignable_v = is_assignable::value; // C++17 template inline constexpr bool is_copy_assignable_v = is_copy_assignable::value; // C++17 template inline constexpr bool is_move_assignable_v = is_move_assignable::value; // C++17 template inline constexpr bool is_swappable_with_v = is_swappable_with::value; // C++17 template inline constexpr bool is_swappable_v = is_swappable::value; // C++17 template inline constexpr bool is_destructible_v = is_destructible::value; // C++17 template inline constexpr bool is_trivially_constructible_v = is_trivially_constructible::value; // C++17 template inline constexpr bool is_trivially_default_constructible_v = is_trivially_default_constructible::value; // C++17 template inline constexpr bool is_trivially_copy_constructible_v = is_trivially_copy_constructible::value; // C++17 template inline constexpr bool is_trivially_move_constructible_v = is_trivially_move_constructible::value; // C++17 template inline constexpr bool is_trivially_assignable_v = is_trivially_assignable::value; // C++17 template inline constexpr bool is_trivially_copy_assignable_v = is_trivially_copy_assignable::value; // C++17 template inline constexpr bool is_trivially_move_assignable_v = is_trivially_move_assignable::value; // C++17 template inline constexpr bool is_trivially_destructible_v = is_trivially_destructible::value; // C++17 template inline constexpr bool is_nothrow_constructible_v = is_nothrow_constructible::value; // C++17 template inline constexpr bool is_nothrow_default_constructible_v = is_nothrow_default_constructible::value; // C++17 template inline constexpr bool is_nothrow_copy_constructible_v = is_nothrow_copy_constructible::value; // C++17 template inline constexpr bool is_nothrow_move_constructible_v = is_nothrow_move_constructible::value; // C++17 template inline constexpr bool is_nothrow_assignable_v = is_nothrow_assignable::value; // C++17 template inline constexpr bool is_nothrow_copy_assignable_v = is_nothrow_copy_assignable::value; // C++17 template inline constexpr bool is_nothrow_move_assignable_v = is_nothrow_move_assignable::value; // C++17 template inline constexpr bool is_nothrow_swappable_with_v = is_nothrow_swappable_with::value; // C++17 template inline constexpr bool is_nothrow_swappable_v = is_nothrow_swappable::value; // C++17 template inline constexpr bool is_nothrow_destructible_v = is_nothrow_destructible::value; // C++17 template inline constexpr bool has_virtual_destructor_v = has_virtual_destructor::value; // C++17 template inline constexpr bool has_unique_object_representations_v // C++17 = has_unique_object_representations::value; // See C++14 20.10.5, type property queries template inline constexpr size_t alignment_of_v = alignment_of::value; // C++17 template inline constexpr size_t rank_v = rank::value; // C++17 template inline constexpr size_t extent_v = extent::value; // C++17 // See C++14 20.10.6, type relations template inline constexpr bool is_same_v = is_same::value; // C++17 template inline constexpr bool is_base_of_v = is_base_of::value; // C++17 template inline constexpr bool is_convertible_v = is_convertible::value; // C++17 template inline constexpr bool is_invocable_v = is_invocable::value; // C++17 template inline constexpr bool is_invocable_r_v = is_invocable_r::value; // C++17 template inline constexpr bool is_nothrow_invocable_v = is_nothrow_invocable::value; // C++17 template inline constexpr bool is_nothrow_invocable_r_v = is_nothrow_invocable_r::value; // C++17 // [meta.logical], logical operator traits: template struct conjunction; // C++17 template inline constexpr bool conjunction_v = conjunction::value; // C++17 template struct disjunction; // C++17 template inline constexpr bool disjunction_v = disjunction::value; // C++17 template struct negation; // C++17 template inline constexpr bool negation_v = negation::value; // C++17 } */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstddef" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* cstddef synopsis Macros: offsetof(type,member-designator) NULL namespace std { Types: ptrdiff_t size_t max_align_t // C++11 nullptr_t byte // C++17 } // std */ # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/version" 1 3 // -*- C++ -*- //===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /* version synopsis Macro name Value Headers __cpp_lib_adaptor_iterator_pair_constructor 202106L __cpp_lib_addressof_constexpr 201603L __cpp_lib_allocate_at_least 202106L __cpp_lib_allocator_traits_is_always_equal 201411L __cpp_lib_any 201606L __cpp_lib_apply 201603L __cpp_lib_array_constexpr 201811L 201603L // C++17 __cpp_lib_as_const 201510L __cpp_lib_associative_heterogeneous_erasure 202110L __cpp_lib_assume_aligned 201811L __cpp_lib_atomic_flag_test 201907L __cpp_lib_atomic_float 201711L __cpp_lib_atomic_is_always_lock_free 201603L __cpp_lib_atomic_lock_free_type_aliases 201907L __cpp_lib_atomic_ref 201806L __cpp_lib_atomic_shared_ptr 201711L __cpp_lib_atomic_value_initialization 201911L __cpp_lib_atomic_wait 201907L __cpp_lib_barrier 201907L __cpp_lib_bind_front 201907L __cpp_lib_bit_cast 201806L __cpp_lib_bitops 201907L __cpp_lib_bool_constant 201505L __cpp_lib_bounded_array_traits 201902L __cpp_lib_boyer_moore_searcher 201603L __cpp_lib_byte 201603L __cpp_lib_byteswap 202110L __cpp_lib_char8_t 201811L __cpp_lib_chrono 201611L __cpp_lib_chrono_udls 201304L __cpp_lib_clamp 201603L __cpp_lib_complex_udls 201309L __cpp_lib_concepts 202002L __cpp_lib_constexpr_algorithms 201806L __cpp_lib_constexpr_complex 201711L __cpp_lib_constexpr_dynamic_alloc 201907L __cpp_lib_constexpr_functional 201907L __cpp_lib_constexpr_iterator 201811L __cpp_lib_constexpr_memory 201811L __cpp_lib_constexpr_numeric 201911L __cpp_lib_constexpr_string 201811L __cpp_lib_constexpr_string_view 201811L __cpp_lib_constexpr_tuple 201811L __cpp_lib_constexpr_typeinfo 202106L __cpp_lib_constexpr_utility 201811L __cpp_lib_constexpr_vector 201907L __cpp_lib_coroutine 201902L __cpp_lib_destroying_delete 201806L __cpp_lib_enable_shared_from_this 201603L __cpp_lib_endian 201907L __cpp_lib_erase_if 202002L __cpp_lib_exchange_function 201304L __cpp_lib_execution 201902L 201603L // C++17 __cpp_lib_filesystem 201703L __cpp_lib_format 202106L __cpp_lib_gcd_lcm 201606L __cpp_lib_generic_associative_lookup 201304L __cpp_lib_generic_unordered_lookup 201811L __cpp_lib_hardware_interference_size 201703L __cpp_lib_has_unique_object_representations 201606L __cpp_lib_hypot 201603L __cpp_lib_incomplete_container_elements 201505L __cpp_lib_int_pow2 202002L __cpp_lib_integer_comparison_functions 202002L __cpp_lib_integer_sequence 201304L __cpp_lib_integral_constant_callable 201304L __cpp_lib_interpolate 201902L __cpp_lib_invoke 201411L __cpp_lib_invoke_r 202106L __cpp_lib_is_aggregate 201703L __cpp_lib_is_constant_evaluated 201811L __cpp_lib_is_final 201402L __cpp_lib_is_invocable 201703L __cpp_lib_is_layout_compatible 201907L __cpp_lib_is_nothrow_convertible 201806L __cpp_lib_is_null_pointer 201309L __cpp_lib_is_pointer_interconvertible 201907L __cpp_lib_is_scoped_enum 202011L __cpp_lib_is_swappable 201603L __cpp_lib_jthread 201911L __cpp_lib_latch 201907L __cpp_lib_launder 201606L __cpp_lib_list_remove_return_type 201806L __cpp_lib_logical_traits 201510L __cpp_lib_make_from_tuple 201606L __cpp_lib_make_reverse_iterator 201402L __cpp_lib_make_unique 201304L __cpp_lib_map_try_emplace 201411L __cpp_lib_math_constants 201907L __cpp_lib_math_special_functions 201603L __cpp_lib_memory_resource 201603L __cpp_lib_monadic_optional 202110L __cpp_lib_move_only_function 202110L __cpp_lib_node_extract 201606L __cpp_lib_nonmember_container_access 201411L __cpp_lib_not_fn 201603L __cpp_lib_null_iterators 201304L __cpp_lib_optional 201606L __cpp_lib_out_ptr 202106L __cpp_lib_parallel_algorithm 201603L __cpp_lib_polymorphic_allocator 201902L __cpp_lib_quoted_string_io 201304L __cpp_lib_ranges 201811L __cpp_lib_ranges_starts_ends_with 202106L __cpp_lib_ranges_zip 202110L __cpp_lib_raw_memory_algorithms 201606L __cpp_lib_remove_cvref 201711L __cpp_lib_result_of_sfinae 201210L __cpp_lib_robust_nonmodifying_seq_ops 201304L __cpp_lib_sample 201603L __cpp_lib_scoped_lock 201703L __cpp_lib_semaphore 201907L __cpp_lib_shared_mutex 201505L __cpp_lib_shared_ptr_arrays 201611L __cpp_lib_shared_ptr_weak_type 201606L __cpp_lib_shared_timed_mutex 201402L __cpp_lib_shift 201806L __cpp_lib_smart_ptr_for_overwrite 202002L __cpp_lib_source_location 201907L __cpp_lib_span 202002L __cpp_lib_spanstream 202106L __cpp_lib_ssize 201902L __cpp_lib_stacktrace 202011L __cpp_lib_starts_ends_with 201711L __cpp_lib_stdatomic_h 202011L __cpp_lib_string_contains 202011L __cpp_lib_string_resize_and_overwrite 202110L __cpp_lib_string_udls 201304L __cpp_lib_string_view 201803L 201606L // C++17 __cpp_lib_syncbuf 201803L __cpp_lib_three_way_comparison 201907L __cpp_lib_to_address 201711L __cpp_lib_to_array 201907L __cpp_lib_to_chars 201611L __cpp_lib_to_underlying 202102L __cpp_lib_transformation_trait_aliases 201304L __cpp_lib_transparent_operators 201510L 201210L // C++14 __cpp_lib_tuple_element_t 201402L __cpp_lib_tuples_by_type 201304L __cpp_lib_type_identity 201806L __cpp_lib_type_trait_variable_templates 201510L __cpp_lib_uncaught_exceptions 201411L __cpp_lib_unordered_map_try_emplace 201411L __cpp_lib_unwrap_ref 201811L __cpp_lib_variant 202102L __cpp_lib_void_t 201411L */ # 187 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/version" 3 // clang-format off # 383 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/version" 3 // clang-format on # 38 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstddef" 2 3 # 41 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstddef" 3 // Don't include our own ; we don't want to declare ::nullptr_t. # 1 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/lib/clang/14.0.6/include/stddef.h" 1 3 /*===---- stddef.h - Basic type definitions --------------------------------=== * * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. * See https://llvm.org/LICENSE.txt for license information. * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception * *===-----------------------------------------------------------------------=== */ # 45 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/cstddef" 2 3 namespace std { inline namespace __1 { using ::ptrdiff_t __attribute__((using_if_exists)); using ::size_t __attribute__((using_if_exists)); using ::max_align_t __attribute__((using_if_exists)); template struct __libcpp_is_integral { enum { value = 0 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; template <> struct __libcpp_is_integral { enum { value = 1 }; }; } } # 421 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/type_traits" 2 3 # 425 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/type_traits" 3 namespace std { inline namespace __1 { template struct __attribute__ ((__type_visibility__("default"))) pair; template class __attribute__ ((__type_visibility__("default"))) reference_wrapper; template struct __attribute__ ((__type_visibility__("default"))) hash; template struct __attribute__ ((__type_visibility__("default"))) integral_constant { static constexpr const _Tp value = __v; typedef _Tp value_type; typedef integral_constant type; __attribute__ ((__visibility__("hidden"))) __attribute__ ((__exclude_from_explicit_instantiation__)) constexpr operator value_type() const noexcept {return value;} }; template constexpr const _Tp integral_constant<_Tp, __v>::value; # 458 "/home/kowshik/ti/ti-cgt-armllvm_2.1.2.LTS/include/c++/v1/type_traits" 3 template struct __attribute__ ((__type_visibility__("default"))) enable_if {}; template struct __attribute__ ((__type_visibility__("default"))) enable_if {typedef _Tp type;}; template using __enable_if_t __attribute__((__nodebug__)) = typename enable_if<_Bp, _Tp>::type; typedef integral_constant true_type; typedef integral_constant false_type; template using _BoolConstant __attribute__((__nodebug__)) = integral_constant; template struct _MetaBase; template <> struct _MetaBase { template using _SelectImpl __attribute__((__nodebug__)) = _Tp; template