For a verilog file, the variables list parses the old (1995) style verilog module declarations. Verilog 2001 enhanced the syntax and seems to confuse Geany....
1995 syntax:
module (foo, bar, buz); input foo; // foo port output bar; // bar port output buz; // buz port reg buz; // buz variable
2001 syntax:
module ( input wire foo, // foo port is a wire output wire bar, // bar port is a wire output reg buz // buz port is a variable );
// note: the "wire" is optional and the ports could have been declared with or without
Geany variables list seems to get confused by the 2001 style. It seems to parse the wire keyword as the variable name if I keep the optional "wire" keyword: ![image](https://cloud.githubusercontent.com/assets/14856598/10121213/521dc426-64af-1...)
If I omit the "wire" keyword, Geany still gets confused, but in a different way. It seems to parse every other variable and then parse the "input" or "output" keywords as variables in some cases: ![image](https://cloud.githubusercontent.com/assets/14856598/10121233/11c50b7c-64b0-1...)
If someone who knows the code base can even point me to the module(s) doing the parsing for the variables, I may be able to help create the fix/enhancement for this. I'd be happy to try anyway. I am not familiar with the Geany code base so just getting started seems like an insurmountable task.
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/issues/670