]> www.ginac.de Git - ginac.git/blobdiff - ginsh/ginsh.h
[BUGFIX] Prevent crashes in find_common_factor()
[ginac.git] / ginsh / ginsh.h
index 13b658931c489d9b635a4a164fe1a57fe2eff157..973c6f0d9fb73bd1491025a6d50b2a506a11931e 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  Global definitions for ginsh.
  *
- *  GiNaC Copyright (C) 1999-2009 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2020 Johannes Gutenberg University Mainz, Germany
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
 #ifndef GINSH_H
 #define GINSH_H
 
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
 #include <map>
 #include <iostream>
 #include <string>
 
-using namespace std;
-
 #ifdef HAVE_READLINE_READLINE_H
 extern "C" {
 #include <readline/readline.h>
@@ -50,13 +47,11 @@ extern "C" {
 #include <ginac/ginac.h>
 #endif
 
-using namespace GiNaC;
-
 // yacc stack type
-#define YYSTYPE ex
+#define YYSTYPE GiNaC::ex
 
 // lex functions/variables
-extern int yyerror(char *s);
+extern int yyerror(const char *s);
 extern int yylex(void);
 extern char *yytext;
 extern FILE *yyin;
@@ -66,7 +61,7 @@ extern int num_files;
 extern char **file_list;
 
 // Table of all used symbols
-typedef map<string, ex> sym_tab;
+typedef std::map<std::string, GiNaC::ex> sym_tab;
 extern sym_tab syms;
 
 // Type of symbols to generate (real or complex)