The with-c-syntax Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The with-c-syntax Reference Manual

This is the with-c-syntax Reference Manual, generated automatically by Declt version 2.3 "Robert April" on Wed Mar 14 04:44:50 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

# -*- mode: org -*-

* 概要
*with-c-syntax* は、 Common Lisp に C 言語の記法を持ち込む一発ネタのパッ
ケージです。全くもって真面目な用途は想定していません。

現在、 C プリプロセッサを除く、 ISO C 90 の freestanding 環境に相当す
る全ての機能を使用できます。

* Abstract
*with-c-syntax* is a fun package which introduces the C language
syntax into Common Lisp. (Yes, this package is not for practical
coding, I think.)

At this stage, this package has almost all features of ISO C 90
freestanding implementation. (The lacking part is the full
implementation of the C Preprocessor.)

* Loading
** Libraries depending on
- asdf
- cl-yacc
- alexandria

** Load with ASDF
#+BEGIN_SRC lisp
(load "with-c-syntax.asd")

(asdf:load-system :with-c-syntax)
#+END_SRC

** Running tests
#+BEGIN_SRC lisp
(asdf:test-system :with-c-syntax)
#+END_SRC

* Examples
** Hello World
#+BEGIN_SRC lisp
  CL-USER> (with-c-syntax:use-reader)     ; enables #{ }# reader macros.
  #
  CL-USER> (with-c-syntax:with-c-syntax ()
  #{
    format (t, "Hello World!");
  }#)
             
  Hello World!
  NIL
  CL-USER> (with-c-syntax:unuse-reader)   ; disables #{ }# reader macros.
  #
  CL-USER> 
#+END_SRC

** Summing from 1 to 100.
Because of using reader macros, this example may confuse the repl of
slime.
I tried this on SBCL's native repl.

#+BEGIN_SRC lisp
  ,* (with-c-syntax:use-reader)
  
  #
  ,* (with-c-syntax:with-c-syntax ()
  #{
    int i, sum = 0;
  
    for (i = 0; i <= 100; ++ i )
      sum += i;
    return sum;
  }#)
  
  5050
  ,* (with-c-syntax:unuse-reader)
  
  #
  *  
#+END_SRC

** Duff's Device
#+BEGIN_SRC lisp
  (with-c-syntax:use-reader)
  (defun w-c-s-duff-device (to-seq from-seq cnt)
    (with-c-syntax:with-c-syntax ()
      #{
      int * to = & to-seq;
      int * from = & from-seq;
  
      int n = (cnt + 7) / 8;
      n = floor(n);           /* Lisp's CL:/ produces rational */
      switch (cnt % 8) {
      case 0 :    do {    * to ++ = * from ++;
      case 7 :            * to ++ = * from ++;
      case 6 :            * to ++ = * from ++;
      case 5 :            * to ++ = * from ++;
      case 4 :            * to ++ = * from ++;
      case 3 :            * to ++ = * from ++;
      case 2 :            * to ++ = * from ++;
      case 1 :            * to ++ = * from ++;
        } while (-- n > 0);
      }
      }#)
    to-seq)
  (with-c-syntax:unuse-reader)
  
  (setf arr1 (make-array 20 :initial-element 1))
  (setf arr2 (make-array 20 :initial-element 2))
  (w-c-s-duff-device arr1 arr2 10)
  
  arr1 ;; => #(2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1)
#+END_SRC

* API
** Macro ~with-c-syntax~
*** Syntax
~with-c-syntax~ (&key keyword-case entry-form try-add-{}) form* => result*

*** Arguments and Values
- keyword-case :: one of ~:upcase~, ~:downcase~, ~:preserve~, or
                  ~:invert~.  The default is the current readtable
                  case.
- entry-form :: a form.
- try-add-{} :: a boolean.
- forms   :: forms interpreted by this macro.
- results :: the values returned by the ~forms~

*** Description
This macro is a entry point of the with-c-syntax system.  ~forms~ are
interpreted as C syntax, executed, and return values.

~keyword-case~ specifies case sensitivity. Especially, if ~:upcase~ is
specified, some case-insensitive feature is enabled for convenience.

~entry-form~ is inserted as an entry point when compiling a
translation unit.

If ~try-add-{}~ is t and an error occurred at parsing, with-c-syntax
adds '{' and '}' into the head and tail of ~form~ respectively, and
tries to parse again.

** Function ~use-reader~
*** Syntax
~use-reader~ &key level case => readtable

*** Arguments and Values
- level :: one of 0, 1, 2, 3, ~:conservative~, ~:aggressive~,
           ~:overkill~, or ~:insane~.
           The default is specified by ~*default-reader-level*~.
- case :: one of ~:upcase~, ~:downcase~, ~:preserve~, ~:invert~, or
          nil. The default is nil.

*** Description
This macro establishes a C syntax reader.

~use-reader~ introduces a dispatching macro character '#{'.  Inside
'#{' and '}#', the reader uses completely different syntax, and
wrapped with ~with-c-syntax~ form.

**** Syntax Levels
For inside '#{' and '}#', four syntaxes are defined. These syntaxes
are selected by the infix parameter of the '#{' dispatching macro
character. If it not specified, The default is the ~level~ specified
at ~use-reader~.

If you interest for what syntaxes are defined, Please see the "Further
Information" links at bottom.

**** Syntax Cases
When ~case~ is not nil, the specified case is used as the
readtable-case inside '#{' and '}#', and the case is passed to the
wrapping ~with-c-syntax~ form.

When ~case~ is nil, the readtable-case of ~*readtable*~ at using
'#{' is used.

*** Side Effects
Changes ~*readtable*~.

*** Notes
There is no support for trigraphs or digraphs.

*** See Also
~with-c-syntax~, ~unuse-reader~.

** Function ~unuse-reader~
*** Syntax
~unuse-reader~  => readtable

*** Arguments and Values
- readtable :: a readtable

*** Description
Disposes the C reader established by ~use-reader~, and restores the
previous readtable.

*** Side Effects
Changes ~*readtable*~.

*** See Also
~unuse-reader~.


* License

Copyright (c) 2014 YOKOTA Yuki 

This program is free software. It comes without any warranty, to
the extent permitted by applicable law. You can redistribute it
and/or modify it under the terms of the Do What The Fuck You Want
To Public License, Version 2, as published by Sam Hocevar. See
the COPYING file for more details.


* Further Information
Please see:
https://github.com/y2q-actionman/with-c-syntax/wiki


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 with-c-syntax

Author

YOKOTA Yuki <y2q.actionman@gmail.com>

License

WTFPL

Description

with-c-syntax is a fun package which introduces the C language syntax into Common Lisp.

Dependencies
Source

with-c-syntax.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Next: , Previous: , Up: Modules   [Contents][Index]

3.1 with-c-syntax/src

Parent

with-c-syntax (system)

Location

src/

Components

Previous: , Up: Modules   [Contents][Index]

3.2 with-c-syntax/libc

Dependency

src (module)

Parent

with-c-syntax (system)

Location

src/libc/

Components

Next: , Previous: , Up: Top   [Contents][Index]

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.1 with-c-syntax.asd

Location

with-c-syntax.asd

Systems

