Thread: RE: [cedet-semantic] wrong-type-argument stringp semanticdb-table
Brought to you by:
zappo
From: <kla...@sd...> - 2005-03-10 14:43:26
|
RXJpYyBvciBEYXZpZCwgaSB0aGluayBvbmx5IHRoZSBCYWNrdHJhY2Ugb2YgdGhpcyBwb3N0aW5n IGlzDQppbnRlcmVzdGluZyBmb3IgeW91Li4uY291bGQgeW91IHJlY29nbml6ZSBhbnkgY2VkZXQt cHJvYmxlbT8/DQoNCkNpYW8sDQpLTGF1cw0KDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IFRoZSBjb250ZW50cyBvZiB0aGUgKkJhY2t0 cmFjZSogYnVmZmVyIHdlcmUNCj4gDQo+IERlYnVnZ2VyIGVudGVyZWQtLUxpc3AgZXJyb3I6ICh3 cm9uZy10eXBlLWFyZ3VtZW50IHN0cmluZ3ANCj4gc2VtYW50aWNkYi10YWJsZSkgc3RyaW5nLW1h dGNoKCIvIiBzZW1hbnRpY2RiLXRhYmxlIDApDQo+IHNwbGl0LXN0cmluZyhzZW1hbnRpY2RiLXRh YmxlICIvIikNCj4gY2xhc3MtbmFtZShzZW1hbnRpY2RiLXRhYmxlKQ0KPiBlaWVpby1kZWZhdWx0 LXN1cGVyY2xhc3MoW29iamVjdCBzZW1hbnRpY2RiLXRhYmxlICJhaWQuaHh4IiBbb2JqZWN0DQo+ IHNlbWFudGljZGItcHJvamVjdC1kYXRhYmFzZS1maWxlICJod29zLyIgImM6L0NYSS9zYi1kZXZl bC9zcmMvaHdvcy8iDQo+IHNlbWFudGljZGItdGFibGUgKFtvYmplY3Qgc2VtYW50aWNkYi10YWJs ZSAiYWRkcl8yZC5oeHgiICMxIGMrKy1tb2RlDQo+IC4uLiAiYWRkcl8yZC5oeHgiIDE5NTQgdW5i b3VuZF0gW29iamVjdCBzZW1hbnRpY2RiLXRhYmxlDQo+ICJhZGRyXzJkLmN4eCIgIzEgYysrLW1v ZGUgLi4uICJhZGRyXzJkLmN4eCIgMTU5NSB1bmJvdW5kXSBbb2JqZWN0DQo+IHNlbWFudGljZGIt dGFibGUgIm5jbHVzdGVyX2FkZHIuaHh4IiAjMSBjKystbW9kZSAuLi4NCj4gIm5jbHVzdGVyX2Fk ZHIuaHh4IiAyMzY2IHVuYm91bmRdICMwIFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZQ0KPiAiYmlu ZGVyLmh4eCIgIzEgYysrLW1vZGUgbmlsICJiaW5kZXIuaHh4IiBuaWwgdW5ib3VuZF0gW29iamVj dA0KPiBzZW1hbnRpY2RiLXRhYmxlICJjb250ZXh0X2FpZC5oeHgiICMxIGMrKy1tb2RlIC4uLiAi Y29udGV4dF9haWQuaHh4Ig0KPiAxNzU4IHVuYm91bmRdIFtvYmplY3Qgc2VtYW50aWNkYi10YWJs ZSAiZXh0ZXJuYWxfdGFza19wb3J0X25hbWUuaHh4Ig0KPiAjMSBjKystbW9kZSAuLi4gImV4dGVy bmFsX3Rhc2tfcG9ydF9uYW1lLmh4eCIgMTY2NyB1bmJvdW5kXSBbb2JqZWN0DQo+IHNlbWFudGlj ZGItdGFibGUgImludGVybmFsX3Rhc2tfcG9ydF9uYW1lLmh4eCIgIzEgYysrLW1vZGUgbmlsDQo+ ICJpbnRlcm5hbF90YXNrX3BvcnRfbmFtZS5oeHgiIG5pbCB1bmJvdW5kXSBbb2JqZWN0IHNlbWFu dGljZGItdGFibGUNCj4gIm5zZXF1ZW5jZXIuaHh4IiAjMSBjKystbW9kZSAuLi4gIm5zZXF1ZW5j ZXIuaHh4IiAyNDM2IHVuYm91bmRdDQo+IFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZSAibnNlcXVl bmNlci5jeHgiICMxIGMrKy1tb2RlIC4uLg0KPiAibnNlcXVlbmNlci5jeHgiIDIxNjQgdW5ib3Vu ZF0pDQo+ICJjOi9DWEkvc2ItZGV2ZWwvc3JjL2h3b3Mvc2VtYW50aWMuY2FjaGUiICIyLjBiZXRh MyIgIjIuMGJldGEzIl0NCj4gYysrLW1vZGUgKCgiQUlEX0hYWCIgdmFyaWFibGUgLi4uIG5pbCBb MzcgNzRdKSAoIl9pZF9BSURfSFhYIg0KPiBmdW5jdGlvbiAuLi4gbmlsIFs2OCAxMjhdKSAoImVj eGkiIHR5cGUgLi4uIG5pbCBbMTUwIDEyNzJdKSkNCj4gImFpZC5oeHgiIDE2NjUgdW5ib3VuZF0g c2VtYW50aWNkYi10YWJsZSB1bm1hdGNoZWQtc3ludGF4IG9yZWYpDQo+IGFwcGx5KGVpZWlvLWRl ZmF1bHQtc3VwZXJjbGFzcyAoW29iamVjdCBzZW1hbnRpY2RiLXRhYmxlICJhaWQuaHh4Ig0KPiBb b2JqZWN0IHNlbWFudGljZGItcHJvamVjdC1kYXRhYmFzZS1maWxlICJod29zLyINCj4gImM6L0NY SS9zYi1kZXZlbC9zcmMvaHdvcy8iIHNlbWFudGljZGItdGFibGUgLi4uDQo+ICJjOi9DWEkvc2It ZGV2ZWwvc3JjL2h3b3Mvc2VtYW50aWMuY2FjaGUiICIyLjBiZXRhMyIgIjIuMGJldGEzIl0gDQo+ IGMrKy1tb2RlICguLi4gLi4uIC4uLikgImFpZC5oeHgiIDE2NjUgdW5ib3VuZF0gc2VtYW50aWNk Yi10YWJsZQ0KPiB1bm1hdGNoZWQtc3ludGF4IG9yZWYpKQ0KPiBlaWVpby1nZW5lcmljLWNhbGwo c2xvdC11bmJvdW5kIChbb2JqZWN0IHNlbWFudGljZGItdGFibGUgImFpZC5oeHgiDQo+IFtvYmpl Y3Qgc2VtYW50aWNkYi1wcm9qZWN0LWRhdGFiYXNlLWZpbGUgImh3b3MvIg0KPiAiYzovQ1hJL3Ni LWRldmVsL3NyYy9od29zLyIgc2VtYW50aWNkYi10YWJsZSAuLi4NCj4gImM6L0NYSS9zYi1kZXZl bC9zcmMvaHdvcy9zZW1hbnRpYy5jYWNoZSIgIjIuMGJldGEzIiAiMi4wYmV0YTMiXQ0KPiBjKyst bW9kZSAoLi4uIC4uLiAuLi4pICJhaWQuaHh4IiAxNjY1IHVuYm91bmRdIHNlbWFudGljZGItdGFi bGUNCj4gdW5tYXRjaGVkLXN5bnRheCBvcmVmKSkNCj4gc2xvdC11bmJvdW5kKFtvYmplY3Qgc2Vt YW50aWNkYi10YWJsZSAiYWlkLmh4eCIgW29iamVjdA0KPiBzZW1hbnRpY2RiLXByb2plY3QtZGF0 YWJhc2UtZmlsZSAiaHdvcy8iICJjOi9DWEkvc2ItZGV2ZWwvc3JjL2h3b3MvIg0KPiBzZW1hbnRp Y2RiLXRhYmxlIChbb2JqZWN0IHNlbWFudGljZGItdGFibGUgImFkZHJfMmQuaHh4IiAjMSBjKyst bW9kZQ0KPiAuLi4gImFkZHJfMmQuaHh4IiAxOTU0IHVuYm91bmRdIFtvYmplY3Qgc2VtYW50aWNk Yi10YWJsZQ0KPiAiYWRkcl8yZC5jeHgiICMxIGMrKy1tb2RlIC4uLiAiYWRkcl8yZC5jeHgiIDE1 OTUgdW5ib3VuZF0gW29iamVjdA0KPiBzZW1hbnRpY2RiLXRhYmxlICJuY2x1c3Rlcl9hZGRyLmh4 eCIgIzEgYysrLW1vZGUgLi4uDQo+ICJuY2x1c3Rlcl9hZGRyLmh4eCIgMjM2NiB1bmJvdW5kXSAj MCBbb2JqZWN0IHNlbWFudGljZGItdGFibGUNCj4gImJpbmRlci5oeHgiICMxIGMrKy1tb2RlIG5p bCAiYmluZGVyLmh4eCIgbmlsIHVuYm91bmRdIFtvYmplY3QNCj4gc2VtYW50aWNkYi10YWJsZSAi Y29udGV4dF9haWQuaHh4IiAjMSBjKystbW9kZSAuLi4gImNvbnRleHRfYWlkLmh4eCINCj4gMTc1 OCB1bmJvdW5kXSBbb2JqZWN0IHNlbWFudGljZGItdGFibGUgImV4dGVybmFsX3Rhc2tfcG9ydF9u YW1lLmh4eCINCj4gIzEgYysrLW1vZGUgLi4uICJleHRlcm5hbF90YXNrX3BvcnRfbmFtZS5oeHgi IDE2NjcgdW5ib3VuZF0gW29iamVjdA0KPiBzZW1hbnRpY2RiLXRhYmxlICJpbnRlcm5hbF90YXNr X3BvcnRfbmFtZS5oeHgiICMxIGMrKy1tb2RlIG5pbA0KPiAiaW50ZXJuYWxfdGFza19wb3J0X25h bWUuaHh4IiBuaWwgdW5ib3VuZF0gW29iamVjdCBzZW1hbnRpY2RiLXRhYmxlDQo+ICJuc2VxdWVu Y2VyLmh4eCIgIzEgYysrLW1vZGUgLi4uICJuc2VxdWVuY2VyLmh4eCIgMjQzNiB1bmJvdW5kXQ0K PiBbb2JqZWN0IHNlbWFudGljZGItdGFibGUgIm5zZXF1ZW5jZXIuY3h4IiAjMSBjKystbW9kZSAu Li4NCj4gIm5zZXF1ZW5jZXIuY3h4IiAyMTY0IHVuYm91bmRdKQ0KPiAiYzovQ1hJL3NiLWRldmVs L3NyYy9od29zL3NlbWFudGljLmNhY2hlIiAiMi4wYmV0YTMiICIyLjBiZXRhMyJdDQo+IGMrKy1t b2RlICgoIkFJRF9IWFgiIHZhcmlhYmxlIC4uLiBuaWwgWzM3IDc0XSkgKCJfaWRfQUlEX0hYWCIN Cj4gZnVuY3Rpb24gLi4uIG5pbCBbNjggMTI4XSkgKCJlY3hpIiB0eXBlIC4uLiBuaWwgWzE1MCAx MjcyXSkpDQo+ICJhaWQuaHh4IiAxNjY1IHVuYm91bmRdIHNlbWFudGljZGItdGFibGUgdW5tYXRj aGVkLXN5bnRheCBvcmVmKQ0KPiBlaWVpby1iYXJmLWlmLXNsb3QtdW5ib3VuZCh1bmJvdW5kIFtv YmplY3Qgc2VtYW50aWNkYi10YWJsZSAiYWlkLmh4eCINCj4gW29iamVjdCBzZW1hbnRpY2RiLXBy b2plY3QtZGF0YWJhc2UtZmlsZSAiaHdvcy8iDQo+ICJjOi9DWEkvc2ItZGV2ZWwvc3JjL2h3b3Mv IiBzZW1hbnRpY2RiLXRhYmxlIChbb2JqZWN0DQo+IHNlbWFudGljZGItdGFibGUgImFkZHJfMmQu aHh4IiAjMSBjKystbW9kZSAuLi4gImFkZHJfMmQuaHh4IiAxOTU0DQo+IHVuYm91bmRdIFtvYmpl Y3Qgc2VtYW50aWNkYi10YWJsZSAiYWRkcl8yZC5jeHgiICMxIGMrKy1tb2RlIC4uLg0KPiAiYWRk cl8yZC5jeHgiIDE1OTUgIA0KPiB1bmJvdW5kXSBbb2JqZWN0IHNlbWFudGljZGItdGFibGUgIm5j bHVzdGVyX2FkZHIuaHh4IiAjMSBjKystbW9kZSAuLi4NCj4gIm5jbHVzdGVyX2FkZHIuaHh4IiAy MzY2IHVuYm91bmRdICMwIFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZQ0KPiAiYmluZGVyLmh4eCIg IzEgYysrLW1vZGUgbmlsICJiaW5kZXIuaHh4IiBuaWwgdW5ib3VuZF0gW29iamVjdA0KPiBzZW1h bnRpY2RiLXRhYmxlICJjb250ZXh0X2FpZC5oeHgiICMxIGMrKy1tb2RlIC4uLiAiY29udGV4dF9h aWQuaHh4Ig0KPiAxNzU4IHVuYm91bmRdIFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZSAiZXh0ZXJu YWxfdGFza19wb3J0X25hbWUuaHh4Ig0KPiAjMSBjKystbW9kZSAuLi4gImV4dGVybmFsX3Rhc2tf cG9ydF9uYW1lLmh4eCIgMTY2NyB1bmJvdW5kXSBbb2JqZWN0DQo+IHNlbWFudGljZGItdGFibGUg ImludGVybmFsX3Rhc2tfcG9ydF9uYW1lLmh4eCIgIzEgYysrLW1vZGUgbmlsDQo+ICJpbnRlcm5h bF90YXNrX3BvcnRfbmFtZS5oeHgiIG5pbCB1bmJvdW5kXSBbb2JqZWN0IHNlbWFudGljZGItdGFi bGUNCj4gIm5zZXF1ZW5jZXIuaHh4IiAjMSBjKystbW9kZSAuLi4gIm5zZXF1ZW5jZXIuaHh4IiAy NDM2IHVuYm91bmRdDQo+IFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZSAibnNlcXVlbmNlci5jeHgi ICMxIGMrKy1tb2RlIC4uLg0KPiAibnNlcXVlbmNlci5jeHgiIDIxNjQgdW5ib3VuZF0pDQo+ICJj Oi9DWEkvc2ItZGV2ZWwvc3JjL2h3b3Mvc2VtYW50aWMuY2FjaGUiICIyLjBiZXRhMyIgIjIuMGJl dGEzIl0NCj4gYysrLW1vZGUgKCgiQUlEX0hYWCIgdmFyaWFibGUgLi4uIG5pbCBbMzcgNzRdKSAo Il9pZF9BSURfSFhYIg0KPiBmdW5jdGlvbiAuLi4gbmlsIFs2OCAxMjhdKSAoImVjeGkiIHR5cGUg Li4uIG5pbCBbMTUwIDEyNzJdKSkNCj4gImFpZC5oeHgiIDE2NjUgdW5ib3VuZF0gdW5tYXRjaGVk LXN5bnRheCBvcmVmKSANCj4gZWllaW8tb3JlZihbb2JqZWN0IHNlbWFudGljZGItdGFibGUgImFp ZC5oeHgiIFtvYmplY3QNCj4gc2VtYW50aWNkYi1wcm9qZWN0LWRhdGFiYXNlLWZpbGUgImh3b3Mv IiAiYzovQ1hJL3NiLWRldmVsL3NyYy9od29zLyINCj4gc2VtYW50aWNkYi10YWJsZSAoW29iamVj dCBzZW1hbnRpY2RiLXRhYmxlICJhZGRyXzJkLmh4eCIgIzEgYysrLW1vZGUNCj4gLi4uICJhZGRy XzJkLmh4eCIgMTk1NCB1bmJvdW5kXSBbb2JqZWN0IHNlbWFudGljZGItdGFibGUNCj4gImFkZHJf MmQuY3h4IiAjMSBjKystbW9kZSAuLi4gImFkZHJfMmQuY3h4IiAxNTk1IHVuYm91bmRdIFtvYmpl Y3QNCj4gc2VtYW50aWNkYi10YWJsZSAibmNsdXN0ZXJfYWRkci5oeHgiICMxIGMrKy1tb2RlIC4u Lg0KPiAibmNsdXN0ZXJfYWRkci5oeHgiIDIzNjYgdW5ib3VuZF0gIzAgW29iamVjdCBzZW1hbnRp Y2RiLXRhYmxlDQo+ICJiaW5kZXIuaHh4IiAjMSBjKystbW9kZSBuaWwgImJpbmRlci5oeHgiIG5p bCB1bmJvdW5kXSBbb2JqZWN0DQo+IHNlbWFudGljZGItdGFibGUgImNvbnRleHRfYWlkLmh4eCIg IzEgYysrLW1vZGUgLi4uICJjb250ZXh0X2FpZC5oeHgiDQo+IDE3NTggdW5ib3VuZF0gW29iamVj dCBzZW1hbnRpY2RiLXRhYmxlICJleHRlcm5hbF90YXNrX3BvcnRfbmFtZS5oeHgiDQo+ICMxIGMr Ky1tb2RlIC4uLiAiZXh0ZXJuYWxfdGFza19wb3J0X25hbWUuaHh4IiAxNjY3IHVuYm91bmRdIFtv YmplY3QNCj4gc2VtYW50aWNkYi10YWJsZSAiaW50ZXJuYWxfdGFza19wb3J0X25hbWUuaHh4IiAj MSBjKystbW9kZSBuaWwNCj4gImludGVybmFsX3Rhc2tfcG9ydF9uYW1lLmh4eCIgbmlsIHVuYm91 bmRdIFtvYmplY3Qgc2VtYW50aWNkYi10YWJsZQ0KPiAibnNlcXVlbmNlci5oeHgiICMxIGMrKy1t b2RlIC4uLiAibnNlcXVlbmNlci5oeHgiIDI0MzYgdW5ib3VuZF0NCj4gW29iamVjdCBzZW1hbnRp Y2RiLXRhYmxlICJuc2VxdWVuY2VyLmN4eCIgIzEgYysrLW1vZGUgLi4uDQo+ICJuc2VxdWVuY2Vy LmN4eCIgMjE2NCB1bmJvdW5kXSkNCj4gImM6L0NYSS9zYi1kZXZlbC9zcmMvaHdvcy9zZW1hbnRp Yy5jYWNoZSIgIjIuMGJldGEzIiAiMi4wYmV0YTMiXQ0KPiBjKystbW9kZSAoKCJBSURfSFhYIiB2 YXJpYWJsZSAuLi4gbmlsIFszNyA3NF0pICgiX2lkX0FJRF9IWFgiDQo+IGZ1bmN0aW9uIC4uLiBu aWwgWzY4IDEyOF0pICgiZWN4aSIgdHlwZSAuLi4gbmlsIFsxNTAgMTI3Ml0pKQ0KPiAiYWlkLmh4 eCIgMTY2NSB1bmJvdW5kXSB1bm1hdGNoZWQtc3ludGF4KSANCj4gYnl0ZS1jb2RlKCLDgcOCCMOD XCIh4oChIiBbY3RibCBzZW1hbnRpYy1zZXQtdW5tYXRjaGVkLXN5bnRheC1jYWNoZQ0KPiBlaWVp by1vcmVmIHVubWF0Y2hlZC1zeW50YXhdIDQpDQo+IHNlbWFudGljZGItc2VtYW50aWMtaW5pdC1o b29rLWZjbigpDQo+IHJ1bi1ob29rcyhzZW1hbnRpYy1pbml0LWRiLWhvb2tzKQ0KPiBzZW1hbnRp Yy1uZXctYnVmZmVyLWZjbigpDQo+IHJ1bi1ob29rcyhtb2RlLWxvY2FsLWluaXQtaG9vaykNCj4g I1tuaWwgIsOAIMuGw4HDgiHigKEiIFthY3RpdmF0ZS1tb2RlLWxvY2FsLWJpbmRpbmdzIHJ1bi1o b29rcw0KPiBtb2RlLWxvY2FsLWluaXQtaG9va10gMl0oKQ0KPiBtb2RlLWxvY2FsLW1hcC1maWxl LWJ1ZmZlcnMoI1tuaWwgIsOAIMuGw4HDgiHigKEiDQo+IFthY3RpdmF0ZS1tb2RlLWxvY2FsLWJp bmRpbmdzIHJ1bi1ob29rcyBtb2RlLWxvY2FsLWluaXQtaG9va10gMl0gI1tuaWwNCj4gIgggPT/i gKEiIFttb2RlLWxvY2FsLS1pbml0LW1vZGUgbWFqb3ItbW9kZV0gMl0gKCM8YnVmZmVyIGFpZC5o eHg+KSkNCj4gbW9kZS1sb2NhbC1wb3N0LW1ham9yLW1vZGUtY2hhbmdlKCkNCj4gcnVuLWhvb2tz KGZpbmQtZmlsZS1ob29rcykNCj4gYWZ0ZXItZmluZC1maWxlKG5pbCB0KQ0KPiBmaW5kLWZpbGUt bm9zZWxlY3QtMSgjPGJ1ZmZlciBhaWQuaHh4Pg0KPiAiYzovQ1hJL3NiLWRldmVsL3NyYy9od29z L2FpZC5oeHgiIG5pbCBuaWwNCj4gImM6L0NYSS9zYi1kZXZlbC9zcmMvaHdvcy9haWQuaHh4IiAo MCAoMzg5NjUgLiA0ODU4NSkpKQ0KPiBmaW5kLWZpbGUtbm9zZWxlY3QoImM6L0NYSS9zYi1kZXZl bC9zcmMvaHdvcy9haWQuaHh4IiBuaWwgbmlsIDEpDQo+IGZpbmQtZmlsZSgiYzovQ1hJL3NiLWRl dmVsL3NyYy9od29zL2FpZC5oeHgiIDEpDQo+ICogY2FsbC1pbnRlcmFjdGl2ZWx5KGZpbmQtZmls ZSkNCj4gDQo+IEVuZCBJbnNlcnQgKkJhY2t0cmFjZSogYnVmZmVyDQo+IC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IA0K |
From: David P. <dav...@wa...> - 2005-03-11 11:55:26
|
Hi, > Eric or David, i think only the Backtrace of this posting is > interesting for you...could you recognize any cedet-problem?? [...] >>----------------------------------------------------- >>The contents of the *Backtrace* buffer were >> >>Debugger entered--Lisp error: (wrong-type-argument stringp >>semanticdb-table) string-match("/" semanticdb-table 0) >>split-string(semanticdb-table "/") >>class-name(semanticdb-table) [...] It looks like the problem is in the function `class-name' which is defined like this in latest eieio.el (I checked that this definition was also used in 0.18beta2): (defun class-name (class) "Return a Lisp like symbol name for CLASS." (if (not (class-p class)) (signal 'wrong-type-argument (list 'class-p class))) ;; I think this is supposed to return a symbol, but to me CLASS is a ;; symbol, and I wanted a string. Arg! (format "#<class %s>" (symbol-name class))) What's weird is that it don't call `split-string'. The macro `class-p' don't call it either. So, IMO, there is a conflict with a `class-name' function provided by another package. Could you, please, check that, and give us a feedback? Regards David |
From: Steve K. <ste...@el...> - 2005-03-11 19:15:54
|
David PONCE wrote: >Hi, > > >>Eric or David, i think only the Backtrace of this posting is >>interesting for you...could you recognize any cedet-problem?? >> >> >[...] > > >>>----------------------------------------------------- >>>The contents of the *Backtrace* buffer were >>> >>>Debugger entered--Lisp error: (wrong-type-argument stringp >>>semanticdb-table) string-match("/" semanticdb-table 0) >>>split-string(semanticdb-table "/") >>>class-name(semanticdb-table) >>> >>> >[...] > >It looks like the problem is in the function `class-name' which is >defined like this in latest eieio.el (I checked that this definition >was also used in 0.18beta2): > >(defun class-name (class) > "Return a Lisp like symbol name for CLASS." > (if (not (class-p class)) > (signal 'wrong-type-argument (list 'class-p class))) > ;; I think this is supposed to return a symbol, but to me CLASS is a > ;; symbol, and I wanted a string. Arg! > (format "#<class %s>" (symbol-name class))) > >What's weird is that it don't call `split-string'. The macro >`class-p' don't call it either. So, IMO, there is a conflict with a >`class-name' function provided by another package. > >Could you, please, check that, and give us a feedback? > >Regards >David > describe-function class-p class-p is a Lisp macro in `eieio'. (class-p CLASS) Return t if CLASS is a valid class vector. CLASS is a symbol. Defclass will assign the class symbol to itself, so the shortcut (class-p foo) will work. The form (class-p 'foo) is more robust. locate-library eieio Library is file c:/Gnu/share/lib/emacs/site-lisp/cedet-1.0beta3b/eieio/eieio.elc Here's the culprit: describe-function class-name class-name is a compiled Lisp function in `CC'. (class-name &optional STR) Gets the classname from the given string or the current buffer name. The problem is that I have a macro package that I wrote to insert doxygen-style comments in C++ programs. Because of the flat namespace for emacs functions, my "class-name" function clashed with the one in eieio. (Imagine that!) I changed mine from class-name to cc-class-name, and the problem went away. As ugly as it is, I suggest prefixing all functions in a package with the package name. RMS & others: Is there any other way to emulate namespaces in emacs lisp packages? Thanks for your help, Steve |
From: drkm <dar...@ya...> - 2005-03-16 11:36:35
|
Steve Kelem <ste...@el...> writes: > As ugly as it is, I suggest prefixing all functions in a package with > the package name. Yes. And using aliases if it seems to be reasonable. It helps at least to resolve conflicts, if not to reduce them. --drkm |
From: Eric M. L. <er...@si...> - 2005-03-17 02:09:06
|
>>> drkm <dar...@ya...> seems to think that: >Steve Kelem <ste...@el...> writes: > >> As ugly as it is, I suggest prefixing all functions in a package with >> the package name. > > Yes. And using aliases if it seems to be reasonable. It helps at >least to resolve conflicts, if not to reduce them. [ ... ] Hi, The function "class-name" is a part of Common Lisp which is why it is unprefixed by EIEIO. Here is a reference. http://www.lispworks.com/documentation/HyperSpec/Body/f_class_.htm Eric -- Eric Ludlam: za...@gn..., er...@si... Home: http://www.ludlam.net Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net GNU: www.gnu.org |
From: drkm <dar...@ya...> - 2005-03-17 11:33:30
|
"Eric M. Ludlam" <er...@si...> writes: >>>> drkm <dar...@ya...> seems to think that: >>Steve Kelem <ste...@el...> writes: >>> As ugly as it is, I suggest prefixing all functions in a package with >>> the package name. >> Yes. And using aliases if it seems to be reasonable. It helps at >>least to resolve conflicts, if not to reduce them. > The function "class-name" is a part of Common Lisp which is why it is > unprefixed by EIEIO. Yes, I know. But Emacs Lisp is not Common Lisp. And developpers of Emacs packages does not all know Common Lisp. So what is good is Common Lisp may be not in Emacs Lisp. The case of class-name is one that seems to be reasonable. But if it was an alias of, say, eieio-class-name, it would be easier to resolve a conflict with the CC Mode's class-name, when it appears. IMHO. --drkm |