[Cs-dev] regression bug(s) in macro/include system
Date | 2012-01-05 01:28 |
From | Iain Duncan |
Subject | [Cs-dev] regression bug(s) in macro/include system |
Attachments | None None |
It seems like maybe in recent versions of csound the macro system has changed, or some macro limits have snuck in, or something. ( NB, all tests have been using the old parser ). I was having weird macro limit issues with Csound 5.13, it was just conking out after a certain number of macro defs and refusing to accept anymore. I switched to csound 5.15.0 from the snapshot, build *without* new parser, and now am getting a different set of macro errors. I do now with absolute certainty that these files worked in 2005, with 4.13, 4.14, and 5.0. What I'm getting rid now is an undefined macro error, from an included file using the macros. Most odd is terminal output: Macro definition for X______________________________________INCLUDING_PATCH_MACROS____________________________ Macro definition for X_________________________________________LOADING_PATCH_SYSTEM_MACROS_____________________ Macro definition for INSTR_PATCH_SIZE Macro definition for MIXER_PATCH_SIZE Macro definition for INSTR_LIB_SIZE Macro definition for MIXER_LIB_SIZE Macro definition for INSTR_PATCH_BUF Macro definition for INSTR_PATCH_DATA Macro definition for INSTR_PATCH_RAMP Macro definition for INSTR_PATCH_DATA_LIB Macro definition for INSTR_PATCH_RAMP_LIB Macro definition for MIXER_PATCH_BUF Macro definition for MIXER_PATCH_DATA Macro definition for MIXER_PATCH_RAMP Macro definition for MIXER_PATCH_DATA_LIB Macro definition for MIXER_PATCH_RAMP_LIB Macro definition for X_________________________________REACHED_END_OF_PATCH_SYSTEM_MACROS____________________ score error: Undefined macro: 'INSTR_PATCH_SIZE' section 1: at position 28 Csound tidy up: Segmentation fault You can see that the macro has been defined. The including and using code looks like this:
#define X______________________________________INCLUDING_PATCH_MACROS____________________________ # 0 # #include "macros/flow01_patch_macros" f3001 0 $INSTR_PATCH_SIZE -2 0 f3002 0 $INSTR_PATCH_SIZE -2 0 f3003 0 $INSTR_PATCH_SIZE -2 0 f3004 0 $INSTR_PATCH_SIZE -2 0 .... The error goes away if I insert the macro def for INSTR_PATCH_SIZE right into this file. ( but of course chockes on the next one.) FWIW, the file quoted is not the top level score file, but is in turn included from the top level score file.
Anyone have any idea what's up with the macro system? thanks Iain |
Date | 2012-01-05 09:39 |
From | Victor Lazzarini |
Subject | Re: [Cs-dev] regression bug(s) in macro/include system |
Note that 5.0 was pre-release then, so it does not count (we first released csound5 in 2006). But if this worked on 4, then backwards compatibility kicks in. Can you prepare a minimal CSD demonstrating the issue? We will then try to fix this. Victor On 5 Jan 2012, at 01:28, Iain Duncan wrote: > It seems like maybe in recent versions of csound the macro system has changed, or some macro limits have snuck in, or something. ( NB, all tests have been using the old parser ). I was having weird macro limit issues with Csound 5.13, it was just conking out after a certain number of macro defs and refusing to accept anymore. I switched to csound 5.15.0 from the snapshot, build *without* new parser, and now am getting a different set of macro errors. I do now with absolute certainty that these files worked in 2005, with 4.13, 4.14, and 5.0. > > What I'm getting rid now is an undefined macro error, from an included file using the macros. Most odd is terminal output: > > Macro definition for X______________________________________INCLUDING_PATCH_MACROS____________________________ > Macro definition for X_________________________________________LOADING_PATCH_SYSTEM_MACROS_____________________ > Macro definition for INSTR_PATCH_SIZE > Macro definition for MIXER_PATCH_SIZE > Macro definition for INSTR_LIB_SIZE > Macro definition for MIXER_LIB_SIZE > Macro definition for INSTR_PATCH_BUF > Macro definition for INSTR_PATCH_DATA > Macro definition for INSTR_PATCH_RAMP > Macro definition for INSTR_PATCH_DATA_LIB > Macro definition for INSTR_PATCH_RAMP_LIB > Macro definition for MIXER_PATCH_BUF > Macro definition for MIXER_PATCH_DATA > Macro definition for MIXER_PATCH_RAMP > Macro definition for MIXER_PATCH_DATA_LIB > Macro definition for MIXER_PATCH_RAMP_LIB > Macro definition for X_________________________________REACHED_END_OF_PATCH_SYSTEM_MACROS____________________ > score error: Undefined macro: 'INSTR_PATCH_SIZE' > section 1: at position 28 > Csound tidy up: Segmentation fault > > > You can see that the macro has been defined. The including and using code looks like this: > > #define X______________________________________INCLUDING_PATCH_MACROS____________________________ # 0 # > #include "macros/flow01_patch_macros" > > f3001 0 $INSTR_PATCH_SIZE -2 0 > f3002 0 $INSTR_PATCH_SIZE -2 0 > f3003 0 $INSTR_PATCH_SIZE -2 0 > f3004 0 $INSTR_PATCH_SIZE -2 0 > .... > > The error goes away if I insert the macro def for INSTR_PATCH_SIZE right into this file. ( but of course chockes on the next one.) FWIW, the file quoted is not the top level score file, but is in turn included from the top level score file. > > Anyone have any idea what's up with the macro system? > > thanks > Iain > > ------------------------------------------------------------------------------ > Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex > infrastructure or vast IT resources to deliver seamless, secure access to > virtual desktops. With this all-in-one solution, easily deploy virtual > desktops for less than the cost of PCs and save 60% on VDI infrastructure > costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox_______________________________________________ > Csound-devel mailing list > Csound-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/csound-devel Dr Victor Lazzarini Senior Lecturer Dept. of Music NUI Maynooth Ireland tel.: +353 1 708 3545 Victor dot Lazzarini AT nuim dot ie ------------------------------------------------------------------------------ Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex infrastructure or vast IT resources to deliver seamless, secure access to virtual desktops. With this all-in-one solution, easily deploy virtual desktops for less than the cost of PCs and save 60% on VDI infrastructure costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net |
Date | 2012-01-05 11:02 |
From | Tito Latini |
Subject | Re: [Cs-dev] regression bug(s) in macro/include system |
Attachments | None |
Date | 2012-01-05 12:53 |
From | Tito Latini |
Subject | Re: [Cs-dev] regression bug(s) in macro/include system |
Attachments | None |