with-c-syntax (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.2 with-c-syntax/src/package.lisp

Parent

src (module)

Location

src/package.lisp

Packages

with-c-syntax.core


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.3 with-c-syntax/src/util.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/util.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.4 with-c-syntax/src/condition.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/condition.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.5 with-c-syntax/src/keywords.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/keywords.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.6 with-c-syntax/src/struct.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/struct.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.7 with-c-syntax/src/typedef.lisp

Dependency

package.lisp (file)

Parent

src (module)

Location

src/typedef.lisp

Exported Definitions
Internal Definitions

*typedef-names* (special variable)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.8 with-c-syntax/src/pseudo-pointer.lisp

Dependencies
Parent

src (module)

Location

src/pseudo-pointer.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.9 with-c-syntax/src/preprocessor.lisp

Dependencies
Parent

src (module)

Location

src/preprocessor.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.10 with-c-syntax/src/with-c-syntax.lisp

Dependencies
Parent

src (module)

Location

src/with-c-syntax.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.11 with-c-syntax/src/reader.lisp

Dependency

with-c-syntax.lisp (file)

Parent

src (module)

Location

src/reader.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.12 with-c-syntax/libc/package.lisp

Parent

libc (module)

Location

src/libc/package.lisp

Packages

with-c-syntax.stdlib


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.13 with-c-syntax/libc/util.lisp

Dependency

package.lisp (file)

Parent

libc (module)

Location

src/libc/util.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.14 with-c-syntax/libc/float.lisp

Dependency

util.lisp (file)

Parent

libc (module)

Location

src/libc/float.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.15 with-c-syntax/libc/iso646.lisp

Dependency

util.lisp (file)

Parent

libc (module)

Location

src/libc/iso646.lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.16 with-c-syntax/libc/limits.lisp

Dependency

util.lisp (file)

Parent

libc (module)

Location

src/libc/limits.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.17 with-c-syntax/libc/stdarg.lisp

Dependency

util.lisp (file)

Parent

libc (module)

Location

src/libc/stdarg.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.18 with-c-syntax/libc/stddef.lisp

Dependency

util.lisp (file)

Parent

libc (module)

Location

src/libc/stddef.lisp


Previous: , Up: Lisp files   [Contents][Index]

4.1.19 with-c-syntax/package.lisp

Dependencies
Parent

with-c-syntax (system)

Location

package.lisp

Packages

with-c-syntax


Next: , Previous: , Up: Top   [Contents][Index]

5 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

5.1 with-c-syntax.core

with-c-syntax core package.

Source

package.lisp (file)

Use List

common-lisp

Used By List

with-c-syntax.stdlib

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Packages   [Contents][Index]

5.2 with-c-syntax.stdlib

with-c-syntax libc package.

Source

package.lisp (file)

Use List
Internal Definitions

Previous: , Up: Packages   [Contents][Index]

5.3 with-c-syntax

with-c-syntax user package.

Source

package.lisp (file)

Use List

common-lisp


Next: , Previous: , Up: Top   [Contents][Index]

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Macros

Macro: get-varargs PLACE

* Syntax
~get-varargs~ place => obj

* Arguments and Values
- place :: a place
- obj :: a list

* Description
Sets the variadic arguments of the with-c-syntax function to the ~place~.

If this is called outside of a variadic function, an error is signaled.

* Notes
This is not intended for calling directly. The ~va_start~ preprocessor macro uses this.

When defining a variadic function, a macro has same name is locally established.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Macro: unuse-reader ()

* Syntax
~unuse-reader~ <no arguments> => readtable

* Arguments and Values
- readtable :: a readtable

* Description
Disposes the C reader established by ~use-reader~, and restores the previous readtable.

* Side Effects
Changes ~*readtable*~.

* See Also
~unuse-reader~.

Package

with-c-syntax.core

Source

reader.lisp (file)

Macro: use-reader &key LEVEL CASE

* Syntax
~use-reader~ &key level case => readtable

* Arguments and Values
- level :: one of 0, 1, 2, 3, ~:conservative~, ~:aggressive~, ~:overkill~, or ~:insane~.
The default is specified by ~*default-reader-level*~.
- case :: one of ~:upcase~, ~:downcase~, ~:preserve~, ~:invert~, or nil. The default is nil.

* Description
This macro establishes a C syntax reader.

~use-reader~ introduces a dispatching macro character ’#{’. Inside ’#{’ and ’}#’, the reader uses completely different syntax, and wrapped with ~with-c-syntax~ form.

** Syntax Levels
For inside ’#{’ and ’}#’, four syntaxes are defined. These syntaxes are selected by the infix parameter of the ’#{’ dispatching macro character. If it not specified, The default is the ~level~ specified at ~use-reader~.

*** Level 0 (conservative)
This is used when ~level~ is 0 or ~:conservative~.

In this level, these reader macros are installed.

- ’,’ :: ’,’ is read as a symbol. (In ANSI CL, a comma is defined as an invalid char outside the backquote syntax.)
- ’:’ :: Reads a solely ’:’ as a symbol. Not a solely one (as a package marker) works as is.

*** Level 1 (aggressive)
This is used when ~level~ is 1 or ~:aggressive~.

In this level, these reader macros are installed.

- ’{’, ’}’, ’[’, ’]’ :: These become a terminating character,
and read as a symbol.

*** Level 2 (overkill)
This is used when ~level~ is 2 or ~:overkill~.

In this level, these reader macros are installed.

- ’‘’ :: ’‘’ reads a next s-exp in the previous syntax. This works as an escape from ’#{’ and ’}#’ The ’backquote’ functionality is lost.
- ’.’ :: Reads a solely ’.’ as a symbol. The ’consing dot’ functionality is lost.
- ” :: The ” becomes a ordinary constituent character. The ’multiple escaping’ functionality is lost.
- ’/’ :: ’//’ means a line comment, ’/* ... */’ means a block comment. ’/’ is still non-terminating, and has special meanings only if followed by ’/’ or ’*’. Ex: ’a/b/c’ or ’/+aaa+/’ are still valid symbols.
- ”’ (single-quote) :: The single-quote works as a character literal of C. The ’quote’ functionality is lost.
- ’"’ (double-quote) :: The double-quote works as a string literal of C. Especially, escaping is treated as C. The original functionality is lost.
- ’;’ :: ’;’ becomes a terminating character, and read as a symbol. The ’comment’ functionality is lost.
- ’(’ and ’)’ :: parenthesis become a terminating character, and read as a symbol. The ’reading a list’ functionality is lost.

In this level, ’(’ and ’)’ loses its functionalities. For constructing a list, the ’‘’ syntax must be used.

*** Level 3 (insane)
This is used when ~level~ is 3 or ~:insane~.

In this level, these characters become terminating, and read as a symbol listed below.

- ’?’ :: ’?’
- ’~’ :: ’~’
- ’:’ :: ’:’
- ’.’ :: ’.’
- ’=’ :: ’=’ or ’==’
- ’*’ :: ’*’ or ’*=’
- ’^’ :: ’^’ or ’^=’
- ’!’ :: ’!’ or ’!=’
- ’&’ :: ’&’, ’&&’, or ’&=’
- ’|’ :: ’|’, ’||’, or ’|=’
- ’+’ :: ’+’, ’++’, or ’+=’
- ’-’ :: ’-’, ’–’, ’-=’, or ’->’
- ’>’ :: ’>’, ’>>’, or ’>>=’
- ’<’ :: ’<’, ’<<’, or ’<<=’
- ’/’ :: ’/’, or ’/=’. ’//’ means a line comment, and ’/* ... */’ means a block comment.

In this level, there is no compatibilities between symbols of Common Lisp. Especially, for denoting a symbol has terminating characters, escapes are required. (ex. most-positive-fixnum)

** Syntax Cases
When ~case~ is not nil, the specified case is used as the readtable-case inside ’#{’ and ’}#’, and the case is passed to the wrapping ~with-c-syntax~ form.

When ~case~ is nil, the readtable-case of ~*readtable*~ at using ’#{’ is used.

* Side Effects
Changes ~*readtable*~.

* Notes
There is no support for trigraphs or digraphs.

* See Also
~with-c-syntax~, ~unuse-reader~.

Package

with-c-syntax.core

Source

reader.lisp (file)

Macro: with-c-syntax (&key KEYWORD-CASE ENTRY-FORM TRY-ADD-{}) &body BODY

* Syntax
~with-c-syntax~ (&key keyword-case entry-form try-add-{}) form* => result*

* Arguments and Values
- keyword-case :: one of ~:upcase~, ~:downcase~, ~:preserve~, or ~:invert~. The default is the current readtable case.
- entry-form :: a form.
- try-add-{} :: a boolean.
- forms :: forms interpreted by this macro.
- results :: the values returned by the ~forms~

* Description
This macro is a entry point of the with-c-syntax system. ~forms~ are interpreted as C syntax, executed, and return values.

~keyword-case~ specifies case sensitivity. Especially, if ~:upcase~ is specified, some case-insensitive feature is enabled for convenience.

~entry-form~ is inserted as an entry point when compiling a translation unit.

If ~try-add-{}~ is t and an error occurred at parsing, with-c-syntax adds ’{’ and ’}’ into the head and tail of ~form~ respectively, and tries to parse again.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Macro: with-pseudo-pointer-scope () &body BODY

* Syntax
~with-pseudo-pointer-scope~ () form* => result*

* Arguments and Values
- forms :: a implicit progn
- results :: the values returned by the ~forms~

* Description
Establishes a new environment for pseudo-pointers.

A pointer made inside this macro is invalidated out of this.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Functions

Function: add-preprocessor-macro NAME VAL &optional CASE-SPEC

* Syntax
~add-preprocessor-macro~ name val &optional upcase-spec => macro-def

* Arguments and Values
- name :: a string or symbol.
- val :: an object.
- case-spec :: ~:upcase~, or nil.
- macro-def :: a cons, which have ~name~ as its car, and macro definition as its cdr.

* Description
Establishes a new preprocessor macro. When the preprocessor finds a symbol matching ~name~, it is expanded by ~val~.

~case-spec~ specifies for which case the macro is defined. If ~:upcase~ is specified, the macro is defined only for the ~:upcase~ reader. If nil, the macro is defined for all readtable-case.

* See Also
~find-preprocessor-macro~.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: add-struct-spec NAME SSPEC

* Syntax
~add-struct-spec~ name sspec => struct-spec

* Arguments and Values
- name :: a symbol.
- sspec :: a struct-spec instance.
- struct-spec :: a struct-spec instance.

* Description
Establishes a new struct-spec definition named ~name~.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Function: add-typedef NAME SPEC

* Syntax
~add-typedef~ name spec => decl-spec

* Arguments and Values
- name :: a symbol
- spec :: a decl-specs instance, or a type specifier. - decl-spec :: a decl-specs instance.

* Description
Establishes a new typedef definition named ~name~.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

typedef.lisp (file)

Function: find-preprocessor-macro NAME CASE-SPEC

* Syntax
~find-preprocessor-macro~ name &optional case-spec => macro-def

* Arguments and Values
- name :: a string or symbol.
- case-spec :: ~:upcase~, or nil.
- macro-def :: a cons, which have ~name~ as its car, and macro definition as its cdr.

* Description
Finds and returns a preprocessor macro definition named ~name~.

~case-spec~ specifies for which case the macro is defined. If ~:upcase~ is specified, the macro is defined only for the ~:upcase~ reader. If nil, the macro is defined for all readtable-case.

** Matching rule
- If ~name~ is a string, the matching functions is ’string=’. Packages are ignored.

- If ~name~ is a symbol, the matching functions is ’eq’. This is package-aware.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: find-struct-spec NAME

* Syntax
~find-struct-spec~ name => struct-spec

* Arguments and Values
- name :: a symbol
- decl-spec :: a struct-spec instance, or nil.

* Description
Finds and returns a struct-spec. If no struct-specs are found, returns nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Function: find-typedef NAME

* Syntax
~find-typedef~ name => decl-spec

* Arguments and Values
- name :: a symbol
- decl-spec :: a decl-specs instance, or nil.

* Description
Finds and returns a typedef definition. If no typedefs are found, returns nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

typedef.lisp (file)

Function: invalidate-all-pseudo-pointers ()

* Syntax
~invalidate-all-pseudo-pointers~ <no arguments> => count

* Arguments and Values
- count :: an integer.

* Description
Invalidates all pseudo-pointers in the scope it called. This call doesn’t effect pointers out of the ~with-pseudo-pointer-scope~.

Returns the number of invalidates pointers.

* See Also
~with-pseudo-pointer-scope~.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Function: make-pseudo-pointer POINTEE &optional INITIAL-OFFSET

* Syntax
~make-pseudo-pointer~ pointee &optional initial-offset => pointer

* Arguments and Values
- pointee :: an object.
- initial-offset :: an integer. default is 0.
- pointer :: a newly allocated pseudo-pointer.

* Description
Makes and returns a new pseudo-pointer points ~pointee~.

~initial-offset~ is added to the ~pointer~ at making.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Function: make-struct SPEC-OBJ &rest INIT-ARGS

* Syntax
~make-struct~ spec-obj &rest init-args => new-struct

* Arguments and Values
- spec-obj :: a symbol, or an instance of struct-spec.
- init-args :: objects.
- new-struct :: an instance of struct.

* Description
Makes a new struct instance based on the specification of ~spec-obj~.

If ~spec-obj~ is a symbol, it must be a name of a globally defined struct or union. To define a struct or an union globally, use ~with-c-syntax~ and declare it in a toplevel of translation-unit.

If ~spec-obj~ is an instance of struct-spec, it is used directly.

~init-args~ is used for initializing members of the newly created instance. If the number of ~init-args~ is less than the number of members, the rest members are initialized with the default values specified by the ~spec-obj~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Function: preprocessor LIS &optional CASE-SPEC

* Syntax
~preprocessor~ list-of-tokens &key allow-upcase-keyword => preprocesed-list

* Arguments and Values
- list-of-tokens :: a list
- case-spec :: ~:upcase~, or nil.
- preprocesed-list :: a list

* Description
This function works like the C Preprocessor.

** Working.
At this stage, all of the functionalities of the standard CPP are not implemented. Current working is below:

- Concatenation of string literals.

- Calling preprocessor macro (not recursive)
Invoking preprocessor macros, defined by add-preprocessor-macro.

This system is used for converting symbols denoting keywords of C belongs other packages to our package’s one.

- A dirty hack for ’typedef’.
Automatically adds ’void ;’ after each typedef declarations. This
is a workaround for avoiding the problem between ’the lexer hack’
and the look-aheading of cl-yacc.

~case-spec~ specifies which macro definitions are used. If ~:upcase~
is specified, macro definitions for ~:upcase~ reader is used additionally.

** Expansion
- If ~val~ is nil, no expansion is done. The original symbol is left.

- If ~val~ is a object not a function, it is used as an expansion.

- If ~val~ is a function, the function is called, and the returned value is used for expansion. Arguments for the function are datum between the following ( symbol and the next ) symbol, delimited
by , symbol.

Example: If MAC is defined for a macro and its value is a function, this sequence
MAC ( a , b b , c c c )
calls the function like:
(funcall #’a-func-of-MAC ’(a) ’(b b) ’(c c c))

* See Also
~find-preprocessor-macro~.

* Notes
- TODO: recursive expansion

- The feature ’If ~val~ is nil, no expansion is done.’ is for implementing the recursive expansion in the future. In CPP, an expanded macro is ignored in the next (recursive) expansion. So, if a macro was expanded, I will push (the-expanded-macro . nil), and call the preprocessor recursively.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: pseudo-pointer-dereference P

* Syntax
~pseudo-pointer-dereference~ pointer => object

* Arguments and Values
- pointer :: a pseudo-pointer.
- object :: an object.

* Description
Dereferences the ~pointer~ and returns the result.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Writer

(setf pseudo-pointer-dereference) (function)

Function: (setf pseudo-pointer-dereference) VAL P

* Syntax
(setf (~pseudo-pointer-dereference~ pointer) new-value)

* Arguments and Values
- pointer :: a pseudo-pointer.
- new-value :: an object.

* Description
Makes the ~pointer~ to point the ~new-value~ object.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Reader

pseudo-pointer-dereference (function)

Function: pseudo-pointer-invalidate P

* Syntax
~pseudo-pointer-invalidate~ pointer => boolean

* Arguments and Values
- pointer : a pseudo-pointer.
- boolean :: a boolean.

* Description
Makes the ~pointer~ to point no objects. After that, calling ~pseudo-pointer-dereference~ to this pointer will be error.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Function: pseudo-pointer-pointable-p OBJ

* Syntax
~pseudo-pointer-pointable-p~ object => boolean

* Arguments and Values
- object :: an object.
- boolean :: a boolean.

* Description
Returns whether the ~object~ can be held by pseudo-pointers.

* Notes
At this version, this function returns t only if the ~object~ is a symbol, vector, or an array.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Function: remove-preprocessor-macro NAME &optional CASE-SPEC

* Syntax
~remove-preprocessor-macro~ name &optional upcase-spec => macro-def

* Arguments and Values
- name :: a string or symbol.
- case-spec :: ~:upcase~, or nil.
- macro-def :: a cons, which have ~name~ as its car, and macro definition as its cdr.

* Description
Removes a preprocessor macro named ~name~.

~case-spec~ specifies for which case the macro is defined. If ~:upcase~ is specified, the macro is defined only for the ~:upcase~ reader. If nil, the macro is defined for all readtable-case.

* See Also
~find-preprocessor-macro~.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: remove-struct-spec NAME

* Syntax
~remove-struct-spec~ name => struct-spec

* Arguments and Values
- name :: a symbol
- struct-spec :: a struct-specs instance, or nil.

* Description
Removes a struct-spec definition named ~name~.

Returns the removed struct-spec definition. If no struct-specs are found, returns nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Function: remove-typedef NAME

* Syntax
~remove-typedef~ name => decl-spec

* Arguments and Values
- name :: a symbol
- decl-spec :: a decl-specs instance, or nil.

* Description
Removes a typedef definition named ~name~.

Returns the removed typedef definition. If no typedefs are found, returns nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

typedef.lisp (file)

Function: struct-member STRUCT MEMBER-NAME

* Syntax
~struct-member~ struct member-name => object

* Arguments and Values
- struct :: an instance of struct
- member-name :: a symbol
- object :: an object

* Description
Returns the value of the member named ~member-name~ in the ~struct~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Writer

(setf struct-member) (function)

Function: (setf struct-member) VAL STRUCT MEMBER-NAME

* Syntax
(setf (~struct-member~ struct member-name) new-object)

* Arguments and Values
- struct :: an instance of struct
- member-name :: a symbol
- new-object :: an object

* Description
Sets the value of the member named ~member-name~ in the ~struct~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Reader

struct-member (function)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.3 Conditions

Condition: with-c-syntax-error ()

* Class Precedence List
with-c-syntax-error, simple-error, ...

* Description
The type ~with-c-syntax-error~ consists of all errors in with-c-syntax system.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

simple-error (condition)

Direct subclasses
Condition: with-c-syntax-warning ()

* Class Precedence List
with-c-syntax-warning, simple-warning, ...

* Description
The type ~with-c-syntax-warning~ consists of all warnings in the with-c-syntax system.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

simple-warning (condition)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.4 Classes

Class: struct ()

* Class Precedence List
struct, standard-object, ...

* Description
A representation of C structs or unions.

Package

with-c-syntax.core

Source

struct.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: member-index-table
Initargs

:member-index-table

Readers

struct-member-index-table (generic function)

Slot: member-vector
Initargs

:member-vector

Initform

#()

Readers

struct-member-vector (generic function)

Writers

(setf struct-member-vector) (generic function)


Previous: , Up: Exported definitions   [Contents][Index]

6.1.5 Types

Type: enum ()

Represents the enum type.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Type: pseudo-pointer &optional POINTEE-TYPE

* Supertypes
pseudo-pointer, fixnum, ...

* Description
The base type of internal representation of pointers in with-c-syntax.

* Compound Type Specifier Syntax
~pseudo-pointer~ &optional (pointee-type t)

* Compound Type Specifier Arguments
- pointee-type :: the type of the object pointer by the pointer.

* Compound Type Specifier Description
This notation includes the type of the pointed object.

* Notes
At this stage, the ~pointee-type~ is ignored by the type system.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)


Previous: , Up: Definitions   [Contents][Index]

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Constants

Constant: +bracket-pair-alist+

* Value Type
alist :: <character> -> <character>.

* Description
Holds an alist of bracket pairs.

Package

with-c-syntax.core

Source

reader.lisp (file)

Constant: +numeric-types-alist+

* Value Type
a list :: consists of alists – (list-of-symbols . <lisp-type>)

* Description
Holds relationships between notations of C type and Common Lisp types.

* Notes
For each entry of alist, the car is sorted alphabetically.

Package

with-c-syntax.core

Source

keywords.lisp (file)

Constant: +operators-and-keywords+

* Value Type
a list :: consists of symbols.

* Description
Holds a list of symbols denoting C operators and keywords.

Package

with-c-syntax.core

Source

keywords.lisp (file)

Constant: +pseudo-pointer-mask+

* Value Type
a fixnum.

* Description:
Holds the bitmask splits the pseudo-pointer bit representation to the ’base part’ and the ’index part’.

The ’base part’ is used for a key of ~*pseudo-pointee-table*~. The ’index part’ is used for a offset of the pointee value.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Constant: +pseudo-pointer-safebit+

* Value Type
a fixnum.

* Description
Holds the ’sign bit’ of the ’index part’ of the pseudo-pointer bit representation.

For the ’index part’, the representation is like here:

- #b1000000 :: 0
- #b1000001 - #b1111111 :: +1 ~ +63
- #b0111111 - #b0000000 :: -1 ~ -64

If the ’index part’ exceeds this limitation, the result is unpredictable.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Constant: +reader-level-specifier-alist+

* Value Type
alist :: <atom> -> <fixnum>.

* Description
Holds an alist translates ’reader level’.

* See Also
~use-reader~.

Package

with-c-syntax.core

Source

reader.lisp (file)

Constant: char_bit
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: char_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: char_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: dbl_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_epsilon
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_mant_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_max
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_max_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_max_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_min
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_min_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_min_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: dbl_radix
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: decimal_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_epsilon
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_eval_method
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_mant_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_max
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_max_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_max_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_min
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_min_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_min_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_radix
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: flt_rounds
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: int_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: int_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: ldbl_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_epsilon
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_mant_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_max
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_max_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_max_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_min
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_min_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_min_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: ldbl_radix
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: llong_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: llong_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: long_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: long_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: mb_len_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: schar_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: schar_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: sflt_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_epsilon
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_mant_dig
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_max
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_max_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_max_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_min
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_min_10_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_min_exp
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: sflt_radix
Package

with-c-syntax.stdlib

Source

float.lisp (file)

Constant: shrt_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: shrt_min
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: uchar_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: uint_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: ullong_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: ulong_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)

Constant: ushrt_max
Package

with-c-syntax.stdlib

Source

limits.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Special variables

Special Variable: *current-c-reader*

* Value Type
a list :: consists of plists.

* Description
Holds the current c-syntax reader environments, established by the ~use-reader~.

Its contents is a list of plists. The plists holds below:
- :level -> the specified reader level.
- :case -> the specified reader case.
- :previous -> the readtable used when ~use-reader~ called.

Package

with-c-syntax.core

Source

reader.lisp (file)

Special Variable: *default-reader-level*

* Value Type
a symbol or a fixnum.

* Description
Holds the default reader level used in ~use-reader~.

The value is one of 0, 1, 2, 3, ~:conservative~, ~:aggressive~, ~:overkill~, or ~:insane~. The default is ~:overkill~.

* See Also
~use-reader~.

Package

with-c-syntax.core

Source

reader.lisp (file)

Special Variable: *dynamic-binding-requested*

* Value Type
a list :: consists of symbols.

* Description
Holds a list of symbols, which are pointed by a pointer.
If a pseudo-pointer is created for a symbol, the symbol is added to here (Because such a symbol must be handled carefully).

* Notes
At the beginning of ~with-c-syntax~, it binds this variable to nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Special Variable: *expression-parser*
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Special Variable: *function-pointer-ids*

* Value Type
a list :: consists of symbols.

* Description
Holds a list of symbols, which are declared as a pointer
to a function. (Because such a symbol is specially treated by the function-calling expression.)

* Notes
At the beginning of ~with-c-syntax~, it binds this variable to nil.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Special Variable: *preprocessor-macro*

* Value Type
a vector of alist.
The alist is :: (<symbol or string> case-spec)
-> <function, or any literal object>.

* Description
Holds preprocessor macro definitions.

~case-spec~ is one of the following:
nil :: means this macro definition is all readtable-case. :upcase :: means this macro definition is only for the :upcase of readtable-case.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Special Variable: *pseudo-pointee-table*

* Value Type
a hash-table :: <pseudo-pointer> -> <object>

* Description
Holds a table relates the ’base part’ of a pseudo-pointer to the pointee object.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Special Variable: *pseudo-pointer-next*

* Value Type
a pseudo-pointer.

* Description
Holds the next allocating pseudo-pointer.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Special Variable: *struct-specs*

* Value Type
a hashtable :: a symbol -> a list of struct-spec.

* Description
Holds definitions of structs or unions.

* Notes
At the beginning of ~with-c-syntax~, it binds this variable to the values they held. This behavior limits the scope of local struct/union definitions into the compilation unit.

* Affected By
~with-c-compilation-unit~.

* See Also
~find-struct-spec~, ~add-struct-spec~, ~remove-struct-spec~

Package

with-c-syntax.core

Source

struct.lisp (file)

Special Variable: *toplevel-entry-form*

* Value Type
a list

* Description
Holds a form inserted as an entry point.

This is used only when compiling a translation unit. Not used for other cases.

* Notes
At the beginning of ~with-c-syntax~, it binds this variable to its ~entry-form~ argument.

* Affected By
~with-c-compilation-unit~.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Special Variable: *typedef-names*

* Value Type
a hashtable :: a symbol -> list of decl-specs

* Description
Holds definitions of typedefs.

* Notes
At the beginning of ~with-c-syntax~, it binds this variable to the values they held. This behavior limits the scope of local typedefs into the compilation unit.

* Affected By
~with-c-compilation-unit~.

* See Also
~find-typedef~, ~add-typedef~, ~remove-typedef~.

Package

with-c-syntax.core

Source

typedef.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Macros

Macro: ashf PLACE SHIFT
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: check-reader-level PLACE
Package

with-c-syntax.core

Source

reader.lisp (file)

Macro: divf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: logandf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: logiorf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: logxorf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: modf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: mulf PLACE &rest ARGS
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: nreconcf PLACE LIST
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: post-incf FORM &optional DELTA

A post increment version of ~incf~.

Package

with-c-syntax.core

Source

util.lisp (file)

Macro: push-right PLACE I
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: revappendf PLACE LIST
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: reverse-ashf PLACE SHIFT
Package

with-c-syntax.core

Source

util.lisp (file)

Macro: with-c-compilation-unit (ENTRY-FORM) &body BODY

* Syntax
~with-c-compilation-unit~ (entry-form) &body form* => result*

* Arguments and Values
- entry-form :: a form
- forms :: a implicit progn
- results :: the values returned by forms

* Description
Establishes variable bindings for a new compilation.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Macro: with-dynamic-bound-symbols (&rest SYMBOLS) &body BODY

Inside this, passed symbols are dynamically bound to itself.

Package

with-c-syntax.core

Source

util.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.4 Functions

Function: add-predefined-typedef-and-aliases SYM TYPE
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: add-preprocessor-macro-with-upcase NAME VAL
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: add-to-tail LIS I
Package

with-c-syntax.core

Source

util.lisp (file)

Function: array-dimension-combine ARRAY-DIMENSION-LIST INIT

Resolves unspecified dimensions with an initializer.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: concatenate-comma-list LIS OP I
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-decl-specs INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-enum-spec INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-enumerator INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-function-definition INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-init-declarator INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-spec-qualifier-list INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-stat INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-struct-declarator INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-struct-or-union-spec INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: copy-struct-spec INSTANCE
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: decl-specs-enum-bindings INSTANCE
Function: (setf decl-specs-enum-bindings) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-lisp-type INSTANCE
Function: (setf decl-specs-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-qualifier INSTANCE
Function: (setf decl-specs-qualifier) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-storage-class INSTANCE
Function: (setf decl-specs-storage-class) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-struct-spec INSTANCE
Function: (setf decl-specs-struct-spec) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-tag INSTANCE
Function: (setf decl-specs-tag) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-type-spec INSTANCE
Function: (setf decl-specs-type-spec) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: decl-specs-typedef-init-decl INSTANCE
Function: (setf decl-specs-typedef-init-decl) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: dimension-list-max-dimensions LIS

Calculates max lengths per depth of a nested list.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: enum-spec-enumerator-list INSTANCE
Function: (setf enum-spec-enumerator-list) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enum-spec-id INSTANCE
Function: (setf enum-spec-id) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enum-spec-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-declarator INSTANCE
Function: (setf enumerator-declarator) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-initializer INSTANCE
Function: (setf enumerator-initializer) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-lisp-initform INSTANCE
Function: (setf enumerator-lisp-initform) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-lisp-name INSTANCE
Function: (setf enumerator-lisp-name) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-lisp-type INSTANCE
Function: (setf enumerator-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: enumerator-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: error-lisp-subscript OBJ
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-if-statement EXP THEN-STAT &optional ELSE-STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-init-declarator-init DSPECS ABST-DECLARATOR INITIALIZER &key ALLOW-INCOMPLETE

Finds the specified type and the initialization form. Returns (values var-init var-type).

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-loop BODY-STAT &key INIT COND STEP POST-TEST-P
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-switch EXP STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-toplevel MODE DECLS FDEFS CODE

This is a final compilation phase. Makes a toplevel form. ~mode~ is one of :statement or :translation-unit

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-toplevel-init-decls INIT-DECLS MODE STORAGE-CLASS DYNAMIC-ESTABLISHED-SYMS

A part of expand-toplevel.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-toplevel-stat STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: expand-translation-unit UNITS
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: finalize-decl-specs DSPECS

Checks and fills the passed decl-specs.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: finalize-enum-spec ESPEC DSPECS

Fills the decl-specs object referring the passed enum-spec.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: finalize-init-declarator DSPECS INIT-DECL

Fills the passed init-declarator object.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: finalize-struct-or-union-spec SUSPEC DSPECS

Fills the decl-specs object referring the passed struct-or-union-spec. If required, makes a new struct-spec object.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: finalize-type-spec DSPECS

A part of finalize-decl-specs. This processes type-spec.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-func-args INSTANCE
Function: (setf function-definition-func-args) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-func-body INSTANCE
Function: (setf function-definition-func-body) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-func-name INSTANCE
Function: (setf function-definition-func-name) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-lisp-type INSTANCE
Function: (setf function-definition-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: function-definition-storage-class INSTANCE
Function: (setf function-definition-storage-class) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-declarator INSTANCE
Function: (setf init-declarator-declarator) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-initializer INSTANCE
Function: (setf init-declarator-initializer) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-lisp-initform INSTANCE
Function: (setf init-declarator-lisp-initform) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-lisp-name INSTANCE
Function: (setf init-declarator-lisp-name) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-lisp-type INSTANCE
Function: (setf init-declarator-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: init-declarator-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: install-c-reader READTABLE LEVEL

Inserts reader macros for C reader. Called by ’#{’ reader macro.

Package

with-c-syntax.core

Source

reader.lisp (file)

Function: lisp-subscript OBJ ARG1 &rest ARGS
Function: (setf lisp-subscript) VAL OBJ ARG1 &rest ARGS
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-address-of EXP
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-binary OP
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-cast TYPE EXP
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-funcall FUNC-EXP ARGS
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-function-definition NAME BODY &key K&R-DECLS RETURN
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-offsetof DSPECS ID
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-type-name SPEC-QUAL ABS
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: lispify-unary OP
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: list-lexer LIST
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-decl-specs &key (TYPE-SPEC TYPE-SPEC) (STORAGE-CLASS STORAGE-CLASS) (QUALIFIER QUALIFIER) (LISP-TYPE LISP-TYPE) (TAG TAG) (TYPEDEF-INIT-DECL TYPEDEF-INIT-DECL) (ENUM-BINDINGS ENUM-BINDINGS) (STRUCT-SPEC STRUCT-SPEC)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-dimension-list DIMS &optional DEFAULT

Constructs a nested list like ~make-array~.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: make-dimension-list-load-form LIS MAX-DEPTH

Makes a load form of a nested list.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: make-enum-spec &key (ID ID) (ENUMERATOR-LIST ENUMERATOR-LIST)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-enumerator &key (DECLARATOR DECLARATOR) (INITIALIZER INITIALIZER) (LISP-NAME LISP-NAME) (LISP-INITFORM LISP-INITFORM) (LISP-TYPE LISP-TYPE)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-function-definition &key (FUNC-NAME FUNC-NAME) (STORAGE-CLASS STORAGE-CLASS) (FUNC-ARGS FUNC-ARGS) (FUNC-BODY FUNC-BODY) (LISP-TYPE LISP-TYPE)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-init-declarator &key (DECLARATOR DECLARATOR) (INITIALIZER INITIALIZER) (LISP-NAME LISP-NAME) (LISP-INITFORM LISP-INITFORM) (LISP-TYPE LISP-TYPE)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-reduced-dimension-array ARRAY &rest SUBSCRIPTS

Makes a displaced array which has a reduced dimensions.

Example: Consider what is returned by (make-reduced-dimension-array (make-array ’(2 2 2)) ’(1))

Its dimension is ’(2 2), and it is a displaced array aliasing from ’(1 0 0) to ’(1 2 2) in the original array.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: make-spec-qualifier-list &key (TYPE-SPEC TYPE-SPEC) (STORAGE-CLASS STORAGE-CLASS) (QUALIFIER QUALIFIER) (LISP-TYPE LISP-TYPE) (TAG TAG) (TYPEDEF-INIT-DECL TYPEDEF-INIT-DECL) (ENUM-BINDINGS ENUM-BINDINGS) (STRUCT-SPEC STRUCT-SPEC)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-stat &key (CODE CODE) (DECLARATIONS DECLARATIONS) (BREAK-STATEMENTS BREAK-STATEMENTS) (CONTINUE-STATEMENTS CONTINUE-STATEMENTS) (CASE-LABEL-LIST CASE-LABEL-LIST)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-stat-unresolved-break ()
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-stat-unresolved-continue ()
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-struct-declarator &key (DECLARATOR DECLARATOR) (INITIALIZER INITIALIZER) (LISP-NAME LISP-NAME) (LISP-INITFORM LISP-INITFORM) (LISP-TYPE LISP-TYPE) (BITS BITS)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-struct-or-union-spec &key (TYPE TYPE) (ID ID) (STRUCT-DECL-LIST STRUCT-DECL-LIST)
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: make-struct-spec &key (STRUCT-NAME STRUCT-NAME) (UNION-P UNION-P) (MEMBER-DEFS MEMBER-DEFS) (DEFINED-IN-THIS-UNIT DEFINED-IN-THIS-UNIT)
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: mantissa-radix-change MANTISSA FROM-RADIX TO-RADIX
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: merge-stat S1 S2 &key MERGE-CODE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: nreconc-to TAIL LIST

Calls nreconc with reversed order args. A helper for ~nreconcf~.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: preprocessor-call-macro LIS-HEAD FN

A part of the ~preprocessor~ function.

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: preprocessor-initial-set ()

Returns the initial value of *preprocessor-macro*

Package

with-c-syntax.core

Source

preprocessor.lisp (file)

Function: pseudo-pointer-extract P &optional ERRORP

A helper function used by pseudo-pointer-dereference, etc.

Package

with-c-syntax.core

Source

pseudo-pointer.lisp (file)

Function: push-case-label CASE-LABEL-EXP STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: read-2chars-delimited-list C1 C2 &optional STREAM RECURSIVE-P
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-double-quote STREAM C0
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-escaped-char STREAM
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-in-c-syntax STREAM CHAR N
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-in-previous-syntax STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-lonely-single-symbol STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-minus STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-shift STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-single-character-symbol STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-single-or-equal-or-self-symbol STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-single-or-equal-symbol STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-single-quote STREAM C0
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-slash STREAM CHAR
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: read-slash-comment STREAM CHAR &optional NEXT-FUNCTION
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: ref-dimension-list LIS DIM-1 &rest DIMS
Function: (setf ref-dimension-list) VAL LIS DIM-1 &rest DIMS

Accesses a nested list like ~aref~, as a multi-dimensional array.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: revappend-to TAIL LIST

Calls revappend with reversed order args. A helper for ~revappendf~.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: reverse-ash I C
Package

with-c-syntax.core

Source

util.lisp (file)

Function: rewrite-break-statements SYM STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: rewrite-continue-statements SYM STAT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: setup-init-list DIMS DSPECS ABST-DECLARATOR INIT

Makes a list for ~:initial-contents~ of ~make-array~, from initializer-list.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: signed-byte-max BITS
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: signed-byte-min BITS
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: spec-qualifier-list-enum-bindings INSTANCE
Function: (setf spec-qualifier-list-enum-bindings) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-lisp-type INSTANCE
Function: (setf spec-qualifier-list-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-qualifier INSTANCE
Function: (setf spec-qualifier-list-qualifier) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-storage-class INSTANCE
Function: (setf spec-qualifier-list-storage-class) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-struct-spec INSTANCE
Function: (setf spec-qualifier-list-struct-spec) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-tag INSTANCE
Function: (setf spec-qualifier-list-tag) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-type-spec INSTANCE
Function: (setf spec-qualifier-list-type-spec) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: spec-qualifier-list-typedef-init-decl INSTANCE
Function: (setf spec-qualifier-list-typedef-init-decl) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-break-statements INSTANCE
Function: (setf stat-break-statements) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-case-label-list INSTANCE
Function: (setf stat-case-label-list) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-code INSTANCE
Function: (setf stat-code) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-continue-statements INSTANCE
Function: (setf stat-continue-statements) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-declarations INSTANCE
Function: (setf stat-declarations) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: stat-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-bits INSTANCE
Function: (setf struct-declarator-bits) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-declarator INSTANCE
Function: (setf struct-declarator-declarator) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-initializer INSTANCE
Function: (setf struct-declarator-initializer) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-lisp-initform INSTANCE
Function: (setf struct-declarator-lisp-initform) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-lisp-name INSTANCE
Function: (setf struct-declarator-lisp-name) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-lisp-type INSTANCE
Function: (setf struct-declarator-lisp-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-declarator-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-member-index STRUCT MEMBER-NAME

Returns the index of ~member-name~ in the internal storage of ~struct~.

Package

with-c-syntax.core

Source

struct.lisp (file)

Function: struct-or-union-spec-id INSTANCE
Function: (setf struct-or-union-spec-id) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-or-union-spec-p OBJECT
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-or-union-spec-struct-decl-list INSTANCE
Function: (setf struct-or-union-spec-struct-decl-list) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-or-union-spec-type INSTANCE
Function: (setf struct-or-union-spec-type) VALUE INSTANCE
Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Function: struct-spec-defined-in-this-unit INSTANCE
Function: (setf struct-spec-defined-in-this-unit) VALUE INSTANCE
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: struct-spec-member-defs INSTANCE
Function: (setf struct-spec-member-defs) VALUE INSTANCE
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: struct-spec-p OBJECT
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: struct-spec-struct-name INSTANCE
Function: (setf struct-spec-struct-name) VALUE INSTANCE
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: struct-spec-union-p INSTANCE
Function: (setf struct-spec-union-p) VALUE INSTANCE
Package

with-c-syntax.core

Source

struct.lisp (file)

Function: terminating-char-p CHAR &optional READTABLE

Returns t if char is terminating.

Package

with-c-syntax.core

Source

util.lisp (file)

Function: translate-reader-level RLSPEC
Package

with-c-syntax.core

Source

reader.lisp (file)

Function: unsigned-byte-max BITS
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Function: va_arg AP TYPE
Package

with-c-syntax.stdlib

Source

stdarg.lisp (file)

Function: va_copy DEST SRC
Package

with-c-syntax.stdlib

Source

stdarg.lisp (file)

Function: va_end AP
Package

with-c-syntax.stdlib

Source

stdarg.lisp (file)

Function: va_start AP LAST
Package

with-c-syntax.stdlib

Source

stdarg.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.5 Generic functions

Generic Function: lexer-error-token CONDITION
Package

with-c-syntax.core

Methods
Method: lexer-error-token (CONDITION lexer-error)
Source

condition.lisp (file)

Generic Function: library-macro-error-args CONDITION
Package

with-c-syntax.stdlib

Methods
Method: library-macro-error-args (CONDITION library-macro-error)
Source

util.lisp (file)

Generic Function: library-macro-error-name CONDITION
Package

with-c-syntax.stdlib

Methods
Method: library-macro-error-name (CONDITION library-macro-error)
Source

util.lisp (file)

Generic Function: pseudo-pointer-error-offset CONDITION
Package

with-c-syntax.core

Methods
Method: pseudo-pointer-error-offset (CONDITION pseudo-pointer-error)
Source

condition.lisp (file)

Generic Function: pseudo-pointer-error-pointee CONDITION
Package

with-c-syntax.core

Methods
Method: pseudo-pointer-error-pointee (CONDITION pseudo-pointer-error)
Source

condition.lisp (file)

Generic Function: pseudo-pointer-error-pointer CONDITION
Package

with-c-syntax.core

Methods
Method: pseudo-pointer-error-pointer (CONDITION pseudo-pointer-error)
Source

condition.lisp (file)

Generic Function: struct-member-index-table OBJECT
Package

with-c-syntax.core

Methods
Method: struct-member-index-table (STRUCT struct)

automatically generated reader method

Source

struct.lisp (file)

Generic Function: struct-member-vector OBJECT
Generic Function: (setf struct-member-vector) NEW-VALUE OBJECT
Package

with-c-syntax.core

Methods
Method: struct-member-vector (STRUCT struct)

automatically generated reader method

Source

struct.lisp (file)

Method: (setf struct-member-vector) NEW-VALUE (STRUCT struct)

automatically generated writer method

Source

struct.lisp (file)

Generic Function: with-c-syntax-parse-error-yacc-error CONDITION
Package

with-c-syntax.core

Methods
Method: with-c-syntax-parse-error-yacc-error (CONDITION with-c-syntax-parse-error)
Source

condition.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.6 Conditions

Condition: compile-error ()

Used at compiling with-c-syntax forms.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Condition: lexer-error ()

Used in the lexer.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Direct methods

lexer-error-token (method)

Direct slots
Slot: token
Initargs

:token

Readers

lexer-error-token (generic function)

Condition: library-macro-error ()
Package

with-c-syntax.stdlib

Source

util.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

library-macro-error-name (generic function)

Slot: args
Initargs

:args

Readers

library-macro-error-args (generic function)

Condition: preprocess-error ()

Used in the preprocessor.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Condition: pseudo-pointer-dangling-error ()

Used when trying to use a dangling pointer.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

pseudo-pointer-error (condition)

Condition: pseudo-pointer-error ()

Used at using pseudo-pointers.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

runtime-error (condition)

Direct subclasses
Direct methods
Direct slots
Slot: pointer
Initargs

:pointer

Readers

pseudo-pointer-error-pointer (generic function)

Slot: pointee
Initargs

:pointee

Readers

pseudo-pointer-error-pointee (generic function)

Slot: offset
Initargs

:offset

Readers

pseudo-pointer-error-offset (generic function)

Condition: pseudo-pointer-type-error ()

Used when trying to make a pointer to a un-pointable object.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

pseudo-pointer-error (condition)

Condition: pseudo-pointer-write-error ()

Used when trying to write into a non-writable pointer.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

pseudo-pointer-error (condition)

Condition: runtime-error ()

Used at evaluating with-c-syntax forms.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Direct subclasses

pseudo-pointer-error (condition)

Condition: with-c-syntax-parse-error ()

Used when an error occurred at the parser.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

with-c-syntax-error (condition)

Direct methods

with-c-syntax-parse-error-yacc-error (method)

Direct slots
Slot: yacc-error
Initargs

:yacc-error

Readers

with-c-syntax-parse-error-yacc-error (generic function)

Condition: with-c-syntax-reader-error ()

Used in the with-c-syntax reader. Not for the installer of the with-c-syntax reader.

Package

with-c-syntax.core

Source

condition.lisp (file)

Direct superclasses

Previous: , Up: Internal definitions   [Contents][Index]

6.2.7 Structures

Structure: decl-specs ()

Represents ’decl-specs’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct subclasses

spec-qualifier-list (structure)

Direct methods

make-load-form (method)

Direct slots
Slot: type-spec
Readers

decl-specs-type-spec (function)

Writers

(setf decl-specs-type-spec) (function)

Slot: storage-class
Readers

decl-specs-storage-class (function)

Writers

(setf decl-specs-storage-class) (function)

Slot: qualifier
Readers

decl-specs-qualifier (function)

Writers

(setf decl-specs-qualifier) (function)

Slot: lisp-type
Initform

t

Readers

decl-specs-lisp-type (function)

Writers

(setf decl-specs-lisp-type) (function)

Slot: tag
Readers

decl-specs-tag (function)

Writers

(setf decl-specs-tag) (function)

Slot: typedef-init-decl
Readers

decl-specs-typedef-init-decl (function)

Writers

(setf decl-specs-typedef-init-decl) (function)

Slot: enum-bindings
Readers

decl-specs-enum-bindings (function)

Writers

(setf decl-specs-enum-bindings) (function)

Slot: struct-spec
Readers

decl-specs-struct-spec (function)

Writers

(setf decl-specs-struct-spec) (function)

Structure: enum-spec ()

Represents ’enum-spec’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods

make-load-form (method)

Direct slots
Slot: id
Readers

enum-spec-id (function)

Writers

(setf enum-spec-id) (function)

Slot: enumerator-list
Readers

enum-spec-enumerator-list (function)

Writers

(setf enum-spec-enumerator-list) (function)

Structure: enumerator ()

Represents ’enumerator’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

init-declarator (structure)

Direct methods

make-load-form (method)

Structure: function-definition ()

Represents a function definition.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: func-name
Readers

function-definition-func-name (function)

Writers

(setf function-definition-func-name) (function)

Slot: storage-class
Readers

function-definition-storage-class (function)

Writers

(setf function-definition-storage-class) (function)

Slot: func-args
Readers

function-definition-func-args (function)

Writers

(setf function-definition-func-args) (function)

Slot: func-body
Readers

function-definition-func-body (function)

Writers

(setf function-definition-func-body) (function)

Slot: lisp-type
Readers

function-definition-lisp-type (function)

Writers

(setf function-definition-lisp-type) (function)

Structure: init-declarator ()

Represents ’init-declarator’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct subclasses
Direct methods

make-load-form (method)

Direct slots
Slot: declarator
Readers

init-declarator-declarator (function)

Writers

(setf init-declarator-declarator) (function)

Slot: initializer
Readers

init-declarator-initializer (function)

Writers

(setf init-declarator-initializer) (function)

Slot: lisp-name
Readers

init-declarator-lisp-name (function)

Writers

(setf init-declarator-lisp-name) (function)

Slot: lisp-initform
Readers

init-declarator-lisp-initform (function)

Writers

(setf init-declarator-lisp-initform) (function)

Slot: lisp-type
Readers

init-declarator-lisp-type (function)

Writers

(setf init-declarator-lisp-type) (function)

Structure: spec-qualifier-list ()

Represents ’spec-qualifier-list’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

decl-specs (structure)

Direct methods

make-load-form (method)

Structure: stat ()

Represents statements in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct slots
Slot: code
Readers

stat-code (function)

Writers

(setf stat-code) (function)

Slot: declarations
Readers

stat-declarations (function)

Writers

(setf stat-declarations) (function)

Slot: break-statements
Readers

stat-break-statements (function)

Writers

(setf stat-break-statements) (function)

Slot: continue-statements
Readers

stat-continue-statements (function)

Writers

(setf stat-continue-statements) (function)

Slot: case-label-list
Readers

stat-case-label-list (function)

Writers

(setf stat-case-label-list) (function)

Structure: struct-declarator ()

Represents ’struct-declarator’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

init-declarator (structure)

Direct methods

make-load-form (method)

Direct slots
Slot: bits
Readers

struct-declarator-bits (function)

Writers

(setf struct-declarator-bits) (function)

Structure: struct-or-union-spec ()

Represents ’struct-or-union-spec’ in C syntax BNF.

Package

with-c-syntax.core

Source

with-c-syntax.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods

make-load-form (method)

Direct slots
Slot: type
Readers

struct-or-union-spec-type (function)

Writers

(setf struct-or-union-spec-type) (function)

Slot: id
Readers

struct-or-union-spec-id (function)

Writers

(setf struct-or-union-spec-id) (function)

Slot: struct-decl-list
Readers

struct-or-union-spec-struct-decl-list (function)

Writers

(setf struct-or-union-spec-struct-decl-list) (function)

Structure: struct-spec ()

Represents a struct/union specification.

Package

with-c-syntax.core

Source

struct.lisp (file)

Direct superclasses

structure-object (structure)

Direct methods

make-load-form (method)

Direct slots
Slot: struct-name
Readers

struct-spec-struct-name (function)

Writers

(setf struct-spec-struct-name) (function)

Slot: union-p
Readers

struct-spec-union-p (function)

Writers

(setf struct-spec-union-p) (function)

Slot: member-defs
Readers

struct-spec-member-defs (function)

Writers

(setf struct-spec-member-defs) (function)

Slot: defined-in-this-unit
Readers

struct-spec-defined-in-this-unit (function)

Writers

(setf struct-spec-defined-in-this-unit) (function)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   F   L   M   W  
Index Entry  Section

F
File, Lisp, with-c-syntax.asd: The with-c-syntax<dot>asd file
File, Lisp, with-c-syntax/libc/float.lisp: The with-c-syntax/libc/float<dot>lisp file
File, Lisp, with-c-syntax/libc/iso646.lisp: The with-c-syntax/libc/iso646<dot>lisp file
File, Lisp, with-c-syntax/libc/limits.lisp: The with-c-syntax/libc/limits<dot>lisp file
File, Lisp, with-c-syntax/libc/package.lisp: The with-c-syntax/libc/package<dot>lisp file
File, Lisp, with-c-syntax/libc/stdarg.lisp: The with-c-syntax/libc/stdarg<dot>lisp file
File, Lisp, with-c-syntax/libc/stddef.lisp: The with-c-syntax/libc/stddef<dot>lisp file
File, Lisp, with-c-syntax/libc/util.lisp: The with-c-syntax/libc/util<dot>lisp file
File, Lisp, with-c-syntax/package.lisp: The with-c-syntax/package<dot>lisp file
File, Lisp, with-c-syntax/src/condition.lisp: The with-c-syntax/src/condition<dot>lisp file
File, Lisp, with-c-syntax/src/keywords.lisp: The with-c-syntax/src/keywords<dot>lisp file
File, Lisp, with-c-syntax/src/package.lisp: The with-c-syntax/src/package<dot>lisp file
File, Lisp, with-c-syntax/src/preprocessor.lisp: The with-c-syntax/src/preprocessor<dot>lisp file
File, Lisp, with-c-syntax/src/pseudo-pointer.lisp: The with-c-syntax/src/pseudo-pointer<dot>lisp file
File, Lisp, with-c-syntax/src/reader.lisp: The with-c-syntax/src/reader<dot>lisp file
File, Lisp, with-c-syntax/src/struct.lisp: The with-c-syntax/src/struct<dot>lisp file
File, Lisp, with-c-syntax/src/typedef.lisp: The with-c-syntax/src/typedef<dot>lisp file
File, Lisp, with-c-syntax/src/util.lisp: The with-c-syntax/src/util<dot>lisp file
File, Lisp, with-c-syntax/src/with-c-syntax.lisp: The with-c-syntax/src/with-c-syntax<dot>lisp file

L
Lisp File, with-c-syntax.asd: The with-c-syntax<dot>asd file
Lisp File, with-c-syntax/libc/float.lisp: The with-c-syntax/libc/float<dot>lisp file
Lisp File, with-c-syntax/libc/iso646.lisp: The with-c-syntax/libc/iso646<dot>lisp file
Lisp File, with-c-syntax/libc/limits.lisp: The with-c-syntax/libc/limits<dot>lisp file
Lisp File, with-c-syntax/libc/package.lisp: The with-c-syntax/libc/package<dot>lisp file
Lisp File, with-c-syntax/libc/stdarg.lisp: The with-c-syntax/libc/stdarg<dot>lisp file
Lisp File, with-c-syntax/libc/stddef.lisp: The with-c-syntax/libc/stddef<dot>lisp file
Lisp File, with-c-syntax/libc/util.lisp: The with-c-syntax/libc/util<dot>lisp file
Lisp File, with-c-syntax/package.lisp: The with-c-syntax/package<dot>lisp file
Lisp File, with-c-syntax/src/condition.lisp: The with-c-syntax/src/condition<dot>lisp file
Lisp File, with-c-syntax/src/keywords.lisp: The with-c-syntax/src/keywords<dot>lisp file
Lisp File, with-c-syntax/src/package.lisp: The with-c-syntax/src/package<dot>lisp file
Lisp File, with-c-syntax/src/preprocessor.lisp: The with-c-syntax/src/preprocessor<dot>lisp file
Lisp File, with-c-syntax/src/pseudo-pointer.lisp: The with-c-syntax/src/pseudo-pointer<dot>lisp file
Lisp File, with-c-syntax/src/reader.lisp: The with-c-syntax/src/reader<dot>lisp file
Lisp File, with-c-syntax/src/struct.lisp: The with-c-syntax/src/struct<dot>lisp file
Lisp File, with-c-syntax/src/typedef.lisp: The with-c-syntax/src/typedef<dot>lisp file
Lisp File, with-c-syntax/src/util.lisp: The with-c-syntax/src/util<dot>lisp file
Lisp File, with-c-syntax/src/with-c-syntax.lisp: The with-c-syntax/src/with-c-syntax<dot>lisp file

M
Module, with-c-syntax/libc: The with-c-syntax/libc module
Module, with-c-syntax/src: The with-c-syntax/src module

W
with-c-syntax.asd: The with-c-syntax<dot>asd file
with-c-syntax/libc: The with-c-syntax/libc module
with-c-syntax/libc/float.lisp: The with-c-syntax/libc/float<dot>lisp file
with-c-syntax/libc/iso646.lisp: The with-c-syntax/libc/iso646<dot>lisp file
with-c-syntax/libc/limits.lisp: The with-c-syntax/libc/limits<dot>lisp file
with-c-syntax/libc/package.lisp: The with-c-syntax/libc/package<dot>lisp file
with-c-syntax/libc/stdarg.lisp: The with-c-syntax/libc/stdarg<dot>lisp file
with-c-syntax/libc/stddef.lisp: The with-c-syntax/libc/stddef<dot>lisp file
with-c-syntax/libc/util.lisp: The with-c-syntax/libc/util<dot>lisp file
with-c-syntax/package.lisp: The with-c-syntax/package<dot>lisp file
with-c-syntax/src: The with-c-syntax/src module
with-c-syntax/src/condition.lisp: The with-c-syntax/src/condition<dot>lisp file
with-c-syntax/src/keywords.lisp: The with-c-syntax/src/keywords<dot>lisp file
with-c-syntax/src/package.lisp: The with-c-syntax/src/package<dot>lisp file
with-c-syntax/src/preprocessor.lisp: The with-c-syntax/src/preprocessor<dot>lisp file
with-c-syntax/src/pseudo-pointer.lisp: The with-c-syntax/src/pseudo-pointer<dot>lisp file
with-c-syntax/src/reader.lisp: The with-c-syntax/src/reader<dot>lisp file
with-c-syntax/src/struct.lisp: The with-c-syntax/src/struct<dot>lisp file
with-c-syntax/src/typedef.lisp: The with-c-syntax/src/typedef<dot>lisp file
with-c-syntax/src/util.lisp: The with-c-syntax/src/util<dot>lisp file
with-c-syntax/src/with-c-syntax.lisp: The with-c-syntax/src/with-c-syntax<dot>lisp file

Jump to:   F   L   M   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
A   C   D   E   F   G   I   L   M   N   P   R   S   T   U   V   W  
Index Entry  Section

(
(setf decl-specs-enum-bindings): Internal functions
(setf decl-specs-lisp-type): Internal functions
(setf decl-specs-qualifier): Internal functions
(setf decl-specs-storage-class): Internal functions
(setf decl-specs-struct-spec): Internal functions
(setf decl-specs-tag): Internal functions
(setf decl-specs-type-spec): Internal functions
(setf decl-specs-typedef-init-decl): Internal functions
(setf enum-spec-enumerator-list): Internal functions
(setf enum-spec-id): Internal functions
(setf enumerator-declarator): Internal functions
(setf enumerator-initializer): Internal functions
(setf enumerator-lisp-initform): Internal functions
(setf enumerator-lisp-name): Internal functions
(setf enumerator-lisp-type): Internal functions
(setf function-definition-func-args): Internal functions
(setf function-definition-func-body): Internal functions
(setf function-definition-func-name): Internal functions
(setf function-definition-lisp-type): Internal functions
(setf function-definition-storage-class): Internal functions
(setf init-declarator-declarator): Internal functions
(setf init-declarator-initializer): Internal functions
(setf init-declarator-lisp-initform): Internal functions
(setf init-declarator-lisp-name): Internal functions
(setf init-declarator-lisp-type): Internal functions
(setf lisp-subscript): Internal functions
(setf pseudo-pointer-dereference): Exported functions
(setf ref-dimension-list): Internal functions
(setf spec-qualifier-list-enum-bindings): Internal functions
(setf spec-qualifier-list-lisp-type): Internal functions
(setf spec-qualifier-list-qualifier): Internal functions
(setf spec-qualifier-list-storage-class): Internal functions
(setf spec-qualifier-list-struct-spec): Internal functions
(setf spec-qualifier-list-tag): Internal functions
(setf spec-qualifier-list-type-spec): Internal functions
(setf spec-qualifier-list-typedef-init-decl): Internal functions
(setf stat-break-statements): Internal functions
(setf stat-case-label-list): Internal functions
(setf stat-code): Internal functions
(setf stat-continue-statements): Internal functions
(setf stat-declarations): Internal functions
(setf struct-declarator-bits): Internal functions
(setf struct-declarator-declarator): Internal functions
(setf struct-declarator-initializer): Internal functions
(setf struct-declarator-lisp-initform): Internal functions
(setf struct-declarator-lisp-name): Internal functions
(setf struct-declarator-lisp-type): Internal functions
(setf struct-member): Exported functions
(setf struct-member-vector): Internal generic functions
(setf struct-member-vector): Internal generic functions
(setf struct-or-union-spec-id): Internal functions
(setf struct-or-union-spec-struct-decl-list): Internal functions
(setf struct-or-union-spec-type): Internal functions
(setf struct-spec-defined-in-this-unit): Internal functions
(setf struct-spec-member-defs): Internal functions
(setf struct-spec-struct-name): Internal functions
(setf struct-spec-union-p): Internal functions

A
add-predefined-typedef-and-aliases: Internal functions
add-preprocessor-macro: Exported functions
add-preprocessor-macro-with-upcase: Internal functions
add-struct-spec: Exported functions
add-to-tail: Internal functions
add-typedef: Exported functions
array-dimension-combine: Internal functions
ashf: Internal macros

C
check-reader-level: Internal macros
concatenate-comma-list: Internal functions
copy-decl-specs: Internal functions
copy-enum-spec: Internal functions
copy-enumerator: Internal functions
copy-function-definition: Internal functions
copy-init-declarator: Internal functions
copy-spec-qualifier-list: Internal functions
copy-stat: Internal functions
copy-struct-declarator: Internal functions
copy-struct-or-union-spec: Internal functions
copy-struct-spec: Internal functions

D
decl-specs-enum-bindings: Internal functions
decl-specs-lisp-type: Internal functions
decl-specs-p: Internal functions
decl-specs-qualifier: Internal functions
decl-specs-storage-class: Internal functions
decl-specs-struct-spec: Internal functions
decl-specs-tag: Internal functions
decl-specs-type-spec: Internal functions
decl-specs-typedef-init-decl: Internal functions
dimension-list-max-dimensions: Internal functions
divf: Internal macros

E
enum-spec-enumerator-list: Internal functions
enum-spec-id: Internal functions
enum-spec-p: Internal functions
enumerator-declarator: Internal functions
enumerator-initializer: Internal functions
enumerator-lisp-initform: Internal functions
enumerator-lisp-name: Internal functions
enumerator-lisp-type: Internal functions
enumerator-p: Internal functions
error-lisp-subscript: Internal functions
expand-if-statement: Internal functions
expand-init-declarator-init: Internal functions
expand-loop: Internal functions
expand-switch: Internal functions
expand-toplevel: Internal functions
expand-toplevel-init-decls: Internal functions
expand-toplevel-stat: Internal functions
expand-translation-unit: Internal functions

F
finalize-decl-specs: Internal functions
finalize-enum-spec: Internal functions
finalize-init-declarator: Internal functions
finalize-struct-or-union-spec: Internal functions
finalize-type-spec: Internal functions
find-preprocessor-macro: Exported functions
find-struct-spec: Exported functions
find-typedef: Exported functions
Function, (setf decl-specs-enum-bindings): Internal functions
Function, (setf decl-specs-lisp-type): Internal functions
Function, (setf decl-specs-qualifier): Internal functions
Function, (setf decl-specs-storage-class): Internal functions
Function, (setf decl-specs-struct-spec): Internal functions
Function, (setf decl-specs-tag): Internal functions
Function, (setf decl-specs-type-spec): Internal functions
Function, (setf decl-specs-typedef-init-decl): Internal functions
Function, (setf enum-spec-enumerator-list): Internal functions
Function, (setf enum-spec-id): Internal functions
Function, (setf enumerator-declarator): Internal functions
Function, (setf enumerator-initializer): Internal functions
Function, (setf enumerator-lisp-initform): Internal functions
Function, (setf enumerator-lisp-name): Internal functions
Function, (setf enumerator-lisp-type): Internal functions
Function, (setf function-definition-func-args): Internal functions
Function, (setf function-definition-func-body): Internal functions
Function, (setf function-definition-func-name): Internal functions
Function, (setf function-definition-lisp-type): Internal functions
Function, (setf function-definition-storage-class): Internal functions
Function, (setf init-declarator-declarator): Internal functions
Function, (setf init-declarator-initializer): Internal functions
Function, (setf init-declarator-lisp-initform): Internal functions
Function, (setf init-declarator-lisp-name): Internal functions
Function, (setf init-declarator-lisp-type): Internal functions
Function, (setf lisp-subscript): Internal functions
Function, (setf pseudo-pointer-dereference): Exported functions
Function, (setf ref-dimension-list): Internal functions
Function, (setf spec-qualifier-list-enum-bindings): Internal functions
Function, (setf spec-qualifier-list-lisp-type): Internal functions
Function, (setf spec-qualifier-list-qualifier): Internal functions
Function, (setf spec-qualifier-list-storage-class): Internal functions
Function, (setf spec-qualifier-list-struct-spec): Internal functions
Function, (setf spec-qualifier-list-tag): Internal functions
Function, (setf spec-qualifier-list-type-spec): Internal functions
Function, (setf spec-qualifier-list-typedef-init-decl): Internal functions
Function, (setf stat-break-statements): Internal functions
Function, (setf stat-case-label-list): Internal functions
Function, (setf stat-code): Internal functions
Function, (setf stat-continue-statements): Internal functions
Function, (setf stat-declarations): Internal functions
Function, (setf struct-declarator-bits): Internal functions
Function, (setf struct-declarator-declarator): Internal functions
Function, (setf struct-declarator-initializer): Internal functions
Function, (setf struct-declarator-lisp-initform): Internal functions
Function, (setf struct-declarator-lisp-name): Internal functions
Function, (setf struct-declarator-lisp-type): Internal functions
Function, (setf struct-member): Exported functions
Function, (setf struct-or-union-spec-id): Internal functions
Function, (setf struct-or-union-spec-struct-decl-list): Internal functions
Function, (setf struct-or-union-spec-type): Internal functions
Function, (setf struct-spec-defined-in-this-unit): Internal functions
Function, (setf struct-spec-member-defs): Internal functions
Function, (setf struct-spec-struct-name): Internal functions
Function, (setf struct-spec-union-p): Internal functions
Function, add-predefined-typedef-and-aliases: Internal functions
Function, add-preprocessor-macro: Exported functions
Function, add-preprocessor-macro-with-upcase: Internal functions
Function, add-struct-spec: Exported functions
Function, add-to-tail: Internal functions
Function, add-typedef: Exported functions
Function, array-dimension-combine: Internal functions
Function, concatenate-comma-list: Internal functions
Function, copy-decl-specs: Internal functions
Function, copy-enum-spec: Internal functions
Function, copy-enumerator: Internal functions
Function, copy-function-definition: Internal functions
Function, copy-init-declarator: Internal functions
Function, copy-spec-qualifier-list: Internal functions
Function, copy-stat: Internal functions
Function, copy-struct-declarator: Internal functions
Function, copy-struct-or-union-spec: Internal functions
Function, copy-struct-spec: Internal functions
Function, decl-specs-enum-bindings: Internal functions
Function, decl-specs-lisp-type: Internal functions
Function, decl-specs-p: Internal functions
Function, decl-specs-qualifier: Internal functions
Function, decl-specs-storage-class: Internal functions
Function, decl-specs-struct-spec: Internal functions
Function, decl-specs-tag: Internal functions
Function, decl-specs-type-spec: Internal functions
Function, decl-specs-typedef-init-decl: Internal functions
Function, dimension-list-max-dimensions: Internal functions
Function, enum-spec-enumerator-list: Internal functions
Function, enum-spec-id: Internal functions
Function, enum-spec-p: Internal functions
Function, enumerator-declarator: Internal functions
Function, enumerator-initializer: Internal functions
Function, enumerator-lisp-initform: Internal functions
Function, enumerator-lisp-name: Internal functions
Function, enumerator-lisp-type: Internal functions
Function, enumerator-p: Internal functions
Function, error-lisp-subscript: Internal functions
Function, expand-if-statement: Internal functions
Function, expand-init-declarator-init: Internal functions
Function, expand-loop: Internal functions
Function, expand-switch: Internal functions
Function, expand-toplevel: Internal functions
Function, expand-toplevel-init-decls: Internal functions
Function, expand-toplevel-stat: Internal functions
Function, expand-translation-unit: Internal functions
Function, finalize-decl-specs: Internal functions
Function, finalize-enum-spec: Internal functions
Function, finalize-init-declarator: Internal functions
Function, finalize-struct-or-union-spec: Internal functions
Function, finalize-type-spec: Internal functions
Function, find-preprocessor-macro: Exported functions
Function, find-struct-spec: Exported functions
Function, find-typedef: Exported functions
Function, function-definition-func-args: Internal functions
Function, function-definition-func-body: Internal functions
Function, function-definition-func-name: Internal functions
Function, function-definition-lisp-type: Internal functions
Function, function-definition-p: Internal functions
Function, function-definition-storage-class: Internal functions
Function, init-declarator-declarator: Internal functions
Function, init-declarator-initializer: Internal functions
Function, init-declarator-lisp-initform: Internal functions
Function, init-declarator-lisp-name: Internal functions
Function, init-declarator-lisp-type: Internal functions
Function, init-declarator-p: Internal functions
Function, install-c-reader: Internal functions
Function, invalidate-all-pseudo-pointers: Exported functions
Function, lisp-subscript: Internal functions
Function, lispify-address-of: Internal functions
Function, lispify-binary: Internal functions
Function, lispify-cast: Internal functions
Function, lispify-funcall: Internal functions
Function, lispify-function-definition: Internal functions
Function, lispify-offsetof: Internal functions
Function, lispify-type-name: Internal functions
Function, lispify-unary: Internal functions
Function, list-lexer: Internal functions
Function, make-decl-specs: Internal functions
Function, make-dimension-list: Internal functions
Function, make-dimension-list-load-form: Internal functions
Function, make-enum-spec: Internal functions
Function, make-enumerator: Internal functions
Function, make-function-definition: Internal functions
Function, make-init-declarator: Internal functions
Function, make-pseudo-pointer: Exported functions
Function, make-reduced-dimension-array: Internal functions
Function, make-spec-qualifier-list: Internal functions
Function, make-stat: Internal functions
Function, make-stat-unresolved-break: Internal functions
Function, make-stat-unresolved-continue: Internal functions
Function, make-struct: Exported functions
Function, make-struct-declarator: Internal functions
Function, make-struct-or-union-spec: Internal functions
Function, make-struct-spec: Internal functions
Function, mantissa-radix-change: Internal functions
Function, merge-stat: Internal functions
Function, nreconc-to: Internal functions
Function, preprocessor: Exported functions
Function, preprocessor-call-macro: Internal functions
Function, preprocessor-initial-set: Internal functions
Function, pseudo-pointer-dereference: Exported functions
Function, pseudo-pointer-extract: Internal functions
Function, pseudo-pointer-invalidate: Exported functions
Function, pseudo-pointer-pointable-p: Exported functions
Function, push-case-label: Internal functions
Function, read-2chars-delimited-list: Internal functions
Function, read-double-quote: Internal functions
Function, read-escaped-char: Internal functions
Function, read-in-c-syntax: Internal functions
Function, read-in-previous-syntax: Internal functions
Function, read-lonely-single-symbol: Internal functions
Function, read-minus: Internal functions
Function, read-shift: Internal functions
Function, read-single-character-symbol: Internal functions
Function, read-single-or-equal-or-self-symbol: Internal functions
Function, read-single-or-equal-symbol: Internal functions
Function, read-single-quote: Internal functions
Function, read-slash: Internal functions
Function, read-slash-comment: Internal functions
Function, ref-dimension-list: Internal functions
Function, remove-preprocessor-macro: Exported functions
Function, remove-struct-spec: Exported functions
Function, remove-typedef: Exported functions
Function, revappend-to: Internal functions
Function, reverse-ash: Internal functions
Function, rewrite-break-statements: Internal functions
Function, rewrite-continue-statements: Internal functions
Function, setup-init-list: Internal functions
Function, signed-byte-max: Internal functions
Function, signed-byte-min: Internal functions
Function, spec-qualifier-list-enum-bindings: Internal functions
Function, spec-qualifier-list-lisp-type: Internal functions
Function, spec-qualifier-list-p: Internal functions
Function, spec-qualifier-list-qualifier: Internal functions
Function, spec-qualifier-list-storage-class: Internal functions
Function, spec-qualifier-list-struct-spec: Internal functions
Function, spec-qualifier-list-tag: Internal functions
Function, spec-qualifier-list-type-spec: Internal functions
Function, spec-qualifier-list-typedef-init-decl: Internal functions
Function, stat-break-statements: Internal functions
Function, stat-case-label-list: Internal functions
Function, stat-code: Internal functions
Function, stat-continue-statements: Internal functions
Function, stat-declarations: Internal functions
Function, stat-p: Internal functions
Function, struct-declarator-bits: Internal functions
Function, struct-declarator-declarator: Internal functions
Function, struct-declarator-initializer: Internal functions
Function, struct-declarator-lisp-initform: Internal functions
Function, struct-declarator-lisp-name: Internal functions
Function, struct-declarator-lisp-type: Internal functions
Function, struct-declarator-p: Internal functions
Function, struct-member: Exported functions
Function, struct-member-index: Internal functions
Function, struct-or-union-spec-id: Internal functions
Function, struct-or-union-spec-p: Internal functions
Function, struct-or-union-spec-struct-decl-list: Internal functions
Function, struct-or-union-spec-type: Internal functions
Function, struct-spec-defined-in-this-unit: Internal functions
Function, struct-spec-member-defs: Internal functions
Function, struct-spec-p: Internal functions
Function, struct-spec-struct-name: Internal functions
Function, struct-spec-union-p: Internal functions
Function, terminating-char-p: Internal functions
Function, translate-reader-level: Internal functions
Function, unsigned-byte-max: Internal functions
Function, va_arg: Internal functions
Function, va_copy: Internal functions
Function, va_end: Internal functions
Function, va_start: Internal functions
function-definition-func-args: Internal functions
function-definition-func-body: Internal functions
function-definition-func-name: Internal functions
function-definition-lisp-type: Internal functions
function-definition-p: Internal functions
function-definition-storage-class: Internal functions

G
Generic Function, (setf struct-member-vector): Internal generic functions
Generic Function, lexer-error-token: Internal generic functions
Generic Function, library-macro-error-args: Internal generic functions
Generic Function, library-macro-error-name: Internal generic functions
Generic Function, pseudo-pointer-error-offset: Internal generic functions
Generic Function, pseudo-pointer-error-pointee: Internal generic functions
Generic Function, pseudo-pointer-error-pointer: Internal generic functions
Generic Function, struct-member-index-table: Internal generic functions
Generic Function, struct-member-vector: Internal generic functions
Generic Function, with-c-syntax-parse-error-yacc-error: Internal generic functions
get-varargs: Exported macros

I
init-declarator-declarator: Internal functions
init-declarator-initializer: Internal functions
init-declarator-lisp-initform: Internal functions
init-declarator-lisp-name: Internal functions
init-declarator-lisp-type: Internal functions
init-declarator-p: Internal functions
install-c-reader: Internal functions
invalidate-all-pseudo-pointers: Exported functions

L
lexer-error-token: Internal generic functions
lexer-error-token: Internal generic functions
library-macro-error-args: Internal generic functions
library-macro-error-args: Internal generic functions
library-macro-error-name: Internal generic functions
library-macro-error-name: Internal generic functions
lisp-subscript: Internal functions
lispify-address-of: Internal functions
lispify-binary: Internal functions
lispify-cast: Internal functions
lispify-funcall: Internal functions
lispify-function-definition: Internal functions
lispify-offsetof: Internal functions
lispify-type-name: Internal functions
lispify-unary: Internal functions
list-lexer: Internal functions
logandf: Internal macros
logiorf: Internal macros
logxorf: Internal macros

M
Macro, ashf: Internal macros
Macro, check-reader-level: Internal macros
Macro, divf: Internal macros
Macro, get-varargs: Exported macros
Macro, logandf: Internal macros
Macro, logiorf: Internal macros
Macro, logxorf: Internal macros
Macro, modf: Internal macros
Macro, mulf: Internal macros
Macro, nreconcf: Internal macros
Macro, post-incf: Internal macros
Macro, push-right: Internal macros
Macro, revappendf: Internal macros
Macro, reverse-ashf: Internal macros
Macro, unuse-reader: Exported macros
Macro, use-reader: Exported macros
Macro, with-c-compilation-unit: Internal macros
Macro, with-c-syntax: Exported macros
Macro, with-dynamic-bound-symbols: Internal macros
Macro, with-pseudo-pointer-scope: Exported macros
make-decl-specs: Internal functions
make-dimension-list: Internal functions
make-dimension-list-load-form: Internal functions
make-enum-spec: Internal functions
make-enumerator: Internal functions
make-function-definition: Internal functions
make-init-declarator: Internal functions
make-pseudo-pointer: Exported functions
make-reduced-dimension-array: Internal functions
make-spec-qualifier-list: Internal functions
make-stat: Internal functions
make-stat-unresolved-break: Internal functions
make-stat-unresolved-continue: Internal functions
make-struct: Exported functions
make-struct-declarator: Internal functions
make-struct-or-union-spec: Internal functions
make-struct-spec: Internal functions
mantissa-radix-change: Internal functions
merge-stat: Internal functions
Method, (setf struct-member-vector): Internal generic functions
Method, lexer-error-token: Internal generic functions
Method, library-macro-error-args: Internal generic functions
Method, library-macro-error-name: Internal generic functions
Method, pseudo-pointer-error-offset: Internal generic functions
Method, pseudo-pointer-error-pointee: Internal generic functions
Method, pseudo-pointer-error-pointer: Internal generic functions
Method, struct-member-index-table: Internal generic functions
Method, struct-member-vector: Internal generic functions
Method, with-c-syntax-parse-error-yacc-error: Internal generic functions
modf: Internal macros
mulf: Internal macros

N
nreconc-to: Internal functions
nreconcf: Internal macros

P
post-incf: Internal macros
preprocessor: Exported functions
preprocessor-call-macro: Internal functions
preprocessor-initial-set: Internal functions
pseudo-pointer-dereference: Exported functions
pseudo-pointer-error-offset: Internal generic functions
pseudo-pointer-error-offset: Internal generic functions
pseudo-pointer-error-pointee: Internal generic functions
pseudo-pointer-error-pointee: Internal generic functions
pseudo-pointer-error-pointer: Internal generic functions
pseudo-pointer-error-pointer: Internal generic functions
pseudo-pointer-extract: Internal functions
pseudo-pointer-invalidate: Exported functions
pseudo-pointer-pointable-p: Exported functions
push-case-label: Internal functions
push-right: Internal macros

R
read-2chars-delimited-list: Internal functions
read-double-quote: Internal functions
read-escaped-char: Internal functions
read-in-c-syntax: Internal functions
read-in-previous-syntax: Internal functions
read-lonely-single-symbol: Internal functions
read-minus: Internal functions
read-shift: Internal functions
read-single-character-symbol: Internal functions
read-single-or-equal-or-self-symbol: Internal functions
read-single-or-equal-symbol: Internal functions
read-single-quote: Internal functions
read-slash: Internal functions
read-slash-comment: Internal functions
ref-dimension-list: Internal functions
remove-preprocessor-macro: Exported functions
remove-struct-spec: Exported functions
remove-typedef: Exported functions
revappend-to: Internal functions
revappendf: Internal macros
reverse-ash: Internal functions
reverse-ashf: Internal macros
rewrite-break-statements: Internal functions
rewrite-continue-statements: Internal functions

S
setup-init-list: Internal functions
signed-byte-max: Internal functions
signed-byte-min: Internal functions
spec-qualifier-list-enum-bindings: Internal functions
spec-qualifier-list-lisp-type: Internal functions
spec-qualifier-list-p: Internal functions
spec-qualifier-list-qualifier: Internal functions
spec-qualifier-list-storage-class: Internal functions
spec-qualifier-list-struct-spec: Internal functions
spec-qualifier-list-tag: Internal functions
spec-qualifier-list-type-spec: Internal functions
spec-qualifier-list-typedef-init-decl: Internal functions
stat-break-statements: Internal functions
stat-case-label-list: Internal functions
stat-code: Internal functions
stat-continue-statements: Internal functions
stat-declarations: Internal functions
stat-p: Internal functions
struct-declarator-bits: Internal functions
struct-declarator-declarator: Internal functions
struct-declarator-initializer: Internal functions
struct-declarator-lisp-initform: Internal functions
struct-declarator-lisp-name: Internal functions
struct-declarator-lisp-type: Internal functions
struct-declarator-p: Internal functions
struct-member: Exported functions
struct-member-index: Internal functions
struct-member-index-table: Internal generic functions
struct-member-index-table: Internal generic functions
struct-member-vector: Internal generic functions
struct-member-vector: Internal generic functions
struct-or-union-spec-id: Internal functions
struct-or-union-spec-p: Internal functions
struct-or-union-spec-struct-decl-list: Internal functions
struct-or-union-spec-type: Internal functions
struct-spec-defined-in-this-unit: Internal functions
struct-spec-member-defs: Internal functions
struct-spec-p: Internal functions
struct-spec-struct-name: Internal functions
struct-spec-union-p: Internal functions

T
terminating-char-p: Internal functions
translate-reader-level: Internal functions

U
unsigned-byte-max: Internal functions
unuse-reader: Exported macros
use-reader: Exported macros

V
va_arg: Internal functions
va_copy: Internal functions
va_end: Internal functions
va_start: Internal functions

W
with-c-compilation-unit: Internal macros
with-c-syntax: Exported macros
with-c-syntax-parse-error-yacc-error: Internal generic functions
with-c-syntax-parse-error-yacc-error: Internal generic functions
with-dynamic-bound-symbols: Internal macros
with-pseudo-pointer-scope: Exported macros

Jump to:   (  
A   C   D   E   F   G   I   L   M   N   P   R   S   T   U   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *   +  
A   B   C   D   E   F   I   L   M   N   O   P   Q   S   T   U   Y  
Index Entry  Section

*
*current-c-reader*: Internal special variables
*default-reader-level*: Internal special variables
*dynamic-binding-requested*: Internal special variables
*expression-parser*: Internal special variables
*function-pointer-ids*: Internal special variables
*preprocessor-macro*: Internal special variables
*pseudo-pointee-table*: Internal special variables
*pseudo-pointer-next*: Internal special variables
*struct-specs*: Internal special variables
*toplevel-entry-form*: Internal special variables
*typedef-names*: Internal special variables

+
+bracket-pair-alist+: Internal constants
+numeric-types-alist+: Internal constants
+operators-and-keywords+: Internal constants
+pseudo-pointer-mask+: Internal constants
+pseudo-pointer-safebit+: Internal constants
+reader-level-specifier-alist+: Internal constants

A
args: Internal conditions

B
bits: Internal structures
break-statements: Internal structures

C
case-label-list: Internal structures
char_bit: Internal constants
char_max: Internal constants
char_min: Internal constants
code: Internal structures
Constant, +bracket-pair-alist+: Internal constants
Constant, +numeric-types-alist+: Internal constants
Constant, +operators-and-keywords+: Internal constants
Constant, +pseudo-pointer-mask+: Internal constants
Constant, +pseudo-pointer-safebit+: Internal constants
Constant, +reader-level-specifier-alist+: Internal constants
Constant, char_bit: Internal constants
Constant, char_max: Internal constants
Constant, char_min: Internal constants
Constant, dbl_dig: Internal constants
Constant, dbl_epsilon: Internal constants
Constant, dbl_mant_dig: Internal constants
Constant, dbl_max: Internal constants
Constant, dbl_max_10_exp: Internal constants
Constant, dbl_max_exp: Internal constants
Constant, dbl_min: Internal constants
Constant, dbl_min_10_exp: Internal constants
Constant, dbl_min_exp: Internal constants
Constant, dbl_radix: Internal constants
Constant, decimal_dig: Internal constants
Constant, flt_dig: Internal constants
Constant, flt_epsilon: Internal constants
Constant, flt_eval_method: Internal constants
Constant, flt_mant_dig: Internal constants
Constant, flt_max: Internal constants
Constant, flt_max_10_exp: Internal constants
Constant, flt_max_exp: Internal constants
Constant, flt_min: Internal constants
Constant, flt_min_10_exp: Internal constants
Constant, flt_min_exp: Internal constants
Constant, flt_radix: Internal constants
Constant, flt_rounds: Internal constants
Constant, int_max: Internal constants
Constant, int_min: Internal constants
Constant, ldbl_dig: Internal constants
Constant, ldbl_epsilon: Internal constants
Constant, ldbl_mant_dig: Internal constants
Constant, ldbl_max: Internal constants
Constant, ldbl_max_10_exp: Internal constants
Constant, ldbl_max_exp: Internal constants
Constant, ldbl_min: Internal constants
Constant, ldbl_min_10_exp: Internal constants
Constant, ldbl_min_exp: Internal constants
Constant, ldbl_radix: Internal constants
Constant, llong_max: Internal constants
Constant, llong_min: Internal constants
Constant, long_max: Internal constants
Constant, long_min: Internal constants
Constant, mb_len_max: Internal constants
Constant, schar_max: Internal constants
Constant, schar_min: Internal constants
Constant, sflt_dig: Internal constants
Constant, sflt_epsilon: Internal constants
Constant, sflt_mant_dig: Internal constants
Constant, sflt_max: Internal constants
Constant, sflt_max_10_exp: Internal constants
Constant, sflt_max_exp: Internal constants
Constant, sflt_min: Internal constants
Constant, sflt_min_10_exp: Internal constants
Constant, sflt_min_exp: Internal constants
Constant, sflt_radix: Internal constants
Constant, shrt_max: Internal constants
Constant, shrt_min: Internal constants
Constant, uchar_max: Internal constants
Constant, uint_max: Internal constants
Constant, ullong_max: Internal constants
Constant, ulong_max: Internal constants
Constant, ushrt_max: Internal constants
continue-statements: Internal structures

D
dbl_dig: Internal constants
dbl_epsilon: Internal constants
dbl_mant_dig: Internal constants
dbl_max: Internal constants
dbl_max_10_exp: Internal constants
dbl_max_exp: Internal constants
dbl_min: Internal constants
dbl_min_10_exp: Internal constants
dbl_min_exp: Internal constants
dbl_radix: Internal constants
decimal_dig: Internal constants
declarations: Internal structures
declarator: Internal structures
defined-in-this-unit: Internal structures

E
enum-bindings: Internal structures
enumerator-list: Internal structures

F
flt_dig: Internal constants
flt_epsilon: Internal constants
flt_eval_method: Internal constants
flt_mant_dig: Internal constants
flt_max: Internal constants
flt_max_10_exp: Internal constants
flt_max_exp: Internal constants
flt_min: Internal constants
flt_min_10_exp: Internal constants
flt_min_exp: Internal constants
flt_radix: Internal constants
flt_rounds: Internal constants
func-args: Internal structures
func-body: Internal structures
func-name: Internal structures

I
id: Internal structures
id: Internal structures
initializer: Internal structures
int_max: Internal constants
int_min: Internal constants

L
ldbl_dig: Internal constants
ldbl_epsilon: Internal constants
ldbl_mant_dig: Internal constants
ldbl_max: Internal constants
ldbl_max_10_exp: Internal constants
ldbl_max_exp: Internal constants
ldbl_min: Internal constants
ldbl_min_10_exp: Internal constants
ldbl_min_exp: Internal constants
ldbl_radix: Internal constants
lisp-initform: Internal structures
lisp-name: Internal structures
lisp-type: Internal structures
lisp-type: Internal structures
lisp-type: Internal structures
llong_max: Internal constants
llong_min: Internal constants
long_max: Internal constants
long_min: Internal constants

M
mb_len_max: Internal constants
member-defs: Internal structures
member-index-table: Exported classes
member-vector: Exported classes

N
name: Internal conditions

O
offset: Internal conditions

P
pointee: Internal conditions
pointer: Internal conditions

Q
qualifier: Internal structures

S
schar_max: Internal constants
schar_min: Internal constants
sflt_dig: Internal constants
sflt_epsilon: Internal constants
sflt_mant_dig: Internal constants
sflt_max: Internal constants
sflt_max_10_exp: Internal constants
sflt_max_exp: Internal constants
sflt_min: Internal constants
sflt_min_10_exp: Internal constants
sflt_min_exp: Internal constants
sflt_radix: Internal constants
shrt_max: Internal constants
shrt_min: Internal constants
Slot, args: Internal conditions
Slot, bits: Internal structures
Slot, break-statements: Internal structures
Slot, case-label-list: Internal structures
Slot, code: Internal structures
Slot, continue-statements: Internal structures
Slot, declarations: Internal structures
Slot, declarator: Internal structures
Slot, defined-in-this-unit: Internal structures
Slot, enum-bindings: Internal structures
Slot, enumerator-list: Internal structures
Slot, func-args: Internal structures
Slot, func-body: Internal structures
Slot, func-name: Internal structures
Slot, id: Internal structures
Slot, id: Internal structures
Slot, initializer: Internal structures
Slot, lisp-initform: Internal structures
Slot, lisp-name: Internal structures
Slot, lisp-type: Internal structures
Slot, lisp-type: Internal structures
Slot, lisp-type: Internal structures
Slot, member-defs: Internal structures
Slot, member-index-table: Exported classes
Slot, member-vector: Exported classes
Slot, name: Internal conditions
Slot, offset: Internal conditions
Slot, pointee: Internal conditions
Slot, pointer: Internal conditions
Slot, qualifier: Internal structures
Slot, storage-class: Internal structures
Slot, storage-class: Internal structures
Slot, struct-decl-list: Internal structures
Slot, struct-name: Internal structures
Slot, struct-spec: Internal structures
Slot, tag: Internal structures
Slot, token: Internal conditions
Slot, type: Internal structures
Slot, type-spec: Internal structures
Slot, typedef-init-decl: Internal structures
Slot, union-p: Internal structures
Slot, yacc-error: Internal conditions
Special Variable, *current-c-reader*: Internal special variables
Special Variable, *default-reader-level*: Internal special variables
Special Variable, *dynamic-binding-requested*: Internal special variables
Special Variable, *expression-parser*: Internal special variables
Special Variable, *function-pointer-ids*: Internal special variables
Special Variable, *preprocessor-macro*: Internal special variables
Special Variable, *pseudo-pointee-table*: Internal special variables
Special Variable, *pseudo-pointer-next*: Internal special variables
Special Variable, *struct-specs*: Internal special variables
Special Variable, *toplevel-entry-form*: Internal special variables
Special Variable, *typedef-names*: Internal special variables
storage-class: Internal structures
storage-class: Internal structures
struct-decl-list: Internal structures
struct-name: Internal structures
struct-spec: Internal structures

T
tag: Internal structures
token: Internal conditions
type: Internal structures
type-spec: Internal structures
typedef-init-decl: Internal structures

U
uchar_max: Internal constants
uint_max: Internal constants
ullong_max: Internal constants
ulong_max: Internal constants
union-p: Internal structures
ushrt_max: Internal constants

Y
yacc-error: Internal conditions

Jump to:   *   +  
A   B   C   D   E   F   I   L   M   N   O   P   Q   S   T   U   Y  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   C   D   E   F   I   L   P   R   S   T   W  
Index Entry  Section

C
Class, struct: Exported classes
compile-error: Internal conditions
Condition, compile-error: Internal conditions
Condition, lexer-error: Internal conditions
Condition, library-macro-error: Internal conditions
Condition, preprocess-error: Internal conditions
Condition, pseudo-pointer-dangling-error: Internal conditions
Condition, pseudo-pointer-error: Internal conditions
Condition, pseudo-pointer-type-error: Internal conditions
Condition, pseudo-pointer-write-error: Internal conditions
Condition, runtime-error: Internal conditions
Condition, with-c-syntax-error: Exported conditions
Condition, with-c-syntax-parse-error: Internal conditions
Condition, with-c-syntax-reader-error: Internal conditions
Condition, with-c-syntax-warning: Exported conditions

D
decl-specs: Internal structures

E
enum: Exported types
enum-spec: Internal structures
enumerator: Internal structures

F
function-definition: Internal structures

I
init-declarator: Internal structures

L
lexer-error: Internal conditions
library-macro-error: Internal conditions

P
Package, with-c-syntax: The with-c-syntax package
Package, with-c-syntax.core: The with-c-syntax<dot>core package
Package, with-c-syntax.stdlib: The with-c-syntax<dot>stdlib package
preprocess-error: Internal conditions
pseudo-pointer: Exported types
pseudo-pointer-dangling-error: Internal conditions
pseudo-pointer-error: Internal conditions
pseudo-pointer-type-error: Internal conditions
pseudo-pointer-write-error: Internal conditions

R
runtime-error: Internal conditions

S
spec-qualifier-list: Internal structures
stat: Internal structures
struct: Exported classes
struct-declarator: Internal structures
struct-or-union-spec: Internal structures
struct-spec: Internal structures
Structure, decl-specs: Internal structures
Structure, enum-spec: Internal structures
Structure, enumerator: Internal structures
Structure, function-definition: Internal structures
Structure, init-declarator: Internal structures
Structure, spec-qualifier-list: Internal structures
Structure, stat: Internal structures
Structure, struct-declarator: Internal structures
Structure, struct-or-union-spec: Internal structures
Structure, struct-spec: Internal structures
System, with-c-syntax: The with-c-syntax system

T
Type, enum: Exported types
Type, pseudo-pointer: Exported types

W
with-c-syntax: The with-c-syntax system
with-c-syntax: The with-c-syntax package
with-c-syntax-error: Exported conditions
with-c-syntax-parse-error: Internal conditions
with-c-syntax-reader-error: Internal conditions
with-c-syntax-warning: Exported conditions
with-c-syntax.core: The with-c-syntax<dot>core package
with-c-syntax.stdlib: The with-c-syntax<dot>stdlib package

Jump to:   C   D   E   F   I   L   P   R   S   T   W