Compiler Error – Identifier undefined-Collection of common programming errors

I have a fairly simple C++ code that doesn’t seem to be compiling properly. Essentially, I have some globally defined functions declared in my GLOBAL.HPP file, and are defined in my GLOBAL.CPP file. Then I have a class, EuroOption, that consists of a struct datamember. The class EuroOption has its own member functions that essentially do the same exact thing that the global functions do–so I defined them similarly, and just called global functions inside of the EuroOption member function definitions. Please see below:

//
//GLOBAL.HPP
//

#ifndef GLOBAL_HPP
#define GLOBAL_HPP

#include 
#include 
#include 
#include  // For non-member functions of distributions

using namespace std;
//using namespace boost::math;


namespace GLOBAL // Encapsulate Point in the Global namespace
{


struct EuroOptionData
{
    double r;       // Interest rate
    double sig;     // Volatility
    double K;       // Strike price
    double T;       // Expiry date
    double b;       // Cost of carry
};

double n(double x);
double N(double x);
double CallPrice(EuroOptionData od, double S);
double PutPrice(EuroOptionData od, double S);
double PutParity(EuroOptionData od, double S);
double CallParity (EuroOptionData od, double S);


} // Close namespace GLOBAL

#endif

Here is the EuroOption.HPP file:

//
//
//

#ifndef EUROOPTION_HPP
#define EUROOPTION_HPP


#include 
#include "Global.hpp"

using namespace std;
using namespace GLOBAL;

class EuroOption
{
private:        

public:
    struct EuroOptionData od;


    //EuroOption class functions
    EuroOption();                               // Default     call option
    EuroOption(const EuroOption& option2);      // Copy constructor
    virtual ~EuroOption();                      //Destructor

    //EuroOption Global Function Calls
    double EuroCallPrice(EuroOptionData od, double S);
    double EuroPutPrice(EuroOptionData od, double S);
    double EuroCallParity(EuroOptionData od, double S);
    double EuroPutParity(EuroOptionData od, double S);

    //EuroOption class operators
    EuroOption& operator = (const EuroOption& option2); //Assignment Operator

 };

#endif

And a snippet of the EuroOption.CPP file:

//
//
//

#include "EuroOption.hpp"
#include 
#include 

using namespace GLOBAL;
{

double EuroOption::EuroCallPrice(EuroOptionData od, double S)
{
    return CallPrice(od,S);
};

double EuroOption::EuroPutPrice(EuroOptionData od, double S)
{
    return CallPrice(od,S);
};

.....
...
}

And finally, a snippet of my Test.CPP file where I test functionality:

//
//
//

#include "Global.hpp"
#include "EuroOption.hpp"
#include 

using namespace GLOBAL;

int main()
{
EuroOption Batch1;      //Initialize EuroOption class object Batch1

    cout > S1;
    cout

Originally posted 2013-11-09 22:48:31.