示例#1
0
void autoRedMiddleZone(void)
	{
	autoResetStart(false);
	//  Left Right Strafe Lift       Intake Type       Target
	auto(FWD, FWD, OFF, L_GRND, IN,  TIME,		3000); //Intake + Drive
	auto(FWD, FWD, OFF, OFF,           OFF, DRIV_READY,	1400); //Drive
	auto(FWD, REV, OFF, L_STSH, OUT, DRIV_READY,	900);  //Lift, Turn, + Outtake
	autoResetEnd();
	}
示例#2
0
void f() {
  if (auto a = true) {
  }

  switch (auto a = 0) {
  }

  while (auto a = false) {
  }

  for (; auto a = false; ) {
  }

  new const auto (0);
  new (auto) (0.0);

#if 0
  // When clang supports for-range:
  for (auto i : {1,2,3}) {
  }

  // When clang supports inline initialization of members.
  class X {
    static const auto &n = 'x';
  };
#endif
}
 void h() {
   auto p = f<int>;
   auto (*q)() = f<int>;
   int (*r)() = f; // expected-error {{does not match}}
   g(f<int>);
   g<int>(f); // expected-error {{no matching function}}
   g(f); // expected-error {{no matching function}}
 }
示例#4
0
void scriptHang()
	{
	autoResetStart(0, SCRIPT, true, true, false);
		//L,	R,		S,		Lift,	Intk,Cata,Tranny,End Type,	Other
	//auto(straight(HALF),0,	lPreAdd(STS,150),0,0,0,	TIME_LIMIT,	100);	//Drive into bar
	//auto(straight(REV),	0,	lPre(GND),	0,	0,	1,	TIME_LIMIT,	5000);	//Hang
	//auto(straight(REV),	0,	0,			0,	0,	1,	TIME_LIMIT,	5000);	//Hang
	auto(enc1(-2400),	0,		lPre(BAR),	0,	0,	1,	TIME_LIMIT,	5000);	//Hang
	autoResetEnd();
	}
int main() {
{
  auto L = []<int N>(auto (&ta)[N]) { return ta[0]; };
  int arr[]{1, 2, 3};
  //CHECK: L(arr) = 1
  printf("L(arr) = %d\n", L(arr));
  
}

}
示例#6
0
文件: auto9.C 项目: 0day-ci/gcc
void
foo ()
{
  __extension__ (auto) { 0 };			// { dg-error "auto" }
  C<int> c;
  dynamic_cast<auto> (c);			// { dg-error "auto" }
  reinterpret_cast<auto> (c);			// { dg-error "auto" }
  int i = auto (0);				// { dg-error "auto" }
  auto p1 = new (auto);				// { dg-error "auto" }
  auto p2 = new (auto) (42);			// { dg-error "invalid use of|deduce" }
  offsetof (auto, fld);				// { dg-error "auto" }
  offsetof (auto *, fld);			// { dg-error "auto" }
  sizeof (auto);				// { dg-error "auto" }
  sizeof (auto *);				// { dg-error "auto" }
}
int main()
{
  auto i = 42;
  if (typeid (i) != typeid (int))
    abort();

  auto *p = &i;
  if (typeid (p) != typeid (int*))
    abort();

  auto *p2 = &p;
  if (typeid (p2) != typeid (int**))
    abort();

  auto (*fp)() = f;
  if (typeid (fp) != typeid (int (*)()))
    abort();

  auto A::* pm = &A::i;
  if (typeid (pm) != typeid (int A::*))
    abort();

  auto (A::*pmf)() = &A::f;
  if (typeid (pmf) != typeid (int (A::*)()))
    abort();

  g(42);
  g(10.f);
  g(A());

  auto *p3 = new auto (i);
  if (typeid (p3) != typeid (int*))
    abort();

  for (auto idx = i; idx != 0; idx = 0);
  while (auto idx = 0);
  if (auto idx = 1);

  switch (auto s = i)
    {
    case 42:
      break;
    }

  auto j = 42, k = 24;
}
示例#8
0
void f() {
  if (auto a = true) {
  }

  switch (auto a = 0) {
  }

  while (auto a = false) {
  }

  for (; auto a = false; ) {
  }

  new const auto (0);
  new (auto) (0.0);

  int arr[] = {1, 2, 3};
  for (auto i : arr) {
  }
}
示例#9
0
task autonomous() {
	bool runningAuto = true;
	while (runningAuto) { //Weird as it looks; this loop must exist for the autonomous to work.
		startAuto();
		//___Drive_L&R________Strafe___Lift_L&R______Intake___End_Type_____Time_____Notes
		auto(straight(FWD),   0,       stopped(),    FWD,     TIME_LIMIT,  1000); //Forward
		auto(straight(REV),   0,       stopped(),    0,       TIME_LIMIT,  1000); //Reversed
		auto(stopped(),       LEFT,    straight(60), 0,       TIME_LIMIT,  1000); //Turn left with left wheels
		auto(turn(-64),      0,       stopped(),    0,       TIME_LIMIT,  1000); //Zero-turn half speed
		auto(straight(BRAKE), 0,       stopped(),    0,       TIME_LIMIT,  200);  //Brake
		auto(straight(-BRAKE),0,       stopped(),    0,       TIME_LIMIT,  200);  //Brake
		runningAuto = endAuto();
		constantLoopTime(); //Important for slew
	}
}
task main()
	{
	initialize(N_EAST); //Which way does the robot start pointing?
	autoReset(0); // 0 = Start, 1 = Finish
	//	TYPE,	Left,	Right,	Other,	End Type,	Delay
	auto(CMP_2,	RHT_45,	FULL,	LOW_SH,	DRIV_READY,	PID);	//Turn toward S dispenser
	auto(STR,	EAST,	11300,	LOW_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	LFT_90,	FULL,	LOW_SH,	DRIV_READY,	PID);	//Turn to hooks
	auto(STR,	NORTH,	9150,	HIG_SH,	DRIV_READY,	NEXT);	//Forward - High
	auto(STR,	NORTH,	-7200,	HIG_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	NORTH,	7200,	MED_SH,	DRIV_READY,	NEXT);	//Forward - Med
	auto(STR,	NORTH,	-7200,	MED_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	NORTH,	7150,	LOW_SH,	DRIV_READY,	NEXT);	//Forward - Low
	auto(STR,	NORTH,	-1000,	LOW_OP,	DRIV_READY,	NEXT);	//Backward

	auto(CMP_2,	1350,	FULL,	LOW_LV,	DRIV_READY,	PID);	//Turn to get around pole
	auto(STR,	S_EAST,	-5000,	LOW_LV,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	RHT_90,	FULL,	LOW_LV,	DRIV_READY,	PID);	//Turn to get around pole
	auto(STR,	S_WEST,	-2300,	LOW_LV,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	LFT_45,	FULL,	LOW_LV,	DRIV_READY,	PID);	//Align with S wall

	auto(STR,	SOUTH,	-7300,	LOW_LV,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	SOUTH,	7400,	HIG_SH,	DRIV_READY,	NEXT);	//Forward - High
	auto(STR,	SOUTH,	-7500,	HIG_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	SOUTH,	7100,	MED_SH,	DRIV_READY,	NEXT);	//Forward - Med
	auto(STR,	SOUTH,	-7300,	MED_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	SOUTH,	7200,	LOW_SH,	DRIV_READY,	NEXT);	//Forward - Low
	auto(STR,	SOUTH,	-7900,	LOW_OP,	DRIV_READY,	NEXT);	//Backward

	auto(CMP_2,	RHT_90,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn toward corner hook
	auto(STR,	3600,	9500,	CRN_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	RHT_45,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn into corner hook
	auto(CMP_2,	-1350,	FULL,	LOW_OP,	DRIV_READY,	PID);	//Turn away from corner hook

	auto(STR,	SOUTH,	9800,	DRP_OP,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	-250,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	2450,	9000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	^
	auto(STR,	2450,	-9000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	250,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	SOUTH,	4000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	>
	auto(STR,	SOUTH,	-5000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	LFT_45,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	S_EAST,	8500,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	<
	auto(STR,	S_EAST,	-8500,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	S_EAST,	3000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	v
	auto(STR,	S_EAST,	-3000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	LFT_45,	FULL,	DRP_OP,	DRIV_READY,	PID);	//Turn toward E dispenser

	auto(STR,	EAST,	10000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward across field
	auto(STR,	EAST,	10000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward across field
	auto(CMP_2,	-1150,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	650,	7000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	^
	auto(STR,	650,	-7000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	250,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	NORTH,	3000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	>
	auto(STR,	NORTH,	-5000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	LFT_45,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	N_WEST,	7000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	<
	auto(STR,	N_WEST,	-7000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	N_WEST,	3000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	v
	auto(STR,	N_WEST,	-3000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward

	auto(CMP_2,	RHT_90,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn
	auto(STR,	N_EAST,	-12800,	CRN_SH,	DRIV_READY,	NEXT);	//Backward to last dispenser
	auto(CMP_2,	RHT_45,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn toward corner hook
	auto(STR,	EAST,	9200,	CRN_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	RHT_45,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn into corner hook
	auto(STR,	S_EAST,	-850,	CRN_OP,	DRIV_READY,	300);	//Let go

	autoReset(1);
	while(1==1)
		{zeroMotors();
		output();}
	}
int f(); // expected-error {{differ only in their return type}}

auto &g();
auto g() -> auto &;

auto h() -> auto *;
auto *h();

struct Conv1 {
  operator auto(); // expected-note {{declared here}}
} conv1;
int conv1a = conv1; // expected-error {{function 'operator auto' with deduced return type cannot be used before it is defined}}
// expected-error@-1 {{no viable conversion}}
Conv1::operator auto() { return 123; }
int conv1b = conv1;
int conv1c = conv1.operator auto();
int conv1d = conv1.operator int(); // expected-error {{no member named 'operator int'}}

struct Conv2 {
  operator auto() { return 0; }  // expected-note {{previous}}
  operator auto() { return 0.; } // expected-error {{cannot be redeclared}} expected-error {{cannot initialize return object of type 'auto' with an rvalue of type 'double'}}
};

struct Conv3 {
  operator auto() { int *p = nullptr; return p; }  // expected-note {{candidate}}
  operator auto*() { int *p = nullptr; return p; } // expected-note {{candidate}}
} conv3;
int *conv3a = conv3; // expected-error {{ambiguous}}
int *conv3b = conv3.operator auto();
int *conv3c = conv3.operator auto*();
示例#12
0
文件: auto25.C 项目: 0day-ci/gcc
template<int> void foo()
{
  int a[auto(1)]; // { dg-error "invalid use of" }
}
示例#13
0
文件: main.cpp 项目: CCJY/coliru
int main()
{
    A().operator auto();
}
task main()
	{
	initialize(N_EAST); //Which way does the robot start pointing?
	autoReset(START);
	//	TYPE,	Left,	Right,	Other,	End Type,	Delay
	auto(CMP_2,	RHT_45,	FULL,	LOW_SH,	DRIV_READY,	PID);	//Turn toward S dispenser
	auto(STR,	EAST,	11300,	LOW_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	LFT_90,	FULL,	LOW_SH,	DRIV_READY,	PID);	//Turn to SE hooks
	auto(STR,	NORTH,	9150,	HIG_SH,	DRIV_READY,	NEXT);	//Forward - High
	auto(STR,	NORTH,	-7200,	HIG_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	NORTH,	7200,	MED_SH,	DRIV_READY,	NEXT);	//Forward - Med
	auto(STR,	NORTH,	-7200,	MED_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	NORTH,	7150,	LOW_SH,	DRIV_READY,	NEXT);	//Forward - Low
	auto(STR,	NORTH,	-7200,	LOW_OP,	DRIV_READY,	NEXT);	//Backward

	auto(CMP_2,	RHT_90,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn toward corner hook
	auto(STR,	EAST,	8100,	CRN_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	RHT_45,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn into corner hook
	auto(STR,	S_EAST,	1600,	CRN_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	-1350,	FULL,	CRN_OP,	DRIV_READY,	PID);	//Turn toward E dispenser

	auto(STR,	NORTH,	10400,	DRP_SH,	DRIV_READY,	NEXT);	//Forward - E dispenser to 4 tiles
	auto(CMP_2,	-250,	FULL,	DRP_OP,	DRIV_READY,	PID);	//Turn
	auto(STR,	650,	8000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	N Tile
	auto(STR,	650,	-4000,	DRP_SH,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	650,	-4000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	-200,	FULL,	DRP_OP,	DRIV_READY,	PID);	//Turn
	auto(STR,	N_WEST,	8300,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	W Tile
	auto(STR,	N_WEST,	-3300,	DRP_SH,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	1350,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn - Straight back
	auto(STR,	EAST,	-2200,	DRP_SH,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	RHT_45,	FULL,	DRP_OP,	DRIV_READY,	PID);	//Turn - 45 curve
	auto(STR,	S_EAST,	-6620,	DRP_SH,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	RHT_45,	FULL,	DRP_SH,	DRIV_READY,	PID);	//Turn - Align

	auto(STR,	SOUTH,	-2420,	LOW_LV,	DRIV_READY,	NEXT);	//Backward - N dispenser to NW hooks
	auto(STR,	SOUTH,	7900,	HIG_SH,	DRIV_READY,	NEXT);	//Forward - High
	auto(STR,	SOUTH,	-7800,	HIG_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	SOUTH,	7400,	MED_SH,	DRIV_READY,	NEXT);	//Forward - Med
	auto(STR,	SOUTH,	-7600,	MED_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	SOUTH,	7500,	LOW_SH,	DRIV_READY,	NEXT);	//Forward - Low
	auto(STR,	SOUTH,	-7500,	LOW_OP,	DRIV_READY,	NEXT);	//Backward

	auto(CMP_2,	RHT_90,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn toward corner hook
	auto(STR,	3600,	8850,	CRN_SH,	DRIV_READY,	NEXT);	//Forward
	auto(CMP_2,	RHT_45,	FULL,	CRN_SH,	DRIV_READY,	PID);	//Turn into corner hook
	auto(STR,	4050,	1000,	CRN_SH,	DRIV_READY,	NEXT);	//Let go
	auto(CMP_2,	-1350,	FULL,	CRN_OP,	DRIV_READY,	NEXT);	//Turn toward W dispenser

	auto(STR,	SOUTH,	10400,	DRP_SH,	DRIV_READY,	NEXT);	//Forward - E dispenser to 4 tiles
	auto(CMP_2,	-250,	FULL,	DRP_OP,	DRIV_READY,	NEXT);	//Turn
	auto(STR,	2450,	8000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	N Tile
	auto(STR,	2450,	-4000,	DRP_SH,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	2450,	-4000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	250,	FULL,	DRP_SH,	DRIV_READY,	NEXT);	//Turn
	auto(STR,	SOUTH,	3000,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	E Tile
	auto(STR,	SOUTH,	-4000,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(CMP_2,	LFT_45,	FULL,	DRP_SH,	DRIV_READY,	NEXT);	//Turn
	auto(STR,	S_EAST,	8300,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	W Tile
	auto(STR,	S_EAST,	-8300,	DRP_OP,	DRIV_READY,	NEXT);	//Backward
	auto(STR,	S_EAST,	2200,	DRP_SH,	DRIV_READY,	NEXT);	//Forward -	S Tile
	auto(STR,	S_EAST,	-200,	DRP_OP,	DRIV_READY,	NEXT);	//Backward

	autoReset(FINISH);
	while(1==1)
		{zeroMotors();
		output();
		wait1Msec(10);}
	}