Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 Jan 2012 02:51:52 GMT
From:      Paul Ambrose <ambrosehua@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/164617: building scim with clang++ failed
Message-ID:  <201201300251.q0U2pqMp076925@red.freebsd.org>
Resent-Message-ID: <201201300300.q0U30Ofs019910@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         164617
>Category:       ports
>Synopsis:       building scim with clang++ failed
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jan 30 03:00:23 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Paul Ambrose
>Release:        Release-9 AMD64
>Organization:
Freecomm
>Environment:
FreeBSD capoor-daemon 9.0-RELEASE FreeBSD 9.0-RELEASE #1 r+0015927: Sun Jan 29 15:15:54 CST 2012     root@capoor-daemon:/usr/obj/usr/src/sys/MYKERNEL  amd64

>Description:
building scim with clang++ failed
>How-To-Repeat:
cd /usr/ports/textproc/scim; 
make CXX=clang CC=clang 
>Fix:
--- extras/gtk2_immodule/gtkimcontextscim.cpp        2012-01-30 10:38:46.000000000 +0800
+++ extras/gtk2_immodule/gtkimcontextscim.new.cpp    2012-01-30 10:38:28.000000000 +0800
@@ -1710,7 +1710,7 @@
         // And set manual to false.
         if (!check_socket_frontend ()) {
             std::cerr << "Launching a SCIM daemon with Socket FrontEnd...\n";
-            char *new_argv [] = { stack_cast<char*> ("--no-stay"), 0 };
+            char *new_argv [] = { const_cast<char*> ("--no-stay"), 0 };
             scim_launch (true,
                          config_module_name,
                          (load_engine_list.size () ? scim_combine_string_list (load_engine_list, ',') : "all"),
--- src/scim_helper_manager_server.cpp      2008-11-02 14:42:38.000000000 +0800
+++ src/scim_helper_manager_server.new.cpp  2012-01-30 10:42:53.000000000 +0800
@@ -95,9 +95,8 @@
     //      so I added a workaround: have an array of modules and unload them all together in the end only.
     //      TODO Need to figure out what's going on with this issue.
 
-    HelperModule module[mod_list.size ()];
-
     if (mod_list.size ()) {
+        HelperModule * module = new HelperModule[mod_list.size()];
 
         for (size_t i = 0; i < mod_list.size (); ++i) {
 
@@ -120,6 +119,8 @@
         for (size_t i = 0; i < mod_list.size (); ++i) {
             module[i].unload ();
         }
+
+        delete [] module;
     }
 }
 


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201201300251.q0U2pqMp076925>