From mboxrd@z Thu Jan 1 00:00:00 1970 From: drk@sgi.com To: gcc-gnats@gcc.gnu.org Cc: johnv@adacel.com.au Subject: c++/3047: g++ does not define _LANGUAGE_C_PLUS_PLUS needed for on IRIX Date: Mon, 04 Jun 2001 08:06:00 -0000 Message-id: <20010604150304.13960.qmail@sourceware.cygnus.com> X-SW-Source: 2001-06/msg00066.html List-Id: >Number: 3047 >Category: c++ >Synopsis: g++ does not define _LANGUAGE_C_PLUS_PLUS needed for on IRIX >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Mon Jun 04 08:06:01 PDT 2001 >Closed-Date: >Last-Modified: >Originator: drk@sgi.com >Release: gcc version 2.95.2 19991024 (release) >Organization: >Environment: SGI IRIX 6.5 >Description: % man signal ... C SYNOPSIS #include C: void (*signal (int sig, void (*func)()))(); C++: void (*signal (int sig, void (*func)(int)))(int); ... % Test case --------- % cat hello.cpp #include void sig_handler(int sig) { exit (0); } int main() { signal(SIGTERM,sig_handler); } % g++ -o with -D_LANGUAGE_C_PLUS_PLUS hello.cpp ld32: WARNING 84 : /usr/local/lib/gcc-lib/mips-sgi-irix6.5/2.95.1/libstdc++.a is not used for resolving any symbol. ld32: WARNING 84 : /usr/lib32/libm.so is not used for resolving any symbol. % g++ -o without hello.cpp hello.cpp: In function `int main()': hello.cpp:8: ANSI C++ prohibits conversion from `(int)' to `(...)' >How-To-Repeat: Install fw_gcc 1237034320 from http://freeware.sgi.com/ . Compile the hello.cpp program given above. You'll get: Reading specs from /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/specs gcc version 2.95.2 19991024 (release) /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/cpp -lang-c++ -v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=95 -D__cplusplus -Dunix -Dmips -Dsgi -Dhost_mips -DMIPSEB -D_MIPSEB -DSYSTYPE_SVR4 -D_LONGLONG -D_SVR4_SOURCE -D_MODERN_C -D__DSO__ -D__unix__ -D__mips__ -D__sgi__ -D__host_mips__ -D__MIPSEB__ -D_MIPSEB -D__SYSTYPE_SVR4__ -D_LONGLONG -D_SVR4_SOURCE -D_MODERN_C -D__DSO__ -D__unix -D__mips -D__sgi -D__host_mips -D__MIPSEB -D__SYSTYPE_SVR4 -Asystem(unix) -Asystem(svr4) -Acpu(mips) -Amachine(sgi) -D__EXCEPTIONS -D__CHAR_UNSIGNED__ -D__LANGUAGE_C -D_LANGUAGE_C -DLANGUAGE_C -D__SIZE_TYPE__=unsigned int -D__PTRDIFF_TYPE__=int -D__EXTENSIONS__ -D_SGI_SOURCE -D_MIPS_FPSET=32 -D_MIPS_ISA=_MIPS_ISA_MIPS3 -D_ABIN32=2 -D_MIPS_SIM=_ABIN32 -D_MIPS_SZINT=32 -D_MIPS_SZLONG=32 -D_MIPS_SZPTR=32 -D_COMPILER_VERSION=601 -U__mips -D__mips=3 -D__mips64 hello.cpp hello.ii GNU CPP version 2.95.2 19991024 (release) [AL 1.1, MM 40] SGI running IRIX 6.x #include "..." search starts here: #include <...> search starts here: /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/include/g++ /usr/local/include /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/../../../../mips-sgi-irix6.2/include /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/include /usr/include End of search list. The following default directories have been omitted from the search path: End of omitted list. /usr/freeware/lib/gcc-lib/mips-sgi-irix6.2/2.95.2/cc1plus hello.ii -quiet -dumpbase hello.cc -version -o hello.s GNU C++ version 2.95.2 19991024 (release) (mips-sgi-irix6.2) compiled by GNU C version 2.95.2 19991024 (release). hello.cpp: In function `int main()': hello.cpp:8: ANSI C++ prohibits conversion from `(int)' to `(...)' >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="signal.h" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="signal.h" I2lmbmRlZiBfX1NJR05BTF9IX18KI2RlZmluZSBfX1NJR05BTF9IX18KI2lmZGVmIF9fY3BsdXNw bHVzCmV4dGVybiAiQyIgewojZW5kaWYKI2lkZW50ICIkUmV2aXNpb246IDEuNTcgJCIKLyoKICoK ICogQ29weXJpZ2h0IDE5OTItMTk5NiBTaWxpY29uIEdyYXBoaWNzLCBJbmMuCiAqIEFsbCBSaWdo dHMgUmVzZXJ2ZWQuCiAqCiAqIFRoaXMgaXMgVU5QVUJMSVNIRUQgUFJPUFJJRVRBUlkgU09VUkNF IENPREUgb2YgU2lsaWNvbiBHcmFwaGljcywgSW5jLjsKICogdGhlIGNvbnRlbnRzIG9mIHRoaXMg ZmlsZSBtYXkgbm90IGJlIGRpc2Nsb3NlZCB0byB0aGlyZCBwYXJ0aWVzLCBjb3BpZWQgb3IKICog ZHVwbGljYXRlZCBpbiBhbnkgZm9ybSwgaW4gd2hvbGUgb3IgaW4gcGFydCwgd2l0aG91dCB0aGUg cHJpb3Igd3JpdHRlbgogKiBwZXJtaXNzaW9uIG9mIFNpbGljb24gR3JhcGhpY3MsIEluYy4KICoK ICogUkVTVFJJQ1RFRCBSSUdIVFMgTEVHRU5EOgogKiBVc2UsIGR1cGxpY2F0aW9uIG9yIGRpc2Ns b3N1cmUgYnkgdGhlIEdvdmVybm1lbnQgaXMgc3ViamVjdCB0byByZXN0cmljdGlvbnMKICogYXMg c2V0IGZvcnRoIGluIHN1YmRpdmlzaW9uIChjKSgxKShpaSkgb2YgdGhlIFJpZ2h0cyBpbiBUZWNo bmljYWwgRGF0YQogKiBhbmQgQ29tcHV0ZXIgU29mdHdhcmUgY2xhdXNlIGF0IERGQVJTIDI1Mi4y MjctNzAxMywgYW5kL29yIGluIHNpbWlsYXIgb3IKICogc3VjY2Vzc29yIGNsYXVzZXMgaW4gdGhl IEZBUiwgRE9EIG9yIE5BU0EgRkFSIFN1cHBsZW1lbnQuIFVucHVibGlzaGVkIC0KICogcmlnaHRz IHJlc2VydmVkIHVuZGVyIHRoZSBDb3B5cmlnaHQgTGF3cyBvZiB0aGUgVW5pdGVkIFN0YXRlcy4K ICovCi8qCUNvcHlyaWdodCAoYykgMTk4OCBBVCZUCSovCi8qCSAgQWxsIFJpZ2h0cyBSZXNlcnZl ZCAgCSovCgovKglUSElTIElTIFVOUFVCTElTSEVEIFBST1BSSUVUQVJZIFNPVVJDRSBDT0RFIE9G IEFUJlQJKi8KLyoJVGhlIGNvcHlyaWdodCBub3RpY2UgYWJvdmUgZG9lcyBub3QgZXZpZGVuY2Ug YW55ICAgCSovCi8qCWFjdHVhbCBvciBpbnRlbmRlZCBwdWJsaWNhdGlvbiBvZiBzdWNoIHNvdXJj ZSBjb2RlLgkqLwoKLyoKICogV0FSTklORyAtIHRoaXMgaXMgYW4gQU5TSS9QT1NJWC9YUEc0IGhl YWRlci4gSW4gQU5TSSBtb2RlIG9ubHkKICogQU5TSSBzeW1ib2xzIGFyZSBwZXJtaXR0ZWQKICog U2luY2Ugc3lzL3NpZ25hbC5oIGlzIHVzZWQgYnkgYWxvdCBvZiBvdGhlciBoZWFkZXJzLCBhbmQg d2UgbmVlZAogKiBzb21lIG9mIHRoZSBzeW1ib2xzIGluIHN5cy9zaWduYWwuaCBldmVuIGluIEFO U0kgbW9kZSBmb3IgdGhvc2UgaGVhZGVycwogKiB3ZSBkbyBOT1QgaW5jbHVkZSBzeXMvc2lnbmFs LmggaGVyZSBpbiBBTlNJIG1vZGUuIEluc3RlYWQgd2UgZHVwbGljYXRlCiAqIHRoZSBmZXcgcmVx dWlyZWQgZGVmaW5lcyB0aGF0IEFOU0kgaGFzLgogKi8KI2luY2x1ZGUgPHN0YW5kYXJkcy5oPgoK I2lmICFfTk9fQU5TSU1PREUKLyoKICogUHV0IEFMTCByZXF1aXJlZCBBTlNJIHN5bWJvbHMgaGVy ZQogKiBOT1RFOiB0aGVzZSBhcmUgZHVwbGljYXRlZCBpbiBzeXMvc2lnbmFsLmgKICovCgojaWZu ZGVmIF9LRVJORUwKZXh0ZXJuIHZvaWQgICAgICAoKnNpZ25hbChpbnQsIHZvaWQgKCopKCApKSko ICk7CiNlbmRpZgoKI2RlZmluZQlTSUdIVVAJMQkvKiBoYW5ndXAgKi8KI2RlZmluZQlTSUdJTlQJ MgkvKiBpbnRlcnJ1cHQgKHJ1Ym91dCkgKi8KI2RlZmluZQlTSUdRVUlUCTMJLyogcXVpdCAoQVND SUkgRlMpICovCiNkZWZpbmUJU0lHSUxMCTQJLyogaWxsZWdhbCBpbnN0cnVjdGlvbiAobm90IHJl c2V0IHdoZW4gY2F1Z2h0KSovCiNkZWZpbmUJU0lHVFJBUAk1CS8qIHRyYWNlIHRyYXAgKG5vdCBy ZXNldCB3aGVuIGNhdWdodCkgKi8KI2RlZmluZQlTSUdJT1QJNgkvKiBJT1QgaW5zdHJ1Y3Rpb24g Ki8KI2RlZmluZSBTSUdBQlJUIDYJLyogdXNlZCBieSBhYm9ydCwgcmVwbGFjZSBTSUdJT1QgaW4g dGhlICBmdXR1cmUgKi8KI2RlZmluZQlTSUdFTVQJNwkvKiBFTVQgaW5zdHJ1Y3Rpb24gKi8KI2Rl ZmluZQlTSUdGUEUJOAkvKiBmbG9hdGluZyBwb2ludCBleGNlcHRpb24gKi8KI2RlZmluZQlTSUdL SUxMCTkJLyoga2lsbCAoY2Fubm90IGJlIGNhdWdodCBvciBpZ25vcmVkKSAqLwojZGVmaW5lCVNJ R0JVUwkxMAkvKiBidXMgZXJyb3IgKi8KI2RlZmluZQlTSUdTRUdWCTExCS8qIHNlZ21lbnRhdGlv biB2aW9sYXRpb24gKi8KI2RlZmluZQlTSUdTWVMJMTIJLyogYmFkIGFyZ3VtZW50IHRvIHN5c3Rl bSBjYWxsICovCiNkZWZpbmUJU0lHUElQRQkxMwkvKiB3cml0ZSBvbiBhIHBpcGUgd2l0aCBubyBv bmUgdG8gcmVhZCBpdCAqLwojZGVmaW5lCVNJR0FMUk0JMTQJLyogYWxhcm0gY2xvY2sgKi8KI2Rl ZmluZQlTSUdURVJNCTE1CS8qIHNvZnR3YXJlIHRlcm1pbmF0aW9uIHNpZ25hbCBmcm9tIGtpbGwg Ki8KI2RlZmluZQlTSUdVU1IxCTE2CS8qIHVzZXIgZGVmaW5lZCBzaWduYWwgMSAqLwojZGVmaW5l CVNJR1VTUjIJMTcJLyogdXNlciBkZWZpbmVkIHNpZ25hbCAyICovCiNkZWZpbmUJU0lHQ0xECTE4 CS8qIGRlYXRoIG9mIGEgY2hpbGQgKi8KI2RlZmluZSBTSUdDSExEIDE4CS8qIDQuM0JTRCdzL1BP U0lYIG5hbWUgKi8KI2RlZmluZQlTSUdQV1IJMTkJLyogcG93ZXItZmFpbCByZXN0YXJ0ICovCiNk ZWZpbmUJU0lHV0lOQ0ggMjAJLyogd2luZG93IHNpemUgY2hhbmdlcyAqLwojZGVmaW5lCVNJR1VS RwkyMQkvKiB1cmdlbnQgY29uZGl0aW9uIG9uIElPIGNoYW5uZWwgKi8KI2RlZmluZSBTSUdQT0xM IDIyCS8qIHBvbGxhYmxlIGV2ZW50IG9jY3VycmVkICovCiNkZWZpbmUJU0lHSU8JMjIJLyogaW5w dXQvb3V0cHV0IHBvc3NpYmxlIHNpZ25hbCAqLwojZGVmaW5lCVNJR1NUT1AJMjMJLyogc2VuZGFi bGUgc3RvcCBzaWduYWwgbm90IGZyb20gdHR5ICovCiNkZWZpbmUJU0lHVFNUUAkyNAkvKiBzdG9w IHNpZ25hbCBmcm9tIHR0eSAqLwojZGVmaW5lCVNJR0NPTlQJMjUJLyogY29udGludWUgYSBzdG9w cGVkIHByb2Nlc3MgKi8KI2RlZmluZQlTSUdUVElOCTI2CS8qIHRvIHJlYWRlcnMgcGdycCB1cG9u IGJhY2tncm91bmQgdHR5IHJlYWQgKi8KI2RlZmluZQlTSUdUVE9VCTI3CS8qIGxpa2UgVFRJTiBm b3Igb3V0cHV0IGlmICh0cC0+dF9sb2NhbCZMVE9TVE9QKSAqLwojZGVmaW5lIFNJR1ZUQUxSTSAy OAkvKiB2aXJ0dWFsIHRpbWUgYWxhcm0gKi8KI2RlZmluZSBTSUdQUk9GCTI5CS8qIHByb2ZpbGlu ZyBhbGFybSAqLwojZGVmaW5lIFNJR1hDUFUJMzAJLyogQ3B1IHRpbWUgbGltaXQgZXhjZWVkZWQg Ki8KI2RlZmluZSBTSUdYRlNaCTMxCS8qIEZpbGVzaXplIGxpbWl0IGV4Y2VlZGVkICovCiNkZWZp bmUJU0lHSzMyCTMyCS8qIFJlc2VydmVkIGZvciBrZXJuZWwgdXNhZ2UgKi8KI2RlZmluZQlTSUdD S1BUCTMzCS8qIENoZWNrcG9pbnQgd2FybmluZyAqLwojZGVmaW5lCVNJR1JFU1RBUlQgMzQJLyog UmVzdGFydCB3YXJuaW5nICAqLwovKiBTaWduYWxzIGRlZmluZWQgZm9yIFBvc2l4IDEwMDMuMWMu ICovCiNkZWZpbmUgU0lHUFRJTlRSCTQ3CiNkZWZpbmUgU0lHUFRSRVNDSEVECTQ4Ci8qIFBvc2l4 IDEwMDMuMWIgc2lnbmFscyAqLwojZGVmaW5lIFNJR1JUTUlOCTQ5CS8qIFBvc2l4IDEwMDMuMWIg c2lnbmFscyAqLwojZGVmaW5lIFNJR1JUTUFYCTY0CS8qIFBvc2l4IDEwMDMuMWIgc2lnbmFscyAq LwoKI2lmIGRlZmluZWQoX0xBTkdVQUdFX0MpIHx8IGRlZmluZWQoX0xBTkdVQUdFX0NfUExVU19Q TFVTKQojaWZuZGVmIFNJR19FUlIKdHlwZWRlZiB2b2lkCSgqU0lHX1BGKSAoaW50KTsKCiNkZWZp bmUgU0lHX0VSUgkJKChTSUdfUEYpLTFMKQojZGVmaW5lCVNJR19JR04JCSgoU0lHX1BGKTFMKQoj ZGVmaW5lCVNJR19ERkwJCSgoU0lHX1BGKTBMKQojZW5kaWYKCnR5cGVkZWYgaW50IAlzaWdfYXRv bWljX3Q7CmV4dGVybiBpbnQgcmFpc2UoaW50KTsKI2VuZGlmIC8qIF9MQU5HVUFHRV9DICovCgoj ZWxzZSAvKiAhX05PX0FOU0lNT0RFICovCiNpbmNsdWRlIDxzeXMvc2lnbmFsLmg+CgojaWYgZGVm aW5lZChfTEFOR1VBR0VfQykgfHwgZGVmaW5lZChfTEFOR1VBR0VfQ19QTFVTX1BMVVMpCi8qIEFO U0kgKi8KdHlwZWRlZiBpbnQgCXNpZ19hdG9taWNfdDsKZXh0ZXJuIGludCByYWlzZShpbnQpOwoK I2lmIF9QT1NJWDkwCgojaWYgIWRlZmluZWQoX0JTRF9DT01QQVQpICYmICFkZWZpbmVkKF9CU0Rf U0lHTkFMUykgCmV4dGVybiBpbnQga2lsbChwaWRfdCwgaW50KTsKI2VuZGlmIC8qICFCU0QgKi8K ZXh0ZXJuIGludCBzaWdhY3Rpb24oaW50LCBjb25zdCBzdHJ1Y3Qgc2lnYWN0aW9uICosIHN0cnVj dCBzaWdhY3Rpb24gKik7CmV4dGVybiBpbnQgc2lncGVuZGluZyhzaWdzZXRfdCAqKTsKZXh0ZXJu IGludCBzaWdwcm9jbWFzayhpbnQsIGNvbnN0IHNpZ3NldF90ICosIHNpZ3NldF90ICopOwpleHRl cm4gaW50IHNpZ3N1c3BlbmQoY29uc3Qgc2lnc2V0X3QgKik7CmV4dGVybiBpbnQgc2lnYWRkc2V0 KHNpZ3NldF90ICosIGludCk7CmV4dGVybiBpbnQgc2lnZGVsc2V0KHNpZ3NldF90ICosIGludCk7 CmV4dGVybiBpbnQgc2lnZW1wdHlzZXQoc2lnc2V0X3QgKik7CmV4dGVybiBpbnQgc2lnZmlsbHNl dChzaWdzZXRfdCAqKTsKZXh0ZXJuIGludCBzaWdpc21lbWJlcihjb25zdCBzaWdzZXRfdCAqLCBp bnQpOwojZW5kaWYJLyogX1BPU0lYOTAgKi8KCiNpZiAgX1BPU0lYOTMgfHwgX1hPUEVONQovKgog KiBQT1NJWDEwMDMuMWIgYWRkaXRpb25zCiAqLwojaW5jbHVkZSA8c3lzL3RpbWVzcGVjLmg+Cgpl eHRlcm4gaW50IHNpZ3F1ZXVlKHBpZF90ICwgaW50LCBjb25zdCB1bmlvbiBzaWd2YWwpOwpleHRl cm4gaW50IHNpZ3dhaXRpbmZvKGNvbnN0IHNpZ3NldF90ICosIHNpZ2luZm9fdCAqKTsKZXh0ZXJu IGludCBzaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QgKiwgc2lnaW5mb190ICosIGNvbnN0IHRp bWVzcGVjX3QgKik7CmV4dGVybiBpbnQgc2lnd2FpdChjb25zdCBzaWdzZXRfdCAqLCBpbnQgKik7 CiNlbmRpZiAvKiBfUE9TSVg5MyB8fCBfWE9QRU41ICovCgojaWYgX1BPU0lYMUMKI2luY2x1ZGUg PHN5cy90eXBlcy5oPgpleHRlcm4gaW50IHB0aHJlYWRfa2lsbChwdGhyZWFkX3QsIGludCk7CmV4 dGVybiBpbnQgcHRocmVhZF9zaWdtYXNrKGludCwgY29uc3Qgc2lnc2V0X3QgKiwgc2lnc2V0X3Qg Kik7CiNlbmRpZiAvKiBfUE9TSVgxQyAqLwoKI2lmIF9YT1BFTjRVWCB8fCBfWE9QRU41Ci8qCiAq IFhPUEVOIHdpdGggVVggZXh0ZW5zaW9ucwogKi8KI2lmICFkZWZpbmVkKF9CU0RfQ09NUEFUKSAm JiAhZGVmaW5lZChfQlNEX1NJR05BTFMpIApleHRlcm4gaW50IHNpZ3BhdXNlKGludCk7CiNlbmRp ZiAvKiAhQlNEICovCmV4dGVybiBfX3NpZ3JldF90ICgqc2lnc2V0KGludCxfX3NpZ3JldF90ICgq KShfX3NpZ2FyZ3MpKSkoX19zaWdhcmdzKTsKCmV4dGVybiBpbnQgc2lnaG9sZChpbnQpOwpleHRl cm4gaW50IHNpZ3JlbHNlKGludCk7CmV4dGVybiBpbnQgc2lnaWdub3JlKGludCk7CmV4dGVybiBp bnQgc2lnaW50ZXJydXB0KGludCwgaW50KTsKI2lmIChfTk9fWE9QRU40ICYmIF9OT19YT1BFTjUp IHx8IF9BQklBUEkKZXh0ZXJuIGludCBzaWdhbHRzdGFjayhjb25zdCBzdGFja190ICosIHN0YWNr X3QgKik7CiNlbHNlCmV4dGVybiBpbnQgX194cGc0X3NpZ2FsdHN0YWNrKGNvbnN0IHN0YWNrX3Qg Kiwgc3RhY2tfdCAqKTsKLypSRUZFUkVOQ0VEKi8Kc3RhdGljIGludCBzaWdhbHRzdGFjayhjb25z dCBzdGFja190ICpuc3MsIHN0YWNrX3QgKm9zcykKewoJcmV0dXJuIF9feHBnNF9zaWdhbHRzdGFj ayhuc3MsIG9zcyk7Cn0KI2VuZGlmCS8qIF9OT19YT1BFTjQgKi8KI2VuZGlmIC8qIF9YT1BFTjRV WCB8fCBfWE9QRU41ICovCgojaWYgX1NHSUFQSSB8fCBfQUJJQVBJCmV4dGVybiBjaGFyICpfc3lz X3NpZ2xpc3RbXTsKZXh0ZXJuIGludCBfc3lzX25zaWc7CgojaW5jbHVkZSA8c3lzL3R5cGVzLmg+ CiNpbmNsdWRlIDxzeXMvcHJvY3NldC5oPgpleHRlcm4gaW50ICgqc3NpZ25hbChpbnQsIGludCAo KikoaW50KSkpKGludCk7CmV4dGVybiBpbnQgZ3NpZ25hbChpbnQpOwpleHRlcm4gaW50IHNpZ3Nl bmQoaWR0eXBlX3QsIGlkX3QsIGludCk7CmV4dGVybiBpbnQgc2lnc2VuZHNldChjb25zdCBwcm9j c2V0X3QgKiwgaW50KTsKCi8qCiAqIFRoZSBzaWduYWwtbWFza2luZyByb3V0aW5lIHNnaV9hbHRl cnNpZ3MoKSBjb250YWlucyBhbiBhY3Rpb24gCiAqIHBhcmFtZXRlcjsgdGhlIHJvdXRpbmUgY2Fu IGVpdGhlciBhZGQgb3IgZGVsZXRlIGEgc2V0IG9mIHNpZ25hbHMuCiAqLwojZGVmaW5lIEFERFNJ R1MgICAgICAgICAxCiNkZWZpbmUgREVMU0lHUyAgICAgICAgIDIKCi8qCiAqIFRoZSBmb2xsb3dp bmcgbWFjcm8gcmV0dXJucyB0cnVlIGlmIGFueSBvZiB0aGUgc2lnbmFscyBpbiB0aGUgc2lnc2V0 X3QKICogcG9pbnRlZCB0byBieSAic2V0cHRyIiBhcmUgc2V0LgogKi8KI2RlZmluZSBzZ2lfc2ln YW55c2V0KHNldHB0cikgICAoc2dpX3NpZ2Zmc2V0KHNldHB0ciwwKSAhPSAwKQoKZXh0ZXJuIGlu dCBzZ2lfYWx0ZXJzaWdzKGludCwgc2lnc2V0X3QgKiwgaW50W10pOwpleHRlcm4gaW50IHNnaV9z aWdmZnNldChzaWdzZXRfdCAqLCBpbnQpOwpleHRlcm4gaW50IHNnaV9kdW1wc2V0KHNpZ3NldF90 ICopOwoKI2VuZGlmIAkvKiBfU0dJQVBJIHx8IF9BQklBUEkgKi8KCiNlbmRpZiAgLyogX0xBTkdV QUdFX0MgKi8KI2VuZGlmIC8qIF9OT19BTlNJTU9ERSAqLwoKI2lmZGVmIF9fY3BsdXNwbHVzCn0K I2VuZGlmCiNlbmRpZiAvKiAhX19TSUdOQUxfSF9fICovCg==