[svn:parrot] r46897 - in trunk: compilers/imcc include/parrot
plobsing at svn.parrot.org
plobsing at svn.parrot.org
Sat May 22 20:50:14 UTC 2010
Author: plobsing
Date: Sat May 22 20:50:13 2010
New Revision: 46897
URL: https://trac.parrot.org/parrot/changeset/46897
Log:
remove PARROT_EXPORT statements from imcc
also, it appears the headerizer hasn't been run for a while
Modified:
trunk/compilers/imcc/debug.c
trunk/compilers/imcc/debug.h
trunk/compilers/imcc/imc.c
trunk/compilers/imcc/imc.h
trunk/compilers/imcc/instructions.c
trunk/compilers/imcc/instructions.h
trunk/compilers/imcc/parser.h
trunk/compilers/imcc/parser_util.c
trunk/include/parrot/charset.h
Modified: trunk/compilers/imcc/debug.c
==============================================================================
--- trunk/compilers/imcc/debug.c Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/debug.c Sat May 22 20:50:13 2010 (r46897)
@@ -39,7 +39,6 @@
*/
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void
IMCC_fatal(PARROT_INTERP, SHIM(int code), ARGIN(const char *fmt), ...)
@@ -63,7 +62,6 @@
*/
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void
IMCC_fataly(PARROT_INTERP, SHIM(int code), ARGIN(const char *fmt), ...)
@@ -89,7 +87,6 @@
*/
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void
IMCC_fatal_standalone(PARROT_INTERP, int code, ARGIN(const char *fmt), ...)
@@ -114,7 +111,6 @@
*/
-PARROT_EXPORT
void
IMCC_warning(PARROT_INTERP, ARGIN(const char *fmt), ...)
{
@@ -139,7 +135,6 @@
*/
-PARROT_EXPORT
void
IMCC_info(PARROT_INTERP, int level, ARGIN(const char *fmt), ...)
{
@@ -164,7 +159,6 @@
*/
-PARROT_EXPORT
void
IMCC_debug(PARROT_INTERP, int level, ARGIN(const char *fmt), ...)
{
Modified: trunk/compilers/imcc/debug.h
==============================================================================
--- trunk/compilers/imcc/debug.h Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/debug.h Sat May 22 20:50:13 2010 (r46897)
@@ -27,12 +27,32 @@
/* HEADERIZER BEGIN: compilers/imcc/debug.c */
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
-PARROT_EXPORT
+void dump_cfg(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
+void dump_dominance_frontiers(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
+void dump_dominators(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
+void dump_instructions(PARROT_INTERP, ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2);
+
+void dump_labels(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
+void dump_loops(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
+void dump_symreg(ARGIN(const IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
void IMCC_debug(PARROT_INTERP, int level, ARGIN(const char *fmt), ...)
__attribute__nonnull__(1)
__attribute__nonnull__(3);
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void IMCC_fatal(PARROT_INTERP,
NULLOK(int code),
@@ -41,7 +61,6 @@
__attribute__nonnull__(1)
__attribute__nonnull__(3);
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void IMCC_fatal_standalone(PARROT_INTERP,
int code,
@@ -50,7 +69,6 @@
__attribute__nonnull__(1)
__attribute__nonnull__(3);
-PARROT_EXPORT
PARROT_DOES_NOT_RETURN
void IMCC_fataly(PARROT_INTERP,
NULLOK(int code),
@@ -59,38 +77,29 @@
__attribute__nonnull__(1)
__attribute__nonnull__(3);
-PARROT_EXPORT
void IMCC_info(PARROT_INTERP, int level, ARGIN(const char *fmt), ...)
__attribute__nonnull__(1)
__attribute__nonnull__(3);
-PARROT_EXPORT
void IMCC_warning(PARROT_INTERP, ARGIN(const char *fmt), ...)
__attribute__nonnull__(1)
__attribute__nonnull__(2);
-void dump_cfg(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
-void dump_dominance_frontiers(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
-void dump_dominators(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
-void dump_instructions(PARROT_INTERP, ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2);
-
-void dump_labels(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
-void dump_loops(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
-void dump_symreg(ARGIN(const IMC_Unit *unit))
- __attribute__nonnull__(1);
-
+#define ASSERT_ARGS_dump_cfg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_dominance_frontiers __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_dominators __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_instructions __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp) \
+ , PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_labels __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_loops __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_dump_symreg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(unit))
#define ASSERT_ARGS_IMCC_debug __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(fmt))
@@ -109,21 +118,6 @@
#define ASSERT_ARGS_IMCC_warning __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(fmt))
-#define ASSERT_ARGS_dump_cfg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_dominance_frontiers __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_dominators __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_instructions __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_labels __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_loops __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_dump_symreg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(unit))
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
/* HEADERIZER END: compilers/imcc/debug.c */
Modified: trunk/compilers/imcc/imc.c
==============================================================================
--- trunk/compilers/imcc/imc.c Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/imc.c Sat May 22 20:50:13 2010 (r46897)
@@ -63,7 +63,6 @@
*/
-PARROT_EXPORT
void
imc_compile_all_units(PARROT_INTERP)
{
@@ -113,7 +112,6 @@
*/
-PARROT_EXPORT
void
imc_compile_unit(PARROT_INTERP, ARGIN(IMC_Unit *unit))
{
@@ -136,7 +134,6 @@
*/
-PARROT_EXPORT
void
imc_cleanup(PARROT_INTERP, ARGIN_NULLOK(void *yyscanner))
{
Modified: trunk/compilers/imcc/imc.h
==============================================================================
--- trunk/compilers/imcc/imc.h Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/imc.h Sat May 22 20:50:13 2010 (r46897)
@@ -106,35 +106,32 @@
/* HEADERIZER BEGIN: compilers/imcc/imc.c */
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
-PARROT_EXPORT
void imc_cleanup(PARROT_INTERP, ARGIN_NULLOK(void *yyscanner))
__attribute__nonnull__(1);
-PARROT_EXPORT
+void imc_close_unit(PARROT_INTERP, ARGIN_NULLOK(IMC_Unit *unit))
+ __attribute__nonnull__(1);
+
void imc_compile_all_units(PARROT_INTERP)
__attribute__nonnull__(1);
-PARROT_EXPORT
void imc_compile_unit(PARROT_INTERP, ARGIN(IMC_Unit *unit))
__attribute__nonnull__(1)
__attribute__nonnull__(2);
-void imc_close_unit(PARROT_INTERP, ARGIN_NULLOK(IMC_Unit *unit))
- __attribute__nonnull__(1);
-
PARROT_CANNOT_RETURN_NULL
IMC_Unit * imc_open_unit(PARROT_INTERP, IMC_Unit_Type t)
__attribute__nonnull__(1);
#define ASSERT_ARGS_imc_cleanup __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
+#define ASSERT_ARGS_imc_close_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_imc_compile_all_units __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_imc_compile_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_imc_close_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_imc_open_unit __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
@@ -189,20 +186,6 @@
/* HEADERIZER BEGIN: compilers/imcc/parser_util.c */
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
-PARROT_EXPORT
-int do_yylex_init(PARROT_INTERP, ARGOUT(yyscan_t* yyscanner))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- FUNC_MODIFIES(* yyscanner);
-
-PARROT_EXPORT
-void imcc_destroy(PARROT_INTERP)
- __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void imcc_init(PARROT_INTERP)
- __attribute__nonnull__(1);
-
PARROT_WARN_UNUSED_RESULT
int check_op(PARROT_INTERP,
ARGOUT(char *fullname),
@@ -216,6 +199,11 @@
__attribute__nonnull__(4)
FUNC_MODIFIES(*fullname);
+int do_yylex_init(PARROT_INTERP, ARGOUT(yyscan_t* yyscanner))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2)
+ FUNC_MODIFIES(* yyscanner);
+
PARROT_WARN_UNUSED_RESULT
PARROT_CANNOT_RETURN_NULL
PMC * imcc_compile(PARROT_INTERP,
@@ -285,6 +273,12 @@
__attribute__nonnull__(3)
FUNC_MODIFIES(*error_message);
+void imcc_destroy(PARROT_INTERP)
+ __attribute__nonnull__(1);
+
+void imcc_init(PARROT_INTERP)
+ __attribute__nonnull__(1);
+
PARROT_IGNORABLE_RESULT
int /*@alt void@*/
imcc_vfprintf(PARROT_INTERP,
@@ -346,18 +340,14 @@
FUNC_MODIFIES(*unit)
FUNC_MODIFIES(*r);
-#define ASSERT_ARGS_do_yylex_init __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(yyscanner))
-#define ASSERT_ARGS_imcc_destroy __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_imcc_init __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_check_op __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(fullname) \
, PARROT_ASSERT_ARG(name) \
, PARROT_ASSERT_ARG(r))
+#define ASSERT_ARGS_do_yylex_init __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp) \
+ , PARROT_ASSERT_ARG(yyscanner))
#define ASSERT_ARGS_imcc_compile __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(s) \
@@ -389,6 +379,10 @@
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(s) \
, PARROT_ASSERT_ARG(error_message))
+#define ASSERT_ARGS_imcc_destroy __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
+#define ASSERT_ARGS_imcc_init __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_imcc_vfprintf __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp) \
, PARROT_ASSERT_ARG(io) \
@@ -512,8 +506,8 @@
AsmInYield
} AsmState;
-PARROT_EXPORT void IMCC_push_parser_state(PARROT_INTERP);
-PARROT_EXPORT void IMCC_pop_parser_state(PARROT_INTERP, void *yyscanner);
+void IMCC_push_parser_state(PARROT_INTERP);
+void IMCC_pop_parser_state(PARROT_INTERP, void *yyscanner);
/* globals store the state between individual e_pbc_emit calls */
typedef struct subs_t {
@@ -656,8 +650,8 @@
#define UNSET_STATE_RUN_FROM_FILE(i) (COMPILER_STATE(i) &= ~PBC_RUN_FILE)
/* imclexer.c */
-PARROT_EXPORT FILE * imc_yyin_set(FILE *new_yyin, void *yyscanner);
-PARROT_EXPORT FILE * imc_yyin_get(void *yyscanner);
+FILE * imc_yyin_set(FILE *new_yyin, void *yyscanner);
+FILE * imc_yyin_get(void *yyscanner);
#endif /* PARROT_IMCC_IMC_H_GUARD */
Modified: trunk/compilers/imcc/instructions.c
==============================================================================
--- trunk/compilers/imcc/instructions.c Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/instructions.c Sat May 22 20:50:13 2010 (r46897)
@@ -794,7 +794,6 @@
*/
-PARROT_EXPORT
int
emit_open(PARROT_INTERP, int type, ARGIN_NULLOK(const char *param))
{
@@ -817,7 +816,6 @@
*/
-PARROT_EXPORT
int
emit_flush(PARROT_INTERP, ARGIN_NULLOK(void *param), ARGIN(IMC_Unit *unit))
{
@@ -849,7 +847,6 @@
*/
-PARROT_EXPORT
int
emit_close(PARROT_INTERP, ARGIN_NULLOK(void *param))
{
Modified: trunk/compilers/imcc/instructions.h
==============================================================================
--- trunk/compilers/imcc/instructions.h Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/instructions.h Sat May 22 20:50:13 2010 (r46897)
@@ -91,21 +91,6 @@
/* HEADERIZER BEGIN: compilers/imcc/instructions.c */
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
-PARROT_EXPORT
-int emit_close(PARROT_INTERP, ARGIN_NULLOK(void *param))
- __attribute__nonnull__(1);
-
-PARROT_EXPORT
-int emit_flush(PARROT_INTERP,
- ARGIN_NULLOK(void *param),
- ARGIN(IMC_Unit *unit))
- __attribute__nonnull__(1)
- __attribute__nonnull__(3);
-
-PARROT_EXPORT
-int emit_open(PARROT_INTERP, int type, ARGIN_NULLOK(const char *param))
- __attribute__nonnull__(1);
-
PARROT_WARN_UNUSED_RESULT
PARROT_CAN_RETURN_NULL
Instruction * _delete_ins(ARGMOD(IMC_Unit *unit), ARGIN(Instruction *ins))
@@ -133,6 +118,18 @@
FUNC_MODIFIES(*unit)
FUNC_MODIFIES(*ins);
+int emit_close(PARROT_INTERP, ARGIN_NULLOK(void *param))
+ __attribute__nonnull__(1);
+
+int emit_flush(PARROT_INTERP,
+ ARGIN_NULLOK(void *param),
+ ARGIN(IMC_Unit *unit))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(3);
+
+int emit_open(PARROT_INTERP, int type, ARGIN_NULLOK(const char *param))
+ __attribute__nonnull__(1);
+
PARROT_CAN_RETURN_NULL
Instruction * emitb(PARROT_INTERP,
ARGMOD_NULLOK(IMC_Unit *unit),
@@ -215,13 +212,6 @@
FUNC_MODIFIES(*ins)
FUNC_MODIFIES(*tmp);
-#define ASSERT_ARGS_emit_close __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_emit_flush __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp) \
- , PARROT_ASSERT_ARG(unit))
-#define ASSERT_ARGS_emit_open __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS__delete_ins __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(unit) \
, PARROT_ASSERT_ARG(ins))
@@ -232,6 +222,13 @@
#define ASSERT_ARGS_delete_ins __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(unit) \
, PARROT_ASSERT_ARG(ins))
+#define ASSERT_ARGS_emit_close __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
+#define ASSERT_ARGS_emit_flush __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp) \
+ , PARROT_ASSERT_ARG(unit))
+#define ASSERT_ARGS_emit_open __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+ PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_emitb __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(interp))
#define ASSERT_ARGS_free_ins __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
Modified: trunk/compilers/imcc/parser.h
==============================================================================
--- trunk/compilers/imcc/parser.h Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/parser.h Sat May 22 20:50:13 2010 (r46897)
@@ -27,9 +27,9 @@
SymReg * macro(PARROT_INTERP, char *name);
-PARROT_EXPORT int yyparse(yyscan_t, PARROT_INTERP);
-PARROT_EXPORT int yylex(YYSTYPE *, yyscan_t, PARROT_INTERP);
-PARROT_EXPORT int yylex_destroy(yyscan_t);
+int yyparse(yyscan_t, PARROT_INTERP);
+int yylex(YYSTYPE *, yyscan_t, PARROT_INTERP);
+int yylex_destroy(yyscan_t);
int yylex_init(yyscan_t*);
int yyget_column(yyscan_t);
Modified: trunk/compilers/imcc/parser_util.c
==============================================================================
--- trunk/compilers/imcc/parser_util.c Sat May 22 20:49:44 2010 (r46896)
+++ trunk/compilers/imcc/parser_util.c Sat May 22 20:50:13 2010 (r46897)
@@ -500,7 +500,6 @@
*/
-PARROT_EXPORT
int
do_yylex_init(PARROT_INTERP, ARGOUT(yyscan_t* yyscanner))
{
@@ -1191,7 +1190,6 @@
*/
-PARROT_EXPORT
void
imcc_init(PARROT_INTERP)
{
@@ -1240,7 +1238,6 @@
*/
-PARROT_EXPORT
void
imcc_destroy(PARROT_INTERP)
{
Modified: trunk/include/parrot/charset.h
==============================================================================
--- trunk/include/parrot/charset.h Sat May 22 20:49:44 2010 (r46896)
+++ trunk/include/parrot/charset.h Sat May 22 20:50:13 2010 (r46897)
@@ -72,11 +72,13 @@
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_CAN_RETURN_NULL
PARROT_WARN_UNUSED_RESULT
const char * Parrot_charset_c_name(SHIM_INTERP, INTVAL number_of_charset);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_CAN_RETURN_NULL
PARROT_WARN_UNUSED_RESULT
STRING * Parrot_charset_name(SHIM_INTERP, INTVAL number_of_charset);
@@ -89,6 +91,7 @@
__attribute__nonnull__(2);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_WARN_UNUSED_RESULT
INTVAL Parrot_charset_number_of_str(SHIM_INTERP, ARGIN(const STRING *src))
__attribute__nonnull__(2);
@@ -102,11 +105,13 @@
__attribute__nonnull__(1);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_WARN_UNUSED_RESULT
PARROT_CAN_RETURN_NULL
const CHARSET * Parrot_default_charset(SHIM_INTERP);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_CAN_RETURN_NULL
PARROT_WARN_UNUSED_RESULT
const CHARSET * Parrot_find_charset(SHIM_INTERP,
@@ -114,6 +119,7 @@
__attribute__nonnull__(2);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_WARN_UNUSED_RESULT
PARROT_CAN_RETURN_NULL
charset_converter_t Parrot_find_charset_converter(SHIM_INTERP,
@@ -123,6 +129,7 @@
__attribute__nonnull__(3);
PARROT_EXPORT
+PARROT_PURE_FUNCTION
PARROT_CAN_RETURN_NULL
PARROT_WARN_UNUSED_RESULT
const CHARSET * Parrot_get_charset(SHIM_INTERP, INTVAL number_of_charset);
More information about the parrot-commits
mailing list