Add missing permission notice in each source file
[babeltrace.git] / formats / ctf / metadata / ctf-lexer.l
index 07362fc9224513d842fcd0f53bdf8966251fd15b..26aa1bce2322d2571a9b57b24d614484009e3cdc 100644 (file)
  *
  * The above copyright notice and this permission notice shall be included in
  * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
  */
 
 #include <stdio.h>
+#include <babeltrace/babeltrace-internal.h>
 #include "ctf-scanner.h"
 #include "ctf-parser.h"
 #include "ctf-ast.h"
 
-extern void setstring(struct ctf_scanner *scanner, YYSTYPE *lvalp, const char *src);
+__attribute__((visibility("hidden")))
+void setstring(struct ctf_scanner *scanner, YYSTYPE *lvalp, const char *src);
 
-#define printf_dbg(fmt, args...)       fprintf(stderr, "%s: " fmt, __func__, args)
-#define printf_dbg_noarg(fmt)  fprintf(stderr, "%s: " fmt, __func__)
+static void yyunput (int c, register char * yy_bp , yyscan_t yyscanner)
+       __attribute__((unused));
+static int input (yyscan_t yyscanner) __attribute__((unused));
 
 %}
 
@@ -69,7 +80,7 @@ L\"                           BEGIN(string_lit); return STRING_LITERAL_START;
 
 <char_const,string_lit>ESCSEQ  return ESCSEQ;
 <char_const,string_lit>\n      ; /* ignore */
-<char_const,string_lit>.       return CHAR_STRING_TOKEN;
+<char_const,string_lit>.       setstring(yyextra, yylval, yytext); return CHAR_STRING_TOKEN;
 
 "["                            return LSBRAC;
 "]"                            return RSBRAC;
@@ -90,34 +101,38 @@ L\"                                BEGIN(string_lit); return STRING_LITERAL_START;
 "."                            return DOT;
 =                              return EQUAL;
 ","                            return COMMA;
-const                          return CONST;
-char                           return CHAR;
-double                         return DOUBLE;
-enum                           return ENUM;
-event                          return EVENT;
-floating_point                 return FLOATING_POINT;
-float                          return FLOAT;
-integer                                return INTEGER;
-int                            return INT;
-long                           return LONG;
-short                          return SHORT;
-signed                         return SIGNED;
-stream                         return STREAM;
-string                         return STRING;
-struct                         return STRUCT;
-trace                          return TRACE;
-typealias                      return TYPEALIAS;
-typedef                                return TYPEDEF;
-unsigned                       return UNSIGNED;
-variant                                return VARIANT;
-void                           return VOID;
-_Bool                          return _BOOL;
-_Complex                       return _COMPLEX;
-_Imaginary                     return _IMAGINARY;
-[1-9]{DIGIT}*{INTEGER_SUFFIX}? return DECIMAL_CONSTANT;
-0{OCTALDIGIT}*{INTEGER_SUFFIX}?        return OCTAL_CONSTANT;
-0[xX]{HEXDIGIT}+{INTEGER_SUFFIX}?      return HEXADECIMAL_CONSTANT;
-{IDENTIFIER}                   printf_dbg("<IDENTIFIER %s>\n", yytext); setstring(yyextra, yylval, yytext); if (is_type(yyextra, yytext)) return ID_TYPE; else return IDENTIFIER;
+align                          setstring(yyextra, yylval, yytext); return TOK_ALIGN;
+const                          setstring(yyextra, yylval, yytext); return CONST;
+char                           setstring(yyextra, yylval, yytext); return CHAR;
+clock                          setstring(yyextra, yylval, yytext); return CLOCK;
+double                         setstring(yyextra, yylval, yytext); return DOUBLE;
+enum                           setstring(yyextra, yylval, yytext); return ENUM;
+env                            setstring(yyextra, yylval, yytext); return ENV;
+event                          setstring(yyextra, yylval, yytext); return EVENT;
+floating_point                 setstring(yyextra, yylval, yytext); return FLOATING_POINT;
+float                          setstring(yyextra, yylval, yytext); return FLOAT;
+integer                                setstring(yyextra, yylval, yytext); return INTEGER;
+int                            setstring(yyextra, yylval, yytext); return INT;
+long                           setstring(yyextra, yylval, yytext); return LONG;
+short                          setstring(yyextra, yylval, yytext); return SHORT;
+signed                         setstring(yyextra, yylval, yytext); return SIGNED;
+stream                         setstring(yyextra, yylval, yytext); return STREAM;
+string                         setstring(yyextra, yylval, yytext); return STRING;
+struct                         setstring(yyextra, yylval, yytext); return STRUCT;
+trace                          setstring(yyextra, yylval, yytext); return TRACE;
+callsite                       setstring(yyextra, yylval, yytext); return CALLSITE;
+typealias                      setstring(yyextra, yylval, yytext); return TYPEALIAS;
+typedef                                setstring(yyextra, yylval, yytext); return TYPEDEF;
+unsigned                       setstring(yyextra, yylval, yytext); return UNSIGNED;
+variant                                setstring(yyextra, yylval, yytext); return VARIANT;
+void                           setstring(yyextra, yylval, yytext); return VOID;
+_Bool                          setstring(yyextra, yylval, yytext); return _BOOL;
+_Complex                       setstring(yyextra, yylval, yytext); return _COMPLEX;
+_Imaginary                     setstring(yyextra, yylval, yytext); return _IMAGINARY;
+[1-9]{DIGIT}*{INTEGER_SUFFIX}? setstring(yyextra, yylval, yytext); return DECIMAL_CONSTANT;
+0{OCTALDIGIT}*{INTEGER_SUFFIX}?        setstring(yyextra, yylval, yytext); return OCTAL_CONSTANT;
+0[xX]{HEXDIGIT}+{INTEGER_SUFFIX}?      setstring(yyextra, yylval, yytext); return HEXADECIMAL_CONSTANT;
+{IDENTIFIER}                   printf_debug("<IDENTIFIER %s>\n", yytext); setstring(yyextra, yylval, yytext); if (is_type(yyextra, yytext)) return ID_TYPE; else return IDENTIFIER;
 [ \t\n]+                       ; /* ignore */
 .                              return ERROR;
 %%
This page took 0.0241 seconds and 4 git commands to generate.