Ensure "struct select_item" can be cast to "struct expression"

This helps reduce code duplication; anything that can work with lists of
expression can now work with lists of select_items.

Signed-off-by: Morten Hustveit <morten.hustveit@gmail.com>
Added some support for fields in LLVM-compiled expressions

This allows queries like:

  SELECT * FROM ca_catalog.ca_columns WHERE primary_key;

Signed-off-by: Morten Hustveit <morten.hustveit@gmail.com>
llvm-expressions.cc: Make constant expressions constant

Previously, a memcpy intrinsic instruction was added for constant expressions.
However, the code size actually becomes smaller by inlining constants.  Another
advantage of this approach is that we reduce memory accesses.

Signed-off-by: Morten Hustveit <morten.hustveit@gmail.com>
schema.c: Renamed "null" to "not_null", because that's what it is

Signed-off-by: Morten Hustveit <morten.hustveit@gmail.com>