diff options
| author | Clifford Wolf <clifford@clifford.at> | 2014-08-14 22:26:30 +0200 | 
|---|---|---|
| committer | Clifford Wolf <clifford@clifford.at> | 2014-08-14 22:26:30 +0200 | 
| commit | 6d56172c0d16f80742c1c4588929d1805e3dd650 (patch) | |
| tree | b59b06a6a3aee1841c6d083a23239b5e9ec81f28 /frontends/verilog/preproc.cc | |
| parent | 85e3cc12ac44c44178185b918aa2a7fe9ca89918 (diff) | |
| download | yosys-6d56172c0d16f80742c1c4588929d1805e3dd650.tar.gz yosys-6d56172c0d16f80742c1c4588929d1805e3dd650.tar.bz2 yosys-6d56172c0d16f80742c1c4588929d1805e3dd650.zip  | |
Fixed line numbers when using here-doc macros
Diffstat (limited to 'frontends/verilog/preproc.cc')
| -rw-r--r-- | frontends/verilog/preproc.cc | 13 | 
1 files changed, 9 insertions, 4 deletions
diff --git a/frontends/verilog/preproc.cc b/frontends/verilog/preproc.cc index 7935fbc34..ae139741a 100644 --- a/frontends/verilog/preproc.cc +++ b/frontends/verilog/preproc.cc @@ -343,10 +343,15 @@ std::string frontend_verilog_preproc(FILE *f, std::string filename, const std::m  				} else {  					if (state != 2)  						state = 3; -					if (tok == "\n" && !here_doc_mode) { -						return_char('\n'); -						break; -					} +					if (tok == "\n") { +						if (here_doc_mode) { +							value += " "; +							newline_count++; +						} else { +							return_char('\n'); +							break; +						} +					} else  					if (tok == "\\") {  						char ch = next_char();  						if (ch == '\n') {  | 
