/test/language/unclassified/test_overload01_external_cpp.h

http://github.com/tybor/Liberty · C Header · 82 lines · 37 code · 4 blank · 41 comment · 0 complexity · 66d586947347bf887db0d7667e32a430 MD5 · raw file

  1. #ifdef __cplusplus
  2. extern "C" {
  3. #endif
  4. /*
  5. -- ------------------------------------------------------------------------------------------------------------
  6. -- Copyright notice below. Please read.
  7. --
  8. -- Copyright(C) 1994-2002: INRIA - LORIA (INRIA Lorraine) - ESIAL U.H.P. - University of Nancy 1 - FRANCE
  9. -- Copyright(C) 2003-2005: INRIA - LORIA (INRIA Lorraine) - I.U.T. Charlemagne - University of Nancy 2 - FRANCE
  10. --
  11. -- Authors: Dominique COLNET, Philippe RIBET, Cyril ADRIAN, Vincent CROIZIER, Frederic MERIZEN
  12. --
  13. -- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
  14. -- documentation files (the "Software"), to deal in the Software without restriction, including without
  15. -- limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
  16. -- the Software, and to permit persons to whom the Software is furnished to do so, subject to the following
  17. -- conditions:
  18. --
  19. -- The above copyright notice and this permission notice shall be included in all copies or substantial
  20. -- portions of the Software.
  21. --
  22. -- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
  23. -- LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
  24. -- EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
  25. -- AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
  26. -- OR OTHER DEALINGS IN THE SOFTWARE.
  27. --
  28. -- http://SmartEiffel.loria.fr - SmartEiffel@loria.fr
  29. -- ------------------------------------------------------------------------------------------------------------
  30. */
  31. /*
  32. This file (SmartEiffel/sys/runtime/c_plus_plus.h) is included in the
  33. header of C++ wrappers (when some external "C++" is in the live code).
  34. */
  35. /*
  36. Following definitions MUST remain compatible with definitions
  37. of SmartEiffel/sys/runtime/base.h.
  38. */
  39. #ifndef _SE_C_PLUS_PLUS
  40. # define _SE_C_PLUS_PLUS 1
  41. typedef int Tid;
  42. typedef struct S0 T0;
  43. struct S0{Tid id;};
  44. typedef int T2;
  45. typedef unsigned char T3;
  46. typedef float T4;
  47. typedef double T5;
  48. typedef char T6;
  49. typedef void* T8;
  50. /*
  51. Some EIF_* defined in ETL :
  52. */
  53. # define EIF_BOOLEAN T6
  54. # define EIF_CHARACTER T3
  55. # define EIF_INTEGER T2
  56. # define EIF_REAL T4
  57. # define EIF_DOUBLE T5
  58. # define EIF_POINTER T8
  59. # define EIF_REFERENCE T0*
  60. # define EIF_OBJ T0*
  61. # define EIF_OBJECT EIF_OBJ
  62. #endif
  63. #ifdef __cplusplus
  64. }
  65. #endif
  66. #include "aux_overload01.h"
  67. #ifdef __cplusplus
  68. extern "C" {
  69. #endif
  70. /* Extra external prototype for line 37 of /home/cyril/SmartEiffel/se/trunk/test_suite/language/unclassified/test_overload01.e:*/
  71. T2 cpp25cpp_value(T8 a1);
  72. /* Extra external prototype for line 51 of /home/cyril/SmartEiffel/se/trunk/test_suite/language/unclassified/test_overload01.e:*/
  73. T8 cpp25cpp_new(void);
  74. /* Extra external prototype for line 44 of /home/cyril/SmartEiffel/se/trunk/test_suite/language/unclassified/test_overload01.e:*/
  75. void cpp25cpp_set_value(T8 a1,T2 a2);
  76. #ifdef __cplusplus
  77. }
  78. #endif