This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c/46902] [4.6 Regression] gcc.dg/plugin/plugindir*.c gives ICEs on powerpc-apple-darwin9


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46902

Iain Sandoe <iains at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2010.12.13 19:09:16
     Ever Confirmed|0                           |1

--- Comment #7 from Iain Sandoe <iains at gcc dot gnu.org> 2010-12-13 19:09:16 UTC ---
c/l:

 ./gcc/xgcc -Bgcc /GCC/gcc-live-trunk/gcc/testsuite/gcc.dg/plugin/plugindir1.c 
 -c -fplugin=foo -S  -m32 -o plugindir1.s

(gdb) bt
#0  0x9757f928 in strlen ()
#1  0x00eff460 in vconcat_length (first=0xffffffff <Address 0xffffffff out of
bounds>, args=0xbfffef8c "") at /GCC/gcc-live-trunk/libiberty/concat.c:76
#2  0x00eff6a4 in concat (first=0xffffffff <Address 0xffffffff out of bounds>)
at /GCC/gcc-live-trunk/libiberty/concat.c:159
#3  0x00885274 in add_new_plugin (plugin_name=0xbffff3b6 "foo") at
/GCC/gcc-live-trunk/gcc/plugin.c:157
#4  0x00879444 in handle_common_deferred_options () at
/GCC/gcc-live-trunk/gcc/opts-global.c:385
#5  0x009e83d4 in toplev_main (argc=20, argv=0xbffff140) at
/GCC/gcc-live-trunk/gcc/toplev.c:1923
#6  0x00142760 in main (argc=20, argv=0xbffff140) at
/GCC/gcc-live-trunk/gcc/main.c:36

the code for plugin.c: around line 157:

152           base_name = CONST_CAST (char*, plugin_name);
153           /* FIXME: the ".so" suffix is currently builtin, since plugins
154              only work on ELF host systems like e.g. Linux or Solaris.
155              When plugins shall be available on non ELF systems such as
156              Windows or MacOS, this code has to be greatly improved.  */
157           plugin_name = concat (default_plugin_dir_name (), "/",
158                                 plugin_name, ".so", NULL);
159           if (access (plugin_name, R_OK))
160             fatal_error
161               ("inacessible plugin file %s expanded from short plugin name
%s: %m",

so we probably need to improve the robustness... 
out of time for now ..


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]