#include "stdio.h"
#include "regex.h"
#include "stdlib.h"
#include "stdint.h"
#include "soft/exception.h"
#include "soft/mythread.h"
#include "unistd.h"
#include "soft/debug.h"
#include "string.h"
#include "soft/clexical.h"




const char g_str[] =
"int main() {\n"
"  int index=-1000;\n"
"  while(index--){\n"
"    printf(index>=0);\n"
"  }\n"
"}";




__attribute__((weak)) int thread_fun(void* t) {
  DBG_LOG("run in default thread_fun.\n");
  // lex_analysis(g_str , strlen(g_str));

  return 0;
}

int g_argc;
char** g_argv;

void set_argv(int argc, char* argv[]) {
  g_argc = argc;
  g_argv = argv;
}

int get_argv(char** argv[]) {
  *argv = (g_argv);
  return g_argc;
}

void SystemInit();
extern char **environ;
int main(int argc, char* argv[]) {
  set_argv(argc, argv);
  debug_init(NULL);
  DBG_INFO("hello world.%ld\n", (size_t)pthread_self());


  myth_create(thread_fun, NULL,"main_thread");

  myth_join();
}





