[svn:parrot] r48926 - in trunk: compilers/imcc compilers/opsc/src/Ops include/parrot/oplib src src/ops

plobsing at svn.parrot.org plobsing at svn.parrot.org
Sat Sep 11 05:49:57 UTC 2010


Author: plobsing
Date: Sat Sep 11 05:49:57 2010
New Revision: 48926
URL: https://trac.parrot.org/parrot/changeset/48926

Log:
fix C++ build

Modified:
   trunk/compilers/imcc/optimizer.c
   trunk/compilers/imcc/parser_util.c
   trunk/compilers/opsc/src/Ops/Emitter.pm
   trunk/include/parrot/oplib/core_ops.h
   trunk/src/ops/core_ops.c
   trunk/src/packout.c
   trunk/src/pbc_dump.c

Modified: trunk/compilers/imcc/optimizer.c
==============================================================================
--- trunk/compilers/imcc/optimizer.c	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/compilers/imcc/optimizer.c	Sat Sep 11 05:49:57 2010	(r48926)
@@ -805,7 +805,7 @@
     opcode_t eval[4], *pc;
     int opnum;
     int i;
-    op_info_t *op_info = parrot_hash_get(interp, interp->op_hash, (void *)op);
+    op_info_t *op_info = (op_info_t *)parrot_hash_get(interp, interp->op_hash, (void *)op);
     if (!op_info || !STREQ(op_info->full_name, op))
         IMCC_fatal(interp, 1, "eval_ins: op '%s' not found\n", op);
     /* now fill registers */

Modified: trunk/compilers/imcc/parser_util.c
==============================================================================
--- trunk/compilers/imcc/parser_util.c	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/compilers/imcc/parser_util.c	Sat Sep 11 05:49:57 2010	(r48926)
@@ -190,7 +190,7 @@
 {
     ASSERT_ARGS(check_op)
     op_fullname(fullname, name, r, narg, keyvec);
-    *op_info = parrot_hash_get(interp, interp->op_hash, fullname);
+    *op_info = (op_info_t *)parrot_hash_get(interp, interp->op_hash, fullname);
     if (*op_info && !STREQ((*op_info)->full_name, fullname))
         *op_info = NULL;
 }
@@ -250,7 +250,7 @@
     r[0]->pmc_type = enum_class_FixedIntegerArray;
 
     op_fullname(fullname, name, r, 1, 0);
-    op = parrot_hash_get(interp, interp->op_hash, fullname);
+    op = (op_info_t *)parrot_hash_get(interp, interp->op_hash, fullname);
 
     PARROT_ASSERT(op && STREQ(op->full_name, fullname));
 
@@ -314,13 +314,13 @@
         char fullname[64] = "", format[128] = "";
 
         op_fullname(fullname, name, r, n, keyvec);
-        op = parrot_hash_get(interp, interp->op_hash, fullname);
+        op = (op_info_t *)parrot_hash_get(interp, interp->op_hash, fullname);
         if (op && !STREQ(op->full_name, fullname))
             op = NULL;
 
         /* maybe we have a fullname */
         if (!op) {
-            op = parrot_hash_get(interp, interp->op_hash, name);
+            op = (op_info_t *)parrot_hash_get(interp, interp->op_hash, name);
             if (op && !STREQ(op->full_name, name))
                 op = NULL;
         }
@@ -331,7 +331,7 @@
             if (n_name) {
                 name = n_name;
                 op_fullname(fullname, name, r, n, keyvec);
-                op = parrot_hash_get(interp, interp->op_hash, fullname);
+                op = (op_info_t *)parrot_hash_get(interp, interp->op_hash, fullname);
                 if (op && !STREQ(op->full_name, fullname))
                     op = NULL;
             }
@@ -1024,7 +1024,7 @@
     if (changed) {
         op_info_t *op;
         op_fullname(fullname, name, r, n, keyvec);
-        op = parrot_hash_get(interp, interp->op_hash, fullname);
+        op = (op_info_t *)parrot_hash_get(interp, interp->op_hash, fullname);
         if (op && !STREQ(op->full_name, fullname))
             op = NULL;
         return op;

Modified: trunk/compilers/opsc/src/Ops/Emitter.pm
==============================================================================
--- trunk/compilers/opsc/src/Ops/Emitter.pm	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/compilers/opsc/src/Ops/Emitter.pm	Sat Sep 11 05:49:57 2010	(r48926)
@@ -256,8 +256,7 @@
     my $dispatch := self.trans.init_func_disaptch;
 
     # TODO There is a bug in NQP about \{
-    $fh.print(q|
-PARROT_EXPORT
+    $fh.print((self.flags<core> ?? 'PARROT_EXPORT' !! '') ~ q|
 op_lib_t *
 | ~ self.init_func ~ q|(PARROT_INTERP, long init) {
     /* initialize and return op_lib ptr */
@@ -360,7 +359,8 @@
 #include "parrot/oplib.h"
 #include "parrot/runcore_api.h"
 
-{self.sym_export} op_lib_t *{self.init_func}(PARROT_INTERP, long init);
+| ~ (self.flags<core> ?? 'PARROT_EXPORT' !! '') ~ qq|
+op_lib_t *{self.init_func}(PARROT_INTERP, long init);
 
 |);
 }

Modified: trunk/include/parrot/oplib/core_ops.h
==============================================================================
--- trunk/include/parrot/oplib/core_ops.h	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/include/parrot/oplib/core_ops.h	Sat Sep 11 05:49:57 2010	(r48926)
@@ -20,7 +20,8 @@
 #include "parrot/oplib.h"
 #include "parrot/runcore_api.h"
 
- op_lib_t *Parrot_DynOp_core_2_7_0(PARROT_INTERP, long init);
+PARROT_EXPORT
+op_lib_t *Parrot_DynOp_core_2_7_0(PARROT_INTERP, long init);
 
  opcode_t * Parrot_end(opcode_t *, PARROT_INTERP);
  opcode_t * Parrot_noop(opcode_t *, PARROT_INTERP);

Modified: trunk/src/ops/core_ops.c
==============================================================================
--- trunk/src/ops/core_ops.c	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/src/ops/core_ops.c	Sat Sep 11 05:49:57 2010	(r48926)
@@ -26204,8 +26204,7 @@
 
     hop         = NULL;
     hop_buckets = NULL;
-}
-PARROT_EXPORT
+}PARROT_EXPORT
 op_lib_t *
 Parrot_DynOp_core_2_7_0(PARROT_INTERP, long init) {
     /* initialize and return op_lib ptr */

Modified: trunk/src/packout.c
==============================================================================
--- trunk/src/packout.c	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/src/packout.c	Sat Sep 11 05:49:57 2010	(r48926)
@@ -277,7 +277,7 @@
         HashBucket *bucket = parrot_hash_get_bucket(interp, ct->string_hash,
                 key_str);
         if (bucket) {
-            i = (int)bucket->value;
+            i = (int)PTR2INTVAL(bucket->value);
             if (i < ct->const_count) /* only consider constants that have already occured */
                 return i;
         }

Modified: trunk/src/pbc_dump.c
==============================================================================
--- trunk/src/pbc_dump.c	Sat Sep 11 01:21:55 2010	(r48925)
+++ trunk/src/pbc_dump.c	Sat Sep 11 05:49:57 2010	(r48926)
@@ -59,6 +59,7 @@
 #include "parrot/parrot.h"
 #include "parrot/embed.h"
 #include "parrot/oplib/ops.h"
+#include "parrot/oplib/core_ops.h"
 
 /*
 


More information about the parrot-commits mailing list