getting the error expected initializer before 'void' in my void loop line

i am getting the error expected initializer before ‘void’ in my void loop line in the following code… please help me solve this problem its for a big school project and i just cant figure out why i get this while compiling

void Drive (void);
void Reverse (void);
void Left (void);
void Right (void);
void Stop (void);

volatile int irval1;       // variable to store the values genetated by IR_SENSOR_MODULES attached to the AGV
volatile int irval2;
volatile int irval3;

#include <Servo.h>

Servo stear
//lijn volg systeem

  
#define MotorSpeed 2;       //geef de pin(2, ,3, 4 een naam(MotorSpeed, MotorDirection, stear)
#define MotorDirection 3;
#define stear 4;

#define ir1 A1;            //geef de pin(A1, A2, A3) een naam(ir1, ir2, ir3)
#define ir2 A2;
#define ir3 A3;

#define threshold 500;      //threshold value to differenciate between black line and other part of the surface
                          // Value threshold should be changed accordingly depending on the track.

//motor aanstuur systeem


void setup(){
 // put your setup code here, to run once:
 pinMode(drive ,OUTPUT); // sets the value  on register so that GPIO acts as output pin
 pinMode(MotorSpeed, OUTPUT);
 pinMode(MotorDirection, OUTPUT);

 pinMode(ir1 , INPUT); // set the value of the register so that the GPIO acts as input pin
 pinMode(ir2 , INPUT);
 pinMode(ir3 , INPUT);

IRval1 = analogRead(ir1 ); // reads the value and stores in volatile int Variable 
IRval2 = analogRead(ir2 );
IRval3 = analogRead(ir3 ); 

 pinMode(MotorSpeed, OUTPUT);    //sets both to outputs
 pinMode(MotorDirection, OUTPUT);

 Serial.begin(9600);         //Sets the data rate in bits per second (baud) for serial data transmission
}


void loop(){
 // put your main code here, to run repeatedly:
 if ( ir1 < threshold && ir2 > threshold && ir3 < threshold  )
 {
   void Drive (void)
   }
 else if ( ir1 < threshold && ir2 < threshold && ir3 > threshold  )
 {
   void Right()
   }
 else if ( ir1 > threshold && ir2 < threshold && ir3 < threshold  )
 {
   void Left (void)
   }
 else if ( ir1 > threshold && ir2 > threshold && ir3 > threshold  )
 {
   void Reverse (void)
   }

 else if ( ir1 < threshold && ir2 < threshold && ir3 < threshold  )
 {
   void Stop (void)
   }



void Drive (void){
digitalWrite(MotorDirection, HIGH);
for(int motorValue = 0 ; motorValue <= 255; motorValue +=10){
analogWrite(MotorSpeed, motorValue); 
delay(100); 
}
digitalWrite(motorSpeed, 255);
}

}
#include <Servo.h>

Servo stear
//lijn volg systeem

You ARE missing a semicolon.

thank you so much but now i get the next error: variable or field ‘Drive’ declared void in

void Drive {
 digitalWrite(MotorDirection, HIGH);
 for(int motorValue = 0 ; motorValue <= 255; motorValue +=10){
 analogWrite(MotorSpeed, motorValue); 
 delay(100); 
 }
 digitalWrite(motorSpeed, 255);
}

ALL functions need () when implemented, even if the function takes no arguments.

yeah but then it says: a function-defenition is not allowed before '{' token

nickalders1: yeah but then it says: a function-defenition is not allowed before '{' token [code]

It would be far simpler to copy and paste the actually error.

We can't see what changes you have made to your code.

It would be far better if you put EVERY { on a line BY ITSELF. It would be far better if you put EVERY } on a line BY ITSELF. It would be far better if you used Tools + Auto Format.

You would then likely see that you have a function defined inside of another function, which is not allowed.

this was exactly the problem i had to move my } to end my void loop and then start the Drive void it works now much thanks for the help :D