I have a simple test application written for a PIC, It compiles just fine but when the assembler tries to use the output I get the following two errors:

obj\Release\main.asm|33|Error: <o> .org in REL area or directive / mnemonic error|
obj\Release\main.asm|33|Error: <q> missing or improper operators, terminators, or delimiters|

Here is the (very simple) program code I am using:

#define __16f628a
#include <pic/pic16f628a.h>
// Configurations
    typedef unsigned int config;
    config at 0x2007 __CONFIG = _HS_OSC & _PWRTE_ON & _BODEN_OFF & _WDT_OFF & _LVP_OFF;
// Main body
void main() {
    // Initializing ports
    PORTA = 0;
    PORTB = 0;
    // Set RA4 as input and RB3-RB0 as output
    TRISA |= 0x10;
    TRISB &= 0xF0;
    // Set value 0x0A to PORTB
    PORTB = 0x0A;
    // If button is pressed, toggle PORTB
    while(1) {
        if(RA4 != 0)
            PORTB = ~PORTB;
    }
}

My environment is as follows:
sdcc 3.0.0
CodeBlocks 10.05

on WinXP, I followed the instructions at this location:
http://wiki.codeblocks.org/index.php?title=Using_the_Code::Blocks_IDE_with_SDCC_on_PIC_MCUs

What could possibly be the problem?