From: Jerry <lan...@qw...> - 2006-08-03 08:13:53
|
In my attempts to make Ada bindings for PLplot, I have come across a bit of a curiosity. The problem, if there is one, is probably either in my head or code or my tenuous grasp of most of what I'm doing, including using gdb. Anyway, for your entertainment, below is a backtrace from where my program hangs, signal 10 (SIGBUS). My main Ada program (Ada makes a higher-level main that I normally don't see, called adaplplotproject herein, at #6), is testing_thick_binding.main_testing_thick_binding at #5. This then calls the Ada wrapper to make a 3D mesh plot, called plplot.mesh_3d and shown at #4. This in turn is supposed to call c_plmesh which I have imported from the C binary by the name plmesh. However, according to the call stack, at #3, c_plot3dc is called instead. There are other oddities in the arguments that are listed below. Comments? Jerry (gdb) bt #0 0x0021f480 in plt3zz (x0=1, y0=2, dx=1, dy=-1, flag=0, init=0xbfff9a10, x=0xbffff0c0, y=0xbffff1e0, z=0xbfff9b30, nx=35, ny=46, u=0x331580, v=0x3316f0, c=0x0) at plot3d.c:1335 #1 0x0021e440 in c_plot3dcl (x=0x3fd3379b, y=0xce5838bf, z=0xbfff9b30, nx=-1073745728, ny=143016, opt=0, clevel=0x3316f0, nlevel=0, ixstart=27, ixn=142948, indexymin=0x1, indexymax=0x1) at plot3d.c:971 #2 0x0021e440 in c_plot3dcl (x=0xbffff0c0, y=0xbffff1e0, z=0xbfff9b30, nx=-1073745728, ny=46, opt=0, clevel=0x3316f0, nlevel=0, ixstart=0, ixn=0, indexymin=0x0, indexymax=0x0) at plot3d.c: 971 #3 0x0021d994 in c_plot3dc (x=0xa44, y=0x2, z=0x1, nx=-1, ny=0, opt=-1073767920, clevel=0x2511e0, nlevel=2190788) at plot3d.c:745 Cannot access memory at address 0x50 #4 0x0000a388 in plplot.mesh_3d (x=) at plplot.adb:1013 #5 0x000044ec in testing_thick_binding.main_testing_thick_binding () at Testing_Thick_Binding.adb:142 #6 0x00002a24 in adaplplotproject () at adaplplotproject.adb:11 #7 0x0000c2a8 in main (argc=1, argv=3221223468, envp=3221223476) at b~adaplplotproject.adb:215 Current language: auto; currently ada (gdb) |