Dear everyone,

I've been asked to write a snippet of software in a mixture of Borland
Pascal 7 for DOS, and assembler (NASM).
The technicalities of linking, memory model, function call conventions
etc are all clear and it actually works... but I have a tiny problem
with vim:

Whenever I make a syntax error in C, C++ or ASM (NASM), upon :make,
vim reliably jumps to the line where the error was reported.
But in Pascal (compiler = BPC.EXE), it does detect *and apparently
also parse* the error response just fine, but does not jump to the
file/buffer & line reported. All it does is: it reports the error
message, it opens a new empty buffer/file called Error and jumps to
that. Such as, if I deliberately make a typo (add garbage, such as
"urgh") at line 1 of a pre-existing and valid Pascal source file, the
Borland Pascal compiler returns the following error message:

TEST.PAS(1): Error 36: BEGIN expected.
urgh

This is what I see if I run make manually from within the Windows
command line (cmd.exe).
VIM says just

"Error" [new file]
(3/5): BEGIN expected.

And jumps to the buffer named Error, which is empty.

I've first tried weaving my own errorformat string and prepend/append/
replace the built-in default, but it made no difference (if my format
string was correct) - apparently VIM contains some defaults that match
just fine. Note that the error output from the compiler contains a
file name %f, a line number (%l), a syntax error code %l and the
verbose message %m. And VIM only shows me %m, which means that it has
actually parsed the error response...

If I try a :cc, VIM jumps to the empty buffer called Error (regardless
of where I go using :b ahead of trying :cc).
If I try a :ll, it says E776: no location list.

Any ideas are welcome...
Is there a way to debug quickfix or anything else implied in the
"jumping" ?

Frank Rysanek

-- 
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Reply via email to