Yeah I narrowed this down to those two lines earlier, but I couldn't figure out what the exact issue was.  It narrows down to setting and accessing variables in the FilterParams struct, but I think this is a symptom and not the issue.  If i had to guess it probably has something to do with the ellipsis (...) used in the parameters, because these same operations are used in a similar print function with no problem.

Also, if you compile with clang++ it compiles fine, so I will try and take this new finding to the llvm bug tracker (is that the correct tracker?).

I have attached a new patch that uses clang++ instead of g++ (llvm) on Darwin 11.

https://code.ros.org/trac/ros/attachment/ticket/3626/rosconsole_osx_clang.patch

Not a perfect solution still but I hope this helps,

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
William Woodall
Graduate Software Engineering
Auburn University
w@auburn.edu
wjwwood@gmail.com
williamjwoodall.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



On Wed, Aug 31, 2011 at 1:21 PM, Nicholas Butko <nbutko@ucsd.edu> wrote:
Troy, 

I added a "minimal" patch to the trac. It shows two lines being commented. If either of them is uncommented, a compiler segfault results. 

https://code.ros.org/trac/ros/attachment/ticket/3626/rosconsole_cpp_patch_minimal.patch

--Nick 

On Wed, Aug 31, 2011 at 10:59 AM, Troy Straszheim <straszheim@willowgarage.com> wrote:
On Wed, Aug 31, 2011 at 10:43 AM, Nicholas Butko <nbutko@ucsd.edu> wrote:
I just tried to install ROS (Electric) on OSX10.7 on my machine. I ran into two hurdles. Here are the fixes: 
2: rosmake fails, with a compiler segfault in rosconsle
I was disappointed to find that this is a known bug, with a known fix, and has been known for weeks prior to release. I'm sorry to see that a version of ros shipped with what is essentially a fatal issue in its core library. It seems this is a bug in Apple's llvm-gcc, and I know that OSX is not officially supported in ROS, and that there are a lot of hard issues that WG doesn't have time to support. This one takes a few minutes, and the workaround while not ideal seems harmless. A simple #ifdef __APPLE__ could have even made the workaround only for OSX platforms, leaving Ubuntu unaffected. 
It works. Thanks William for the workaround. 

I saw that patch, I didn't think that silently disabling logging on OSX was a good idea.   If you binary search with comments and/or #if 0 blocks, you can probably figure out what specific lines are confusing the compiler.  I bet it involves the va_list stuff.   Then we can figure out an actual workaround.

Also, the link to the llvm bug in that ticket is broken.  Knowing what the clang folks have to say would help.





_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users



_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users