[svn:parrot] r40867 - in branches/context_pmc3: include/parrot src/call

bacek at svn.parrot.org bacek at svn.parrot.org
Sun Aug 30 11:15:50 UTC 2009


Author: bacek
Date: Sun Aug 30 11:15:50 2009
New Revision: 40867
URL: https://trac.parrot.org/parrot/changeset/40867

Log:
[cage] Add PARROT_CAN(NOT)_RETURN_NULL to context functions

Modified:
   branches/context_pmc3/include/parrot/call.h
   branches/context_pmc3/src/call/context.c

Modified: branches/context_pmc3/include/parrot/call.h
==============================================================================
--- branches/context_pmc3/include/parrot/call.h	Sun Aug 30 11:15:22 2009	(r40866)
+++ branches/context_pmc3/include/parrot/call.h	Sun Aug 30 11:15:50 2009	(r40867)
@@ -783,6 +783,7 @@
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_caller_ctx(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
@@ -794,6 +795,7 @@
         __attribute__nonnull__(1);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_continuation(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
@@ -804,26 +806,31 @@
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CANNOT_RETURN_NULL
 PMC* Parrot_pcc_get_lex_pad(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_namespace(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_object(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_outer_ctx(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 opcode_t* Parrot_pcc_get_pc(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
@@ -845,11 +852,13 @@
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 opcode_t* Parrot_pcc_get_results(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_results_signature(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
@@ -863,6 +872,7 @@
         __attribute__nonnull__(2);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC* Parrot_pcc_get_sub(PARROT_INTERP, ARGIN(PMC *ctx))
         __attribute__nonnull__(1)
         __attribute__nonnull__(2);
@@ -884,10 +894,9 @@
 PARROT_CAN_RETURN_NULL
 void Parrot_pcc_set_constants(PARROT_INTERP,
     ARGIN(PMC *ctx),
-    ARGIN(struct PackFile_Constant **constants))
+    ARGIN_NULLOK(struct PackFile_Constant **constants))
         __attribute__nonnull__(1)
-        __attribute__nonnull__(2)
-        __attribute__nonnull__(3);
+        __attribute__nonnull__(2);
 
 PARROT_EXPORT
 void Parrot_pcc_set_continuation(PARROT_INTERP,
@@ -1082,8 +1091,7 @@
     || PARROT_ASSERT_ARG(caller_ctx)
 #define ASSERT_ARGS_Parrot_pcc_set_constants __attribute__unused__ int _ASSERT_ARGS_CHECK = \
        PARROT_ASSERT_ARG(interp) \
-    || PARROT_ASSERT_ARG(ctx) \
-    || PARROT_ASSERT_ARG(constants)
+    || PARROT_ASSERT_ARG(ctx)
 #define ASSERT_ARGS_Parrot_pcc_set_continuation __attribute__unused__ int _ASSERT_ARGS_CHECK = \
        PARROT_ASSERT_ARG(interp) \
     || PARROT_ASSERT_ARG(ctx)

Modified: branches/context_pmc3/src/call/context.c
==============================================================================
--- branches/context_pmc3/src/call/context.c	Sun Aug 30 11:15:22 2009	(r40866)
+++ branches/context_pmc3/src/call/context.c	Sun Aug 30 11:15:50 2009	(r40867)
@@ -42,7 +42,7 @@
 PARROT_EXPORT
 PARROT_CAN_RETURN_NULL
 void
-Parrot_pcc_set_constants(PARROT_INTERP, ARGIN(PMC *ctx), ARGIN(struct PackFile_Constant **constants))
+Parrot_pcc_set_constants(PARROT_INTERP, ARGIN(PMC *ctx), ARGIN_NULLOK(struct PackFile_Constant **constants))
 {
     ASSERT_ARGS(Parrot_pcc_set_constants)
     Parrot_Context * c = Parrot_pcc_get_context(interp, ctx);
@@ -202,6 +202,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_caller_ctx(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -242,6 +243,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_outer_ctx(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -281,6 +283,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CANNOT_RETURN_NULL
 PMC*
 Parrot_pcc_get_lex_pad(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -320,6 +323,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_namespace(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -398,6 +402,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_continuation(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -438,6 +443,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_object(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -477,6 +483,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_sub(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -516,6 +523,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 opcode_t*
 Parrot_pcc_get_pc(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -555,6 +563,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 opcode_t*
 Parrot_pcc_get_results(PARROT_INTERP, ARGIN(PMC *ctx))
 {
@@ -594,6 +603,7 @@
 */
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
 PMC*
 Parrot_pcc_get_results_signature(PARROT_INTERP, ARGIN(PMC *ctx))
 {


More information about the parrot-commits mailing